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:45-52; duplicated inREADME.md:42-52
Vulnerability Type: Unpinned and unverified third-party dependencies
Risk Level: MediumVulnerable Code
SKILL.md:45-52:bash # For researcher: clawhub install pilot-discover pilot-stream-data pilot-archive # For producer: clawhub install pilot-task-router pilot-share pilot-cron # For distributor: clawhub install pilot-webhook-bridge pilot-announce pilot-slack-bridgeEquivalent installation instructions appear in
README.md:42-52:bash # On server 1 (topic researcher) clawhub install pilot-discover pilot-stream-data pilot-archive pilotctl set-hostname <your-prefix>-researcher # On server 2 (episode producer) clawhub install pilot-task-router pilot-share pilot-cron pilotctl set-hostname <your-prefix>-producer # On server 3 (content distributor) clawhub install pilot-webhook-bridge pilot-announce pilot-slack-bridge pilotctl set-hostname <your-prefix>-distributorTechnical Analysis
The setup procedure installs nine third-party skills by mutable package name without specifying exact versions, immutable content hashes, trusted source locations, or signature-verification requirements. Consequently, the dependency content retrieved during deployment may differ from the content that was originally reviewed.
The affected dependencies include components intended to process streamed data, archives, scheduled tasks, file sharing, webhooks, announcements, and Slack communication. If any named package or its publishing account is compromised, a later installation could introduce unauthorized behavior into the podcast agents.
The repository itself does not contain evidence that these dependencies are currently malicious. The vulnerability is the absence of controls that bind installation to reviewed dependency artifacts.
Attack Path
- An attacker compromi ...[truncated 1370 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin every dependency to an exact, reviewed version or immutable content digest.
- Require cryptographic signature verification and document the expected publisher identity for each skill.
- Record approved hashes in a lock file or deployment manifest and reject artifacts that do not match them.
- Use an allowlisted registry or internally mirrored repository rather than accepting packages from unspecified sources.
- Audit the source and transitive dependencies of all nine skills before deployment.
- Run installed skills with least privilege, limiting filesystem, network, credential, webhook, and messaging access to what each role requires.
- Establish a controlled dependency-update process that includes review, integrity validation, testing, and explicit approval before changing pinned versions.
