T08 · Insecure Dependencies
- Location
SKILL.md:15- Finding
Unpinned npm Package Execution in Installation Command
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 15–17
Vulnerability Type: Supply-chain risk from an unpinned executable dependency
Risk Level: Mediumyaml openclaw: requires: tools: [filesystem] install: "npx clawhub install record-keeping-documentation"Technical Analysis
The installation command invokes
clawhubthroughnpxwithout specifying an exact package version or integrity digest. If the package is not already available locally,npxcan resolve, download, and execute a package from the configured npm registry at installation time.Because dependency resolution is not pinned to a reviewed artifact, the code ultimately executed can differ from the code that existed when this Skill was audited. A compromised registry account, malicious package release, package ownership transfer, or unexpected upstream update could therefore introduce attacker-controlled code into the installation process.
The repository contains no vendored installer implementation, lockfile, checksum, or signature that would allow the dynamically resolved package to be verified against a known-good version.
Attack Path
- An attacker compromises the publishing credentials, ownership, or release process of the npm package resolved as
clawhub, or otherwise influences the package source configured on the victim's system. - The attacker publishes a malicious version containing an install hook or malicious command-line implementation.
- A user follows the installation metadata and runs
npx clawhub install record-keeping-documentation. npxresolves and downloads the attacker-controlled version because no exact version is specified.- The malicious package executes with the privileges and environment of the installing user.
Impact Assessment
Successful exploitation could provide arbitrary code execution under the installing user's account. Depending on that account's permissions ...[truncated 457 chars]
- An attacker compromises the publishing credentials, ownership, or release process of the npm package resolved as
- Remediation
View remediation
Remediation Suggestions
- Pin
clawhubto an exact audited version rather than resolving the latest available release, for example:yaml install: "npx --yes clawhub@X.Y.Z install record-keeping-documentation" - Verify the pinned release against an expected integrity hash, signed release, or trusted package provenance before execution.
- Document the approved npm registry and package publisher so alternate registries or similarly named packages are not accepted silently.
- Prefer installation through a lockfile-controlled dependency workflow or a locally installed, previously verified CLI instead of downloading executable code at invocation time.
- Run installation with least privilege and without unnecessary secrets in the environment. Do not execute the command as root or an administrator.
- Review new package versions and their transitive dependencies before updating the pinned version.
- Pin
