T08 · Insecure Dependencies
- Location
SKILL.md:15- Finding
Execution of Unpinned Third-Party npm Packages Through npx
- Content
View full analysis
AGENT_BRIEF.md sed -n '1,220p' AGENT_BRIEF.md ``` For branch handoffs: ```bash npx repo-agent-brief . --diff origin/main > AGENT_HANDOFF.md ``` ```bash npx agent-runlog -- npm test npx agent-runlog -- npm run lint npx agent-runlog -- npm run build ``` ```bash npx @builtbyecho/trustlog run -- npm test npx @builtbyecho/trustlog verify .trustlog/latest.json ``` ```bash npx @builtbyecho/add-ci . --tier 2 --dry-run ``` ### Technical Analysis The skill instructs the agent to execute several third-party npm packages using `npx` without specifying exact package versions, integrity hashes, a reviewed lockfile, or package provenance requirements. When a package is not already installed locally, `npx` can retrieve and execute it from the configured npm registry. Because the requested versions are mutable, the code executed during a future invocation may differ from the code that existed when the skill was audited. Package entry points and npm lifecycle behavior execute with the permissions of the invoking agent. The unscoped packages `repo-agent-brief` and `agent-runlog` also provide weaker publisher-identity signaling than scoped packages. This does not establish that the packages are malicious, but it increases dependency-confusion, package-transfer, and package-compromise exposure. ### Attack Path 1. An attacker compromises one of the referenced npm packages, its publisher account, or the package distribution channel. 2. The attacker publishes a malicious version under the package name referenced by the skill. 3. An agent follows the documented workflow and invokes the package using an unversioned `npx` command. 4. `npx` resolves and downloads the current malicious package version. 5. Package code executes in the repository c ...[truncated 860 chars]- Remediation
View remediation
