T08 · Insecure Dependencies
- Location
SKILL.md:5- Finding
Unpinned Executable Installed from a Third-Party Homebrew Tap
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 5
Vulnerability Type: Unpinned third-party dependency
Risk Level: MediumComplete Code Snippet:
yaml metadata: {"clawdbot":{"emoji":"🗣️","requires":{"bins":["sag"],"env":["ELEVENLABS_API_KEY"]},"primaryEnv":"ELEVENLABS_API_KEY","install":[{"id":"brew","kind":"brew","formula":"steipete/tap/sag","bins":["sag"],"label":"Install sag (brew)"}]}}Technical Analysis
The skill instructs the environment to install the
sagexecutable from the third-party Homebrew tapsteipete/tap. The dependency declaration does not pin an immutable version or source revision and does not specify a checksum or another integrity-verification mechanism.Consequently, the code installed in the future may differ from the code that existed when this skill was audited. This creates a supply-chain trust boundary: compromise of the tap, formula, referenced release artifact, maintainer account, or distribution infrastructure could cause an altered executable to be installed.
This risk is security-relevant because the installed executable is expected to receive the
ELEVENLABS_API_KEYenvironment variable and user-provided text. The audit found no evidence that the currently referenced package is malicious; the finding concerns the dependency acquisition and verification mechanism.Attack Path
- An attacker compromises the third-party tap, its maintainer account, the formula's upstream artifact, or associated distribution infrastructure.
- The attacker publishes a modified
sagformula or executable under the same trusted package name. - A user installs or upgrades the dependency through the skill's unpinned Homebrew installation configuration.
- The modified executable runs with the invoking user's privileges when the skill calls
sag. - The executable can read data available to its process, including the ElevenLabs API key and text submitted for speech gen ...[truncated 767 chars]
- Remediation
View remediation
Remediation Suggestions
- Prefer a verified official distribution channel controlled by the software publisher.
- Pin the dependency to an immutable release version or source revision rather than tracking a mutable formula.
- Verify downloaded artifacts with a publisher-provided SHA-256 checksum and, where available, a cryptographic signature.
- Record the expected upstream repository and artifact source so maintainers can verify package provenance.
- Review Homebrew formula changes and release checksums before upgrades; avoid unattended upgrades for this dependency.
- Run the executable with the minimum required environment and filesystem access. Pass only the required API credential and avoid exposing unrelated secrets.
- Where practical, isolate execution in a sandbox with restricted filesystem and network permissions.
- Document a dependency-review and update process so each new version is assessed before changing the pin.
