T08 · Insecure Dependencies
- Location
README.md:14- Finding
Unpinned Third-Party Installation Chain
- Content
View full analysis
Vulnerability Details
File Location:
README.md:14
Vulnerability Type: Supply-chain risk caused by mutable, unpinned dependencies
Risk Level: Mediumbash npx skills add https://github.com/LeoGoat2004/tech-tutorTechnical Analysis
The documented installation command relies on two mutable third-party components:
npxresolves theskillspackage without an exact version.- The GitHub repository is referenced without an immutable commit hash or signed release tag.
Consequently, the code and Skill content retrieved when a user runs this command may differ from the content reviewed during this audit. Depending on npm behavior and the installer package, invoking
npxmay execute downloaded package code, including installer or lifecycle logic, on the user's system.This is a supply-chain weakness rather than evidence that the currently audited repository contains malicious code.
Attack Path
- An attacker compromises the npm account, package, or publishing pipeline associated with
skills, or compromises the referenced GitHub repository. - The attacker publishes altered installer logic or malicious Skill content under the same mutable package or repository identifier.
- A user follows the README and runs the documented command.
npxresolves and runs the altered package, or the installer retrieves altered content from the repository.- The malicious dependency executes with the permissions of the user running the command.
Impact Assessment
Successful exploitation could provide arbitrary code execution under the installing user's account if the resolved npm installer executes malicious code. This may allow access to files, credentials, environment variables, network resources, and other capabilities available to that user.
If only the installed Skill instructions are altered, the impact may instead include agent behavior manipulation, unauthorized tool use, or access to resources exposed to the agent. No priv ...[truncated 167 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin the npm installer to an exact reviewed version, rather than relying on current package resolution:
bash npx --yes skills@<reviewed-exact-version> add ... - Replace the mutable repository URL with an immutable, reviewed commit hash or release artifact.
- Publish and verify a SHA-256 checksum for the installed artifact.
- Prefer signed release artifacts and document signature-verification steps.
- Use npm provenance and lockfile or integrity metadata where supported.
- Document the expected npm publisher and repository owner so users can detect namespace or ownership changes.
- Review whether the installer runs lifecycle scripts; disable them where feasible or clearly disclose their behavior.
- Apply the same hardened command to both
README.mdandREADME.zh-CN.md.
- Pin the npm installer to an exact reviewed version, rather than relying on current package resolution:
