T08 · Insecure Dependencies
- Location
README.md:9- Finding
Unpinned npm Tool and Mutable Git Branch Create Supply-Chain Execution Risk
- Content
View full analysis
Vulnerability Details
File Location:
README.md, line 9
Vulnerability Type:T08: Insecure Dependencies
Risk Level: MediumVulnerable Code
bash npx skills add https://github.com/wpank/Agentic-Uniswap/tree/main/.ai/skills/configure-x402Technical Analysis
The installation command invokes the third-party
skillsnpm package throughnpxwithout specifying an exact audited version. It also installs Skill content from the mutablemainbranch rather than a reviewed commit SHA.Consequently, the components executed or installed when a user runs this command may differ from those examined during this audit. Compromise of the npm package, its publisher account, the GitHub repository, or a repository maintainer could replace either the installation logic or downloaded Skill content with a malicious payload.
This audit found no malicious payload in the current project snapshot. The vulnerability is the absence of immutable dependency and source pinning in the documented installation process.
Attack Path
- An attacker compromises the npm publisher, the
skillspackage, the GitHub repository, or a maintainer account. - The attacker publishes a malicious package version or modifies content on the repository's
mainbranch. - A user runs the documented installation command.
npxresolves and invokes the current unpinned package, while the installer retrieves current content from the mutable branch.- Malicious installation behavior or Skill instructions execute under the invoking user's privileges.
Impact Assessment
A successful supply-chain compromise could execute commands or install malicious Skill content with the permissions of the user running
npx. Depending on those permissions and the upstream installer behavior, this could expose accessible files and credentials, modify the user's development environment, or establish further compromise.The project itself does not request elevated privileges, and no ...[truncated 129 chars]
- An attacker compromises the npm publisher, the
- Remediation
View remediation
Remediation Suggestions
- Pin the
skillsnpm package to a reviewed exact version rather than relying on implicit package resolution. - Replace the mutable
mainbranch URL with an immutable, reviewed Git commit SHA. - Verify downloaded artifacts using a published cryptographic digest or signature.
- Review the resolved npm package and repository commit before recommending them to users.
- Disable or avoid npm lifecycle scripts where supported and unnecessary.
- Document the expected package version, repository commit, and integrity value so installations are reproducible.
- Pin the
