T08 · Insecure Dependencies
Warning
- Location
- README.md:21
- Finding
- Unpinned Third-Party Installer and Mutable Remote Source## Vulnerability Details **File Location**: `README.md`, lines 21–25 **Vulnerability Type**: Supply-chain exposure through an unpinned executable dependency and mutable remote source **Risk Level**: Medium ### Vulnerable Code ```markdown ## Installation ```bash npx add https://github.com/wpank/ai/tree/main/skills/tools/command-creator ``` ``` ### Technical Analysis The installation command invokes `npx add`, which may download and execute the npm package named `add` if an appropriate local copy is unavailable. The package is not pinned to an exact version or verified using a documented integrity value. The source artifact is also retrieved from a personal GitHub repository through the mutable `main` branch. Consequently, the content installed in the future may differ from the content covered by this audit. This creates two supply-chain trust boundaries: 1. The npm package resolved for `add`. 2. The GitHub account, repository, and mutable branch supplying the Skill. Compromise, package replacement, or malicious modification at either boundary could cause users to execute installer logic or install Skill instructions that were not reviewed. ### Attack Path 1. An attacker compromises the npm package, its publisher account, the GitHub account, or the referenced repository. 2. The attacker publishes malicious installer behavior or modifies content on the `main` branch. 3. A user follows the documented installation instructions. 4. `npx` resolves and executes the unpinned installer package. 5. The installer retrieves mutable repository content and may execute arbitrary commands or write modified files. 6. Malicious behavior runs with the privileges of the user performing the installation. ### Impact Assessment Successful exploitation could provide arbitrary code execution under the installing user's account. The resulting scope may include reading or modifying files accessible to that user, altering project or global agent configuration, stealing develop ...[truncated 265 chars]
- Remediation
- ## Remediation Suggestions 1. Replace the ambiguous `npx add` invocation with a documented, trusted installer package pinned to an exact version. 2. Pin the GitHub source to a reviewed commit hash or immutable, signed release tag rather than `main`. 3. Publish and verify a cryptographic checksum for the downloaded artifact. 4. Prefer a transparent manual installation procedure that downloads a fixed archive, verifies its checksum, and copies only the expected files. 5. Use npm lockfile integrity metadata where npm dependencies are unavoidable. 6. Document the exact files and installation destinations so users can inspect changes before applying them. 7. Run installer tooling with the minimum necessary privileges and avoid privileged or system-wide execution.
