T08 · Insecure Dependencies
Warning
- Location
- README.md:5
- Finding
- Unpinned Network Installer and Mutable Skill Source## Vulnerability Details **File Location**: `README.md:5` **Vulnerability Type**: Unpinned third-party installer and mutable remote dependency **Risk Level**: Medium **Vulnerable Code Snippet**: ```text Install the agent skill with `npx skills add AntreasAntoniou/amber-agent-skill`, copy this folder to your agent's skill directory under the name amber, or use its script standalone. The Python runtime has no third-party dependencies; the optional installer uses Node.js and network access. ``` ### Technical Analysis The documented installation command invokes `npx`, which can retrieve and execute the `skills` npm package through the network. No reviewed package version is specified. The referenced Skill repository is likewise not pinned to an immutable commit, and the documentation provides no checksum or signature with which to verify downloaded content. As a result, the software installed by this command can differ from the files covered by this audit. Compromise of the npm package, package publisher, upstream repository, maintainer credentials, or dependency-resolution infrastructure could cause users to execute or install attacker-controlled content. The audited local Python runtime itself has no third-party dependencies or network execution. This finding is limited to the optional installation procedure documented in the README. ### Attack Path 1. An attacker compromises the npm package used by `npx`, its publisher account, the referenced repository, or another relevant supply-chain component. 2. The attacker publishes a modified package or changes the mutable Skill source to include malicious installation logic, Skill instructions, or scripts. 3. A user follows the documented `npx skills add AntreasAntoniou/amber-agent-skill` command. 4. `npx` retrieves and executes remote package content, and the installer resolves the mutable repository source. 5. The malicious content executes with the invoking user's privileges or ...[truncated 810 chars]
- Remediation
- ## Remediation Suggestions 1. Pin the npm installer to an explicitly reviewed version rather than allowing `npx` to resolve the current release: ```sh npx skills@<reviewed-version> add AntreasAntoniou/amber-agent-skill@<immutable-commit> ``` Use syntax actually supported by the selected installer. 2. Pin the Skill source to an immutable commit hash or signed release tag instead of a mutable repository reference. 3. Publish cryptographic checksums or signatures for release artifacts and document verification before installation. 4. Prefer installation from a locally downloaded and reviewed release artifact. Make the existing manual copy method the recommended security-sensitive installation path. 5. Document that `npx` executes remotely obtained code and advise users not to run the command with administrator or root privileges. 6. Add a reproducible release process, dependency lock data where applicable, protected release credentials, and automated supply-chain scanning. 7. Ensure installation documentation distinguishes the audited local runtime from network-fetched installer and repository content.
