T08 · Insecure Dependencies
- Location
SKILL.md:81- Finding
Unpinned Third-Party Packages Are Downloaded and Executed
- Content
View full analysis
/dev/null | jq '{unused: .dependencies, devUnused: .devDependencies, missing: .missing}' # SKILL.md:87-88 pip install pipreqs 2>/dev/null pipreqs . --print 2>/dev/null > /tmp/actual-imports.txt # SKILL.md:103 npx license-checker --json 2>/dev/null | jq 'to_entries[] | {pkg: .key, license: .value.licenses}' | head -40 ``` ### Technical Analysis The Skill instructs the agent to download, install, and execute third-party packages without pinning reviewed versions, validating integrity hashes, using a project lockfile, or obtaining explicit approval. By default, `npx depcheck` and `npx license-checker` may retrieve the current package version and immediately execute its command. Similarly, `pip install pipreqs` resolves mutable package versions and may execute package build or installation hooks before the subsequently installed `pipreqs` command is run. Consequently, the effective code executed by this Skill can change after the Skill itself has been reviewed. Exploitation would require compromise of a referenced package, one of its transitive dependencies, or the relevant package-distribution channel. There is no evidence in the audited file that these packages are currently malicious; the vulnerability is the unsafe, unpinned execution model. ### Attack Path 1. An attacker compromises a referenced npm or Python package, a transitive dependency, a maintainer account, or the associated distribution channel. 2. The attacker publishes a malicious version that is eligible for default package-manager resolution. 3. An agent follows the dependency-audit workflow in `SKILL.md`. 4. `npx` downloads and immediately executes the malicious npm package, or `pip install` installs a malicious Python distribution and executes applicable bu ...[truncated 1068 chars]- Remediation
View remediation
