T08 · Insecure Dependencies
- Location
SKILL.md:10- Finding
Unpinned Global Installation of a Third-Party npm Package
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 10-18
Vulnerability Type: Unpinned third-party dependency installed globally
Risk Level: Mediummarkdown ## Prerequisites The CLI must be installed globally: ```bash npm install -g clawstoreVerify with
clawstore --version.text ### Technical Analysis The Skill instructs users or Agents to install the latest available version of the third-party `clawstore` npm package globally. The dependency is not pinned to a reviewed version, and the instructions do not require verification of package provenance, integrity, publisher identity, or package contents. npm installation may execute package lifecycle scripts such as `preinstall`, `install`, and `postinstall`. Consequently, a compromised package release could execute arbitrary commands during installation. Because the installation is global, it also places executable files in a shared command path and may require elevated privileges on some systems. This finding does not establish that the current `clawstore` package is malicious. The vulnerability is the unsafe, mutable supply-chain trust model prescribed by the Skill. ### Attack Path 1. An attacker compromises the npm publisher account, package repository, release pipeline, or another component responsible for publishing `clawstore`. 2. The attacker publishes a malicious release under the legitimate package name. 3. A user or Agent follows the Skill and executes `npm install -g clawstore` without a version constraint. 4. npm resolves the command to the attacker-controlled latest release. 5. Malicious lifecycle scripts execute during installation, or the installed `clawstore` executable runs attacker-controlled behavior when subsequently invoked. 6. The payload operates with the privileges of the account running npm and can potentially modify user files, access credentials available to that account, or replace globally accessible toolin ...[truncated 708 chars]- Remediation
View remediation
Remediation Suggestions
- Pin the CLI to a specific reviewed version rather than installing the mutable latest release, for example:
npm install -g clawstore@X.Y.Z. - Verify the expected package publisher, npm provenance attestations, repository, and release integrity before installation.
- Prefer a project-local dependency recorded in a lockfile instead of a global installation where operationally feasible.
- Review the package tarball and lifecycle scripts before approving a new version.
- Consider installing with lifecycle scripts disabled, such as
--ignore-scripts, when the package can operate without them. - Execute package installation as an unprivileged user and avoid
sudoor administrator-level npm installation. - Document an approved version-update process that includes security review, integrity verification, and testing before changing the pinned version.
- Pin the CLI to a specific reviewed version rather than installing the mutable latest release, for example:
