T08 · Insecure Dependencies
- Location
README.md:27- Finding
Unpinned Third-Party Installer Creates a Supply-Chain Execution Risk
- Content
View full analysis
Vulnerability Details
File Location:
README.md, lines 27–29
Vulnerability Type:T08: Insecure Dependencies
Risk Level: MediumVulnerable code snippet:
bash npx add https://github.com/wpank/ai/tree/main/skills/testing/reducing-entropyTechnical Analysis
The documented installation procedure invokes the npm package named
addthroughnpxwithout pinning its package version or integrity hash. If that package is absent locally,npxmay retrieve and execute it from the configured npm registry.The installer also receives a URL referencing mutable content in a personal GitHub repository. The URL does not pin the source to a reviewed commit, immutable release artifact, checksum, or cryptographic signature. Therefore, both the installer behavior and installed content may differ from what was reviewed during this audit.
This is a supply-chain weakness rather than evidence that the currently documented package or repository is malicious.
Attack Path
- An attacker compromises the npm package, its publisher account, the configured package registry, the GitHub account, or the upstream repository.
- The attacker publishes a malicious installer version or modifies the content referenced by the mutable repository URL.
- A user copies and runs the documented
npx add ...command. npxretrieves and executes the unpinned installer under the user's account.- The compromised installer accesses or modifies resources available to that user, or installs altered Skill instructions that affect subsequent Agent behavior.
Impact Assessment
Successful exploitation could execute arbitrary code with the permissions of the user running the installation command. Depending on that user's environment, the resulting scope may include:
- Reading or modifying files accessible to the user.
- Altering project or user-level Agent configuration.
- Installing malicious or modified Skill instru ...[truncated 388 chars]
- Remediation
View remediation
Remediation Suggestions
- Replace the unversioned
npx addinvocation with a trusted installer pinned to an exact package version. - Pin the Skill source to a reviewed Git commit or immutable release tag rather than a mutable branch.
- Publish and verify a cryptographic checksum or signature for the downloaded artifact.
- Use
npx --no-installwhen relying on an installer that must already be installed and independently verified. - Prefer a transparent installation process that downloads a fixed archive, verifies its digest, and copies only the expected files.
- Document the exact expected files and hashes so users can validate the installed content.
- Run installation with least privilege and avoid exposing unrelated credentials or sensitive environment variables to the installer.
- Replace the unversioned
