T08 · Insecure Dependencies
- Location
SKILL.md:12- Finding
Unpinned Third-Party Dependency Installation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 12
Vulnerability Type:T08: Insecure Dependencies
Risk Level: MediumVulnerable Code Snippet:
yaml metadata: {"clawdbot":{"emoji":"📺","requires":{"bins":["yt-dlp"]},"install":[{"id":"brew","kind":"brew","formula":"yt-dlp","bins":["yt-dlp"],"label":"Install yt-dlp (brew)"},{"id":"pip","kind":"pip","package":"yt-dlp","bins":["yt-dlp"],"label":"Install yt-dlp (pip)"}]}}Technical Analysis
The installation metadata permits
yt-dlpto be installed from a third-party package registry without specifying an audited version or an integrity hash. Consequently, the installed artifact can change after this Skill has been reviewed.This does not demonstrate that the legitimate
yt-dlppackage is malicious. The risk arises because installation security depends on the future state of the package registry, publisher account, configured package source, and dependency resolution process. If any of those supply-chain components are compromised or redirected, an attacker-controlled package release could be installed.The Homebrew installation alternative is also unversioned, although its distribution and verification controls differ from those of Python package installation.
Attack Path
- An attacker compromises a relevant package publisher or distribution account, package source, or dependency delivery channel.
- The attacker publishes or serves a malicious release under the expected
yt-dlppackage identity. - A user or agent installs the Skill dependency through the declared unpinned installation method.
- The resolver selects the attacker-controlled release because no approved version or artifact hash is enforced.
- Malicious package installation behavior or subsequently invoked package code executes with the privileges of the installing or invoking user.
This exploitation path is conditional on compromise or manipulation of the upstrea ...[truncated 725 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin
yt-dlpto a specifically reviewed version rather than resolving the latest available release. - For Python installations, distribute a requirements or lock file containing cryptographic hashes and install with hash verification, such as
pip install --require-hashes. - Configure an explicitly trusted package index and disable unintended fallback indexes to reduce dependency-confusion and source-redirection risks.
- For Homebrew installations, document the trusted tap and use an approved versioned formula or verified package artifact where feasible.
- Regularly review pinned dependency versions for security advisories and update them through a controlled review process.
- Install and execute the dependency as an unprivileged user in a restricted environment with only the filesystem and network access required for transcript retrieval.
- Pin
