T08 · Insecure Dependencies
- Location
SKILL.md:45- Finding
Unpinned Third-Party Skill Installation Creates a Supply-Chain Risk
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 45-50; duplicated inREADME.md, lines 39-49
Vulnerability Type: T08: Insecure Dependencies
Risk Level: MediumThe setup procedure installs third-party skills by mutable package name without specifying reviewed versions, immutable digests, checksums, or publisher-verification requirements.
bash # For ci-builder: clawhub install pilot-task-router pilot-share pilot-github-bridge # For ci-tester: clawhub install pilot-task-router pilot-share pilot-audit-log # For ci-deployer: clawhub install pilot-task-router pilot-share pilot-webhook-bridge pilot-receiptTechnical Analysis
Each
clawhub installcommand resolves dependencies using only a package name. Consequently, the installed content can differ from the content that existed when this project was audited. A compromised registry account, malicious future release, namespace takeover, or dependency-resolution attack could cause an Agent to install unreviewed code.The affected skills perform security-sensitive CI/CD functions, including artifact transfer, GitHub webhook handling, audit logging, post-deployment webhooks, and deployment receipts. The project does not direct the Agent to inspect resolved package metadata, validate publisher identity, verify a checksum, or obtain explicit approval for a resolved version before installation.
Attack Path
- An attacker compromises a publisher or registry account associated with one of the named skills, or otherwise causes a malicious release to resolve under that name.
- A user asks the Agent to configure one of the documented CI/CD roles.
- The Agent follows the setup instructions and executes the unpinned
clawhub installcommand. clawhubresolves and installs the attacker-controlled release.- When the installed skill is loaded or invoked, it operates in the corresponding CI/CD role and can abuse whatever tools, files, credent ...[truncated 702 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin every installed skill to an explicitly reviewed version or, preferably, an immutable content digest.
- Verify package signatures, publisher identity, and checksums before installation.
- Maintain an allowlist mapping each dependency name to its approved publisher and immutable digest.
- Resolve and display the exact package version before installation, then require explicit user approval.
- Use a trusted internal mirror or lockfile so deployments remain reproducible.
- Audit transitive dependencies and repeat verification whenever a pinned version is intentionally updated.
- Run installed skills with least privilege, separating build, test, and deployment credentials to limit the effect of a compromised package.
