T08 · Insecure Dependencies
- Location
SKILL.md:5- Finding
Unpinned Third-Party Executable Dependency from a Custom Homebrew Tap
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 5
Vulnerability Type: Unpinned third-party executable dependency
Risk Level: MediumVulnerable Code Snippet
yaml metadata: {"clawdbot":{"emoji":"🧾","requires":{"bins":["summarize"]},"install":[{"id":"brew","kind":"brew","formula":"steipete/tap/summarize","bins":["summarize"],"label":"Install summarize (brew)"}]}}Technical Analysis
The skill delegates installation of the required
summarizeexecutable to the custom Homebrew tapsteipete/tapwithout specifying an immutable version, source commit, checksum, or cryptographic signature.Consequently, the installed executable may change after this skill package has been reviewed. The artifact contains no source code for the CLI, so its implementation and runtime handling of files, environment variables, and network requests cannot be independently audited from the project.
This creates a supply-chain risk: compromise of the referenced tap, its upstream release infrastructure, or the formula could cause subsequent installations to retrieve a modified executable.
Attack Path
- An attacker compromises the custom Homebrew tap, its maintainer account, or an upstream artifact referenced by the formula.
- The attacker modifies the formula or release artifact to distribute a malicious
summarizeexecutable. - A user installs the dependency using the skill's documented installation metadata.
- Homebrew retrieves and installs the attacker-controlled executable because no immutable version or independently verified digest is specified by the skill.
- When the skill invokes
summarize, the malicious executable runs with the privileges of the invoking user. - The executable may access supplied local files, readable environment variables, or configured credentials and transmit them to an attacker-controlled service.
Impact Assessment
Successful exploitation would provide code execution with the privileges of the user ...[truncated 690 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin the dependency to an immutable, reviewed version or source commit rather than relying on a mutable formula reference.
- Verify downloaded release artifacts against a trusted SHA-256 digest and, where available, a maintainer signature.
- Document the exact upstream repository, release version, and expected artifact checksum.
- Prefer a trusted package source with transparent provenance, reproducible builds, and signed releases.
- Include the dependency's auditable source or a reproducible build procedure with the skill.
- Run the CLI with least privilege and restrict its access to only the files required for each summarization task.
- Provide only the credentials required for the selected provider, using a restricted process environment and narrowly scoped API keys.
- Review dependency updates before changing the pinned version, and automate integrity and provenance verification in the release process.
