T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:5
- Finding
- Unpinned Third-Party Homebrew Dependency## Vulnerability Details **File Location**: `SKILL.md`, line 5 **Vulnerability Type**: Supply-chain risk from a mutable third-party package source **Risk Level**: Medium ### Vulnerable Code Snippet ```yaml metadata: {"clawdbot":{"emoji":"👀","os":["darwin"],"requires":{"bins":["peekaboo"]},"install":[{"id":"brew","kind":"brew","formula":"steipete/tap/peekaboo","bins":["peekaboo"],"label":"Install Peekaboo (brew)"}]}} ``` ### Technical Analysis The Skill instructs the package manager to install `peekaboo` from the third-party Homebrew tap `steipete/tap`. The dependency declaration does not pin an immutable version, source commit, artifact digest, or cryptographic signature. Consequently, the code installed for the same dependency identifier may change after this Skill has been reviewed. A compromise of the tap, its maintainer account, the referenced release infrastructure, or an upstream artifact could cause users to receive a different executable or malicious installation logic. This finding does not establish that the current Homebrew formula or Peekaboo executable is malicious. It identifies the absence of controls that would prevent a future supply-chain change from silently altering the installed code. ### Attack Path 1. An attacker compromises the third-party Homebrew tap, its publishing credentials, or an upstream artifact location used by its formula. 2. The attacker modifies the formula or replaces a referenced package artifact with a malicious version. 3. A user follows the Skill installation metadata and installs `steipete/tap/peekaboo`. 4. Homebrew retrieves and processes the modified formula or artifact because the Skill does not enforce an immutable version or expected digest. 5. Malicious installation logic or the substituted executable runs with the privileges of the installing user when installed or invoked. 6. If the compromised executable is subsequently granted the documented Screen Recording and Acc ...[truncated 781 chars]
- Remediation
- ## Remediation Suggestions 1. Pin the dependency to an immutable, audited release or source commit rather than relying only on a mutable formula name. 2. Require verification of the downloaded artifact using a publisher-provided SHA-256 or stronger cryptographic digest. 3. Prefer signed release artifacts and verify the signature against a documented, trusted publisher key. 4. Use an official distribution channel whose ownership can be independently verified. 5. Record the expected Peekaboo version in the Skill metadata and reject unexpected versions before execution. 6. Review the Homebrew formula, installation hooks, and transitive dependencies whenever the pinned release is updated. 7. Grant Screen Recording and Accessibility permissions only after verifying the installed executable's origin, signature, version, and digest. 8. Run the dependency with the minimum necessary user privileges and avoid elevated installation or execution unless explicitly required.
