T08 · Insecure Dependencies
- Location
- README.md:80
- Finding
- Unpinned npx installation exposes users to mutable supply-chain code## Vulnerability Details **File Location**: `README.md:80-84` **Vulnerability Type**: Unpinned third-party installer and repository dependency **Risk Level**: Medium ### Vulnerable Code ```markdown ## Install and start ```bash npx skills add AntreasAntoniou/agent-collaboration-control ``` ``` ### Technical Analysis The documented installation procedure invokes the npm-resolved `skills` command through `npx` without specifying a reviewed package version. It also identifies the Skill repository without pinning installation to an immutable commit. As a result, the code retrieved and executed or installed when a user follows this instruction can differ from the version covered by this audit. If the npm package, its dependency chain, maintainer account, or referenced repository is compromised, the installation command could retrieve malicious or unexpectedly modified content. The repository itself does not contain remote-payload execution logic, and this finding does not prove that the current upstream package is malicious. The risk arises from recommending execution of mutable third-party supply-chain components without version or integrity controls. ### Attack Path 1. An attacker compromises the npm package used by `npx`, one of its dependencies, its publisher account, or the referenced Skill repository. 2. The attacker publishes a malicious release or changes the repository content resolved by the unpinned identifier. 3. A user follows the documented installation command. 4. `npx` retrieves and runs the currently resolved CLI package, which then installs the currently resolved Skill content. 5. The malicious code executes with the privileges of the user running the command or is installed into the user's Agent environment. 6. Depending on those privileges, the payload could access user-readable files, alter Agent configuration, install additional malicious Skills, or execute other commands available to that user. ...[truncated 442 chars]
- Remediation
- ## Remediation Suggestions 1. Pin the installer CLI to an explicitly reviewed version, for example by using a version-qualified npm package reference. 2. Pin the Skill source to an immutable commit hash or signed release rather than a mutable repository reference. 3. Publish and verify checksums or cryptographic signatures for released artifacts. 4. Use a lockfile and lock all transitive dependencies where the installation mechanism supports it. 5. Document how users can inspect the resolved package version and source revision before execution. 6. Recommend installation under a non-privileged account or in an isolated environment. 7. Avoid suggesting `sudo` or elevated execution for the installation command.
