T08 · Insecure Dependencies
- Location
SKILL.md:59- Finding
Execution of an Unpinned Mutable npm Package
- Content
View full analysis
&1 || npx clawhub@latest login ``` ```bash npx clawhub@latest publish TARGET_DIR/clawhub-publish/ \ --slug SLUG \ --name "DISPLAY_NAME" \ --version VERSION \ --changelog "CHANGELOG" \ --tags latest ``` ```bash npx clawhub@latest inspect SLUG ``` ### Technical Analysis The workflow repeatedly invokes `npx clawhub@latest`. The `latest` npm distribution tag is mutable, so the package code executed during a future invocation may differ from the version that was reviewed during this audit. When the requested version is not already available locally, `npx` can retrieve and execute the package from the configured npm registry. The workflow provides neither an exact package version nor an integrity or provenance check. Consequently, compromise of the package, maintainer account, release process, npm distribution tag, or configured package registry could cause arbitrary third-party code to execute with the privileges of the user running the skill. The login and publishing operations are particularly sensitive because the invoked process may have access to ClawHub authentication state, environment variables, local files, and network connectivity. ### Attack Path 1. An attacker compromises the `clawhub` npm package, a maintainer account, its release process, or the package source configured on the victim system. 2. The attacker publishes a malicious release and causes the mutable `latest` tag to resolve to it. 3. A user asks the agent to publish or verify a skill. 4. The agent executes one of the documented `npx clawhub@latest` commands. 5. `npx` downloads and runs the attacker-controlled package code. 6. The malicious package executes with the user's privileges and can attempt to read credential ...[truncated 840 chars]- Remediation
View remediation
