T08 · Insecure Dependencies
- Location
README.md:22- Finding
Unpinned npx Installer Executes a Mutable Remote Dependency
- Content
View full analysis
Vulnerability Details
File Location:
README.md:22-25
Vulnerability Type: Unpinned third-party installer and mutable remote source
Risk Level: MediumVulnerable Code:
bash ## Installation ```bash npx add https://github.com/wpank/ai/tree/main/skills/tools/command-creatortext ### Technical Analysis The installation instructions invoke `npx add` without pinning the npm package named `add` to a reviewed version or verifying its integrity. If the package is not already available locally, `npx` may download and execute its current published version with the invoking user's privileges. The source URL also points to the mutable GitHub `main` branch rather than an immutable commit SHA or signed release. Therefore, both the installer implementation and installed Skill content can change after this project has been audited. The package itself contains no confirmed malicious executable payload, but following this instruction crosses a supply-chain trust boundary without version or integrity controls. ### Attack Path 1. An attacker compromises the npm package used by `npx add`, its publisher account, or the referenced GitHub repository. 2. The attacker publishes a malicious package update or modifies content under the `main` branch. 3. A user follows the documented installation command. 4. `npx` resolves and executes the unpinned installer package. 5. The installer retrieves mutable content from the compromised repository location. 6. Malicious installer code can execute immediately, or altered Skill instructions can be installed and execute through later agent use. ### Impact Assessment A compromised npm installer can execute arbitrary code with the privileges of the user running the command. This may permit access to that user's files, repositories, environment variables, development credentials, and writable configuration. Altered remote Skill content could also introduce malicious agent ...[truncated 274 chars]- Remediation
View remediation
Remediation Suggestions
- Pin the installer package to an exact, reviewed version instead of invoking an unversioned npm package.
- Replace the mutable
mainreference with an immutable reviewed commit SHA or a signed release tag. - Verify downloaded content using a published cryptographic checksum or signature before installation.
- Clearly identify the expected npm package name, publisher, version, and integrity value.
- Prefer a non-executing installation process, such as downloading a pinned archive, verifying it, and manually copying the required files.
- If
npxremains necessary, use package-manager controls that prevent interactive package substitution and enforce an exact version and integrity policy.
