T08 · Insecure Dependencies
- Location
README.md:12- Finding
Unpinned npm CLIs and Mutable Remote Skill Source
- Content
View full analysis
Vulnerability Details
File Location:
README.md, lines 12–18
Vulnerability Type: Supply-chain exposure through unpinned executable dependencies and mutable remote content
Risk Level: MediumVulnerable Code
bash npx skills add https://github.com/wpank/Agentic-Uniswap/tree/main/.ai/skills/uniswap-pool-analysisOr via Clawhub:
bash npx clawhub@latest install uniswap-pool-analysisTechnical Analysis
The installation instructions invoke npm-delivered command-line tools without pinning them to reviewed versions or verifying package integrity. The second command explicitly requests
@latest, allowing its executed implementation to change independently of this audit.The first command also installs skill content from a mutable GitHub branch path rather than from a specific reviewed commit. Consequently, both the installer implementation and the installed content can differ from what was available when this project was reviewed.
The external npm packages and remote repository content are not included in the audited project. Their behavior therefore cannot be verified from the available files. No currently malicious payload was demonstrated; the vulnerability is the unsafe trust placed in mutable supply-chain components.
Attack Path
- An attacker compromises an npm publisher account, an upstream dependency, the Clawhub package source, or the referenced GitHub repository.
- The attacker publishes a modified CLI release or changes content on the referenced mutable branch.
- A user follows the documented installation instructions.
npxdownloads and executes the unreviewed package version under the user's account, or the installer retrieves altered skill content from the mutable source.- The compromised component can execute code with the installing process's permissions or install malicious skill instructions that affect later agent sessions.
Impact Assessment
A ...[truncated 633 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin each npm CLI to an exact, reviewed version instead of relying on an implicit version or
@latest. - Replace the GitHub branch URL with a reviewed commit hash so installed content is immutable.
- Record and verify package integrity hashes or signatures where supported.
- Use a lockfile or controlled internal registry to ensure reproducible dependency resolution.
- Review the CLI package, its transitive dependencies, and the exact remote skill revision before recommending execution.
- Run installation in a sandbox or least-privileged environment without sensitive environment variables or unrelated project access.
- Document the expected package version, commit identifier, publisher, and integrity value so users can verify the installation source.
- Pin each npm CLI to an exact, reviewed version instead of relying on an implicit version or
