T08 · Insecure Dependencies
Warning
- Location
- README.md:26
- Finding
- Installation from a Mutable GitHub Branch## Vulnerability Details **File Location**: `README.md:26-29` **Vulnerability Type**: Execution of an unpinned remote dependency **Risk Level**: Medium **Vulnerable Code**: ```bash ## Installation ```bash npx add https://github.com/wpank/ai/tree/main/skills/frontend/react-modernization ``` ``` ### Technical Analysis The documented installation command retrieves content from the mutable `main` branch of a remote GitHub repository. It does not identify an immutable commit SHA, signed release, or verified integrity hash. Consequently, the code installed when a user runs this command can differ from the code that was originally audited. Because the operation is initiated through `npx`, the installation process may execute package lifecycle or installer code with the permissions of the invoking user. This creates a supply-chain boundary in which compromise of the upstream repository, maintainer account, or referenced content could result in unreviewed code being installed or executed. ### Attack Path 1. An attacker compromises the upstream repository or a maintainer account. 2. The attacker modifies content reachable through the `main` branch. 3. A user follows the installation command in `README.md`. 4. `npx` retrieves the currently available remote content rather than an immutable reviewed revision. 5. Any supported installer or lifecycle code executes with the invoking user's privileges. ### Impact Assessment A compromised remote source could execute arbitrary code under the invoking user's account. Depending on that user's permissions, this could permit modification of project files, access to readable environment data and credentials, installation of additional dependencies, or further network activity. The command itself does not request elevated privileges, so the direct scope is limited to the user's existing permissions.
- Remediation
- ## Remediation Suggestions - Replace the mutable `main` reference with an immutable, reviewed commit SHA or signed release tag. - Publish and verify a cryptographic integrity hash for downloaded content. - Prefer a package manager workflow backed by a committed lockfile and integrity metadata. - Review installer and lifecycle scripts before execution. - Run installation in a restricted development environment without production credentials.
