T08 · Insecure Dependencies
Warning
- Location
- README.md:12
- Finding
- Unpinned Package Execution During Installation<![CDATA[ ## Vulnerability Details **File Location**: `README.md`, lines 12–18 **Vulnerability Type**: Unpinned third-party package and mutable Skill installation **Risk Level**: Medium ### Vulnerable Code ```bash npx skills add BillionVerify/billionverify-skill ``` Or install to specific agents: ```bash npx skills add BillionVerify/billionverify-skill -a cursor -a claude-code ``` ### Technical Analysis The installation instructions invoke the `skills` CLI through `npx` without pinning the CLI to a reviewed version or verifying its integrity. Depending on the local environment and cache state, `npx` may download package code from the configured npm registry and execute it with the installing user's privileges. The referenced `BillionVerify/billionverify-skill` source is also not pinned to an immutable version or commit. Consequently, the content installed by these commands can change after this audit. Compromise of the npm package, registry resolution process, CLI release, publisher account, or referenced upstream repository could therefore introduce unreviewed code or modified Skill instructions. ### Attack Path 1. An attacker compromises the package publisher, npm package, configured registry, CLI distribution, or referenced upstream Skill repository. 2. The attacker publishes a malicious or altered version while retaining the expected package or repository identifier. 3. A user follows the documented unpinned `npx skills add` command. 4. `npx` retrieves and executes the mutable third-party CLI package, or the CLI retrieves the modified Skill content. 5. Attacker-controlled code executes with the installing user's privileges, or malicious Skill instructions are installed into supported agents. ### Impact Assessment Successful exploitation could permit arbitrary code execution under the account running the installation command. The resulting access would be limited by that account's operating-system privileges but could include reading or modifying ...[truncated 289 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Pin the `skills` CLI to a specific reviewed version rather than invoking an implicitly selected release. 2. Pin the BillionVerify Skill to an immutable release or commit hash supported by the installer. 3. Use package-locking and integrity verification mechanisms where supported. 4. Document the expected official npm registry and source repository so users can detect unexpected package resolution. 5. Verify package signatures, checksums, provenance attestations, or published integrity hashes before execution. 6. Review new CLI and Skill versions before updating pinned references. 7. Run installation with the least-privileged account appropriate for the task and avoid elevated execution. 8. Prefer installation workflows that download and inspect package contents before executing installation scripts. ]]>
