T08 · Insecure Dependencies
- Location
SKILL.md:6- Finding
Unpinned Executable Installed from a Third-Party Homebrew Tap
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 6 and 13
Vulnerability Type: Unpinned third-party dependency from a mutable package source
Risk Level: MediumEvidence
yaml metadata: {"clawdbot":{"emoji":"📍","requires":{"bins":["goplaces"],"env":["GOOGLE_PLACES_API_KEY"]},"primaryEnv":"GOOGLE_PLACES_API_KEY","install":[{"id":"brew","kind":"brew","formula":"steipete/tap/goplaces","bins":["goplaces"],"label":"Install goplaces (brew)"}]}}markdown - Homebrew: `brew install steipete/tap/goplaces`Technical Analysis
The Skill directs users or an agent runtime to install the
goplacesexecutable from the third-party Homebrew tapsteipete/tap. The dependency is not pinned to a specific release, formula revision, source commit, or immutable artifact checksum. The audited package also does not include the formula or executable source, so their installation and runtime behavior cannot be verified from the project contents.Homebrew formulas and referenced artifacts are retrieved externally. If the tap, its maintainer account, the formula repository, or an upstream release artifact is compromised or changed, the effective code installed by this instruction can differ from the code originally reviewed. Depending on the formula, installation may execute build or installation logic under the privileges of the invoking user.
This finding establishes an insecure supply-chain boundary, but the audited files do not provide evidence that the current tap or binary is malicious.
Attack Path
- An attacker compromises the third-party tap, its maintainer account, or an upstream artifact referenced by the formula.
- The attacker modifies the formula or distributed
goplacesbinary while preserving its expected package and executable names. - A user or agent follows
brew install steipete/tap/goplaceswithout verifying a fixed version, signature, or checksum. - Homebrew retrieves and i ...[truncated 1026 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin
goplacesto a reviewed, immutable release rather than installing the latest content exposed by a mutable tap. - Pin the Homebrew tap or formula to a verified commit where supported, and record the expected source or binary SHA-256 checksum.
- Require cryptographic signature verification for release artifacts when the upstream project provides signatures.
- Prefer an official, trusted distribution channel with reproducible builds and transparent provenance.
- Review and retain the exact Homebrew formula and corresponding source revision used by the Skill so installation behavior remains auditable.
- Run the executable with least privilege and restrict its filesystem and network access where sandboxing is available.
- Supply
GOOGLE_PLACES_API_KEYonly to the intended process, use a dedicated key with minimal API restrictions and quotas, and rotate the key if dependency compromise is suspected. - Add automated dependency integrity monitoring so changes to the tap, formula, release artifact, checksum, or signing identity require renewed security review.
- Pin
