T08 · Insecure Dependencies
- Location
SKILL.md:28- Finding
Unpinned npm CLI execution through a mutable latest tag
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:28andSKILL.md:148-150
Vulnerability Type: Supply-chain risk from an unpinned executable dependency
Risk Level: MediumVulnerable Code
SKILL.md:28:bash npx clawhub@latest install deepseekoracle/lygo-excavationpro-music-latticeSKILL.md:148-150:bash npx clawhub@latest publish "…/clawhub/mirrors/lygo-excavationpro-music-lattice" \ --slug lygo-excavationpro-music-lattice \ --name "LYGO Excavationpro Music Lattice"Technical Analysis
The documented commands use
npxto download and execute theclawhubnpm package identified by the mutablelatestdistribution tag. The package version and artifact integrity are not pinned.Consequently, the code executed by these commands can change after this skill has been reviewed. If the npm package, maintainer account, publishing credentials, or package distribution process is compromised,
clawhub@latestcould resolve to attacker-controlled code. npm CLI packages and their lifecycle behavior execute with the privileges of the invoking user.This issue is not automatically triggered by the included Python scripts; exploitation requires a user or agent to follow one of the documented
npxcommands.Attack Path
- An attacker compromises the
clawhubpackage, its maintainer account, or the associated npm publishing credentials. - The attacker publishes a malicious release and assigns it to the
latestdistribution tag. - A user follows the installation or publishing instructions in
SKILL.md. npxretrieves the current attacker-controlled release.- The malicious package executes under the invoking user's account.
- The payload can access resources available to that user, including project files, environment variables, npm credentials, publishing tokens, and other locally accessible data.
Impact Assessment
Successful exploitation could result i ...[truncated 769 chars]
- An attacker compromises the
- Remediation
View remediation
Remediation Suggestions
- Replace
clawhub@latestwith an exact, reviewed version, for exampleclawhub@X.Y.Z. - Manage the CLI through a project dependency and commit a lockfile containing the resolved artifact integrity hash.
- Install dependencies with a deterministic command such as
npm ci, then invoke the verified local binary rather than downloading a mutable package at execution time. - Verify npm provenance, package ownership, expected checksums, and release signatures before upgrading the pinned version.
- Review each version change before updating the pin; do not automatically track distribution tags such as
latest. - Run installation and publishing operations in an isolated, least-privileged environment with only the credentials required for that operation.
- Keep publishing tokens short-lived and narrowly scoped, and avoid exposing unrelated secrets to the CLI process.
- Document the expected package version, publisher identity, and verification procedure alongside both commands.
- Replace
