T08 · Insecure Dependencies
- Location
README.md:27- Finding
Unpinned Package Execution and Mutable Remote Skill Installation
- Content
View full analysis
Vulnerability Details
File Location:
README.md, line 27
Vulnerability Type: Supply-chain risk from an unpinned executable package and mutable remote source
Risk Level: MediumVulnerable Code
bash npx add https://github.com/wpank/ai/tree/main/skills/design-systems/financial-data-visualizationTechnical Analysis
The installation command invokes
npx addwithout pinning theaddnpm package to a reviewed version or verifying its integrity. If the package is absent from the local cache,npxcan retrieve the currently resolved release and execute its command-line code with the invoking user's privileges.The command also refers to the mutable
mainbranch of an external GitHub repository rather than a reviewed commit SHA. Consequently, the installed skill content can change after this project has been audited. These two mutable trust points prevent users from reliably reproducing or verifying the audited installation.No evidence establishes that the current npm package or repository content is malicious. The vulnerability is the unsafe trust and execution model presented by the documented installation procedure.
Attack Path
- An attacker compromises the unpinned npm package, its maintainer account, or its publication pipeline; alternatively, the referenced GitHub repository or branch is compromised.
- The attacker publishes malicious package behavior or modifies the skill content reachable through the mutable
mainbranch. - A user follows the documented installation command.
npxresolves and executes the package version available at installation time.- The installer retrieves content that may differ from the version reviewed in this audit.
- Malicious installer code can run under the user's account, or altered skill instructions can be placed into the user's agent skill directory and affect later sessions.
Impact Assessment
Successful exploitation of the
npxexecution stage could run arbitrary co ...[truncated 587 chars]- Remediation
View remediation
Remediation Suggestions
- Replace the ambiguous
npx addinvocation with a known, explicitly named installer pinned to an exact reviewed version. - Pin the remote repository reference to a reviewed commit SHA rather than
main. - Verify downloaded artifacts using a published cryptographic checksum or package-manager integrity metadata before installation.
- Avoid executing a downloaded installer where a non-executable download-and-copy workflow is sufficient.
- Document the exact expected files and hashes so users can verify that installed content matches the audited release.
- Run any unavoidable installer with minimal privileges and without unnecessary credentials in its environment.
- Prefer a signed, immutable release artifact from a controlled distribution channel.
A safer workflow should conceptually follow this pattern:
bash # Download an immutable, reviewed release artifact. # Verify its published SHA-256 checksum. # Extract and copy only the expected README.md and SKILL.md files.- Replace the ambiguous
