T08 · Insecure Dependencies
Warning
- Location
- skill.md:32
- Finding
- Mutable Remote Skill Instructions Installed Without Integrity Verification<![CDATA[ ## Vulnerability Details **File Location**: `skill.md:32-40` **Vulnerability Type**: `T08: Insecure Dependencies` **Risk Level**: Medium ### Vulnerable Code ```bash mkdir -p ~/.creditclaw/skills/creditcard curl -s https://creditclaw.com/creditcard/skill.md > ~/.creditclaw/skills/creditcard/SKILL.md curl -s https://creditclaw.com/creditcard/shopping.md > ~/.creditclaw/skills/creditcard/SHOPPING.md curl -s https://creditclaw.com/creditcard/amazon.md > ~/.creditclaw/skills/creditcard/AMAZON.md curl -s https://creditclaw.com/creditcard/prepaid-wallet.md > ~/.creditclaw/skills/creditcard/PREPAID-WALLET.md curl -s https://creditclaw.com/creditcard/self-hosted-card.md > ~/.creditclaw/skills/creditcard/SELF-HOSTED-CARD.md curl -s https://creditclaw.com/creditcard/stripe-x402-wallet.md > ~/.creditclaw/skills/creditcard/STRIPE-X402-WALLET.md curl -s https://creditclaw.com/creditcard/heartbeat.md > ~/.creditclaw/skills/creditcard/HEARTBEAT.md curl -s https://creditclaw.com/creditcard/skill.json > ~/.creditclaw/skills/creditcard/package.json ``` ### Technical Analysis The installation instructions download multiple Skill documents from mutable network locations and save them directly into a persistent Skill directory. Several referenced documents are not included in the audited package, including the shopping, Amazon, prepaid-wallet, self-hosted-card, and Stripe x402 wallet guides. The commands do not pin a version, verify a cryptographic hash or digital signature, validate the downloaded content, or stop on HTTP errors. Consequently, the effective set of agent instructions installed by these commands can differ from the content reviewed during this audit. Although the files are Markdown rather than native executable binaries, Skill documents act as behavioral instructions for the agent. A modified remote document could therefore direct tool calls, request disclosure of credentials, alter purchase behavior, or introduce instructions unrelated to the declared ...[truncated 1325 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Bundle every required Skill document in the reviewed package so the installed content matches the audited artifact. 2. If remote retrieval is necessary, use immutable, version-specific URLs rather than mutable filenames. 3. Publish a signed manifest containing a SHA-256 digest for every downloaded file. 4. Verify each digest and signature before moving the file into the active Skill directory. 5. Download into a temporary staging directory and activate the files only after all checks succeed. 6. Use strict download options such as `curl --fail --show-error --location` and reject redirects to domains outside an explicit allowlist. 7. Validate that downloaded files contain only expected Markdown or JSON and do not introduce scripts, executable files, or unexpected tool directives. 8. Require explicit owner review or approval before loading a newly downloaded Skill version. ]]>
