T08 · Insecure Dependencies
- Location
SKILL.md:24- Finding
Unpinned Third-Party Installer and Unrestricted Bulk Skill Updates
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 24–36
Vulnerability Type: Insecure third-party dependency installation and updates
Risk Level: MediumVulnerable Code
markdown - `gmail` (inspected latest: `1.0.6`) - `deepread-ocr` (inspected latest: `1.0.6`) - `stripe-api` (inspected latest: `1.0.8`) - `xero` (inspected latest: `1.0.4`) Install/update: ```bash npx -y clawhub@latest install gmail npx -y clawhub@latest install deepread-ocr npx -y clawhub@latest install stripe-api npx -y clawhub@latest install xero npx -y clawhub@latest update --alltext ### Technical Analysis The documentation identifies specific inspected Skill versions but does not install those versions. Instead, every command invokes the mutable `clawhub@latest` npm release and installs each Skill without an explicit version constraint. The `npx -y` option automatically downloads and executes the selected npm package without interactive confirmation. Consequently, the installer code executed in the future may differ from the version available when this Skill was audited. The absence of documented integrity verification, such as a trusted digest or signature, prevents users from confirming that downloaded installer and Skill artifacts match reviewed content. The final `update --all` command further expands the modification scope beyond the four declared dependencies. It may update unrelated installed Skills to versions that were not reviewed as part of this project. This violates least-change supply-chain practice and makes the effective runtime dependency set non-reproducible. This finding does not establish that the current upstream packages are malicious. The vulnerability is the unsafe use of mutable, automatically executed dependency channels and an unrestricted bulk update operation. ### Attack Path 1. An attacker compromises the npm account, publication pipeline, registry delivery path, or mutable release of `clawhub`. 2. Alternatively, an ups ...[truncated 1362 chars]- Remediation
View remediation
Remediation Suggestions
- Pin the
clawhubnpm package to an exact, reviewed version rather than using@latest. - Pin all four Skills to their exact inspected versions:
gmailversion1.0.6deepread-ocrversion1.0.6stripe-apiversion1.0.8xeroversion1.0.4
- Use only version-installation syntax officially supported by ClawHub; verify that the resolved artifact exactly matches the intended version.
- Validate downloaded artifacts using trusted cryptographic hashes, signatures, provenance attestations, or a lockfile where supported.
- Remove
npx -y clawhub@latest update --all. Update only explicitly named dependencies after reviewing the proposed versions and changes. - Avoid unattended execution of newly downloaded installer code. Retrieve and inspect the intended package version before execution where operationally practical.
- Run installation and update operations from a least-privileged account without production credentials in its environment.
- Test dependency upgrades in an isolated environment before promotion to a bookkeeping environment.
- Document the exact approved dependency set and periodically re-audit each dependency before changing its pinned version.
- Pin the
