T08 · Insecure Dependencies
- Location
SKILL.md:25- Finding
Unpinned Skills CLI Is Downloaded and Executed at Runtime
- Content
View full analysis
` - Install a skill from GitHub or other sources - `npx skills check` - Check for skill updates - `npx skills update` - Update all installed skills **Browse skills at:** https://skills.sh/ ``` The runtime invocation is also recommended during the search workflow in lines 54–62: ```bash npx skills find [query] ``` ### Technical Analysis The skill instructs the agent to invoke the `skills` npm package through `npx` without pinning an exact, previously audited version. Depending on the local npm environment, `npx` may retrieve the package from a remote registry and immediately execute its code. The document does not specify an integrity hash, lockfile, immutable package revision, trusted registry configuration, or verified publisher identity. Consequently, the package executed in the future may differ from the package that existed when this skill was reviewed. A compromised package release, registry account, dependency, or package-resolution configuration could therefore introduce attacker-controlled executable code. Repository popularity, installation counts, and publisher reputation do not provide cryptographic verification of the artifact that is ultimately executed. ### Attack Path 1. An attacker compromises the `skills` npm package, one of its dependencies, its publisher account, or a registry used by the environment. 2. The attacker publishes a malicious version or manipulates package resolution so that the package name resolves to attacker-controlled content. 3. A user asks the agent to find a skill. 4. Following `SKILL.md`, the agent runs `npx skills find [query]`. 5. `npx` downloads and executes the unresolved current package version. 6. T ...[truncated 675 chars]- Remediation
View remediation
