T08 · Insecure Dependencies
Warning
- Location
- README.md:34
- Finding
- Unpinned Third-Party Installer Execution## Vulnerability Details **File Location**: `README.md`, lines 34-38 **Vulnerability Type**: 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/testing/testing-workflow ``` ``` ### Technical Analysis The documented installation command invokes `npx` with the package name `add`. If that package is not already available locally, `npx` can retrieve and execute it from the configured npm registry with the privileges of the installing user. The installer is then given a GitHub path on the mutable `main` branch rather than an immutable commit hash or verified release artifact. Consequently, both the executable installer package and the repository content may differ from what was reviewed during this audit. No version pin, commit pin, checksum, or signature verification is included in the instructions. This creates a supply-chain trust boundary in which compromise of the npm package, its maintainer account, the GitHub repository, or its maintainer account could introduce attacker-controlled behavior after review. ### Attack Path 1. An attacker compromises or maliciously updates the npm package resolved as `add`, or compromises the referenced GitHub repository or maintainer account. 2. The attacker publishes malicious installation logic or replaces content reachable from the mutable `main` branch. 3. A user follows the documented `npx add ...` installation command. 4. `npx` downloads and executes the resolved installer package. 5. The installer retrieves or processes the mutable remote repository content. 6. Attacker-controlled code executes in the user's environment or malicious skill content is installed for later use. ### Impact Assessment Successful exploitation could execute arbitrary commands with the permissions of the user running the installation. Depending on those per ...[truncated 520 chars]
- Remediation
- ## Remediation Suggestions 1. Pin the `npx` installer to an explicitly reviewed package version rather than relying on the latest registry resolution. 2. Replace the mutable GitHub branch URL with an immutable, reviewed commit hash or signed release tag. 3. Publish and verify a cryptographic checksum or signature for the downloaded artifact before installation. 4. Prefer a non-executing installation process: download the reviewed files, verify their integrity, inspect the expected file list, and copy them into the destination. 5. If an installer must execute, document its exact package identity, version, expected behavior, required permissions, and integrity-verification procedure. 6. Advise users not to run the installation command with elevated privileges and to use an isolated environment where practical.
