T08 · Insecure Dependencies
- Location
SKILL.md:26- Finding
Unpinned Remote Package Execution and Unrestricted Dependency Updates
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 26-34
Vulnerability Type:T08: Insecure Dependencies
Risk Level: MediumVulnerable Code
bash npx -y clawhub@latest install tavily-search npx -y clawhub@latest install goplaces npx -y clawhub@latest install api-gateway npx -y clawhub@latest install shopify npx -y clawhub@latest update --allTechnical Analysis
The installation instructions invoke
clawhub@latestthroughnpx -y. This causes npm to retrieve and execute the package version currently associated with the mutablelatesttag without interactive confirmation. Consequently, the code executed during installation can differ from the version that was reviewed during this audit.Although the document identifies inspected versions for the individual skills, the commands do not pin those versions. The subsequent
update --alloperation further replaces every installed skill with its current upstream version, including dependencies unrelated to this skill. No integrity hashes, lockfile, signature verification, allowlist, or post-download review step is specified.No evidence in the audited files indicates that the current packages are malicious. The vulnerability is the unsafe, mutable supply-chain execution mechanism.
Attack Path
- An attacker compromises the
clawhubpublishing account, package registry entry, distribution infrastructure, or one of the named upstream skills. - The attacker publishes a modified release and assigns it to the relevant mutable version tag.
- A user follows the documented installation instructions.
npx -y clawhub@latestdownloads and executes the changed CLI package without confirmation.- The install commands retrieve the compromised skill, or
update --allreplaces an already inspected dependency with the compromised release. - Malicious installation logic or skill content executes with the permissions of the user running ...[truncated 902 chars]
- An attacker compromises the
- Remediation
View remediation
Remediation Suggestions
-
Pin the ClawHub CLI to a reviewed, immutable version rather than using
@latest, for example:bash npx --yes clawhub@<reviewed-version> install tavily-search@1.0.0 npx --yes clawhub@<reviewed-version> install goplaces@1.0.0 npx --yes clawhub@<reviewed-version> install api-gateway@1.0.29 npx --yes clawhub@<reviewed-version> install shopify@1.0.1The exact syntax should first be verified against the pinned CLI's supported interface.
-
Remove
update --all. Update only explicitly named dependencies after reviewing each new version and its changelog. -
Where supported, validate package signatures or cryptographic checksums before installation. Store expected versions and integrity values in a committed lock or manifest file.
-
Separate download and execution phases. Download packages for inspection first, validate their provenance and contents, and only then install them.
-
Run installation in a sandbox or least-privileged environment without production API keys in its environment. Do not execute package installation as root or an administrator.
-
Require an explicit user confirmation before dependency changes instead of automatically accepting all prompts with
-y. -
Re-audit upstream skills whenever their pinned versions change, particularly skills capable of network access or store deployment.
-
