T08 · Insecure Dependencies
Warning
- Location
- README.md:25
- Finding
- Unpinned Third-Party Code Execution During Installation## Vulnerability Details **File Location**: `README.md:25-33`; also present in `SKILL.md:15-19` **Vulnerability Type**: Unpinned and mutable third-party installation sources **Risk Level**: Medium ### Vulnerable Code ```bash npx add https://github.com/wpank/ai/tree/main/skills/meta/context-driven-development ``` ```bash npx clawhub@latest install context-driven-development ``` ### Technical Analysis The documented installation commands instruct users to retrieve and execute third-party JavaScript tooling through `npx`. The GitHub source refers to a mutable branch path rather than an immutable commit, while the ClawHub command explicitly selects the mutable `latest` release. Consequently, the code executed during installation can change after this Skill has been reviewed. No fixed package version, commit hash, integrity digest, signature-verification procedure, or other mechanism is provided to ensure that the downloaded code matches an audited artifact. This creates a supply-chain exposure: compromise of the upstream repository, package publisher account, registry, release pipeline, or transitive dependencies could cause a documented installation command to execute attacker-controlled code. ### Attack Path 1. An attacker compromises the upstream repository, package publisher account, registry artifact, release process, or relevant dependency. 2. The attacker modifies the mutable branch or publishes a malicious version selected by `@latest`. 3. A user follows one of the documented installation commands. 4. `npx` retrieves the changed third-party package or installer. 5. Package lifecycle hooks or CLI initialization code execute with the permissions of the user running the command. 6. The malicious installer can access or modify resources available to that user before the compromise is detected. ### Impact Assessment Successful exploitation could provide arbitrary code execution with the installing user's pr ...[truncated 469 chars]
- Remediation
- ## Remediation Suggestions 1. Replace `@latest` with a specific, reviewed package version. 2. Replace the mutable GitHub branch reference with an immutable commit hash or signed release tag. 3. Publish and document expected integrity hashes or cryptographic signatures for installation artifacts. 4. Verify package provenance and signatures before invoking installer code. 5. Prefer an installation process that downloads and verifies an artifact before executing any of its contents. 6. Pin and audit transitive dependencies associated with the installer. 7. Document that installation should use a non-privileged account in an isolated environment.
