Back to skill

Security audit

Peekaboo 1

Security checks for vulnerabilities and agentic risk

Overview

This skill coherently documents a macOS UI automation tool, but its screen, clipboard, app-control, and install-channel risks deserve careful use.

Install only if you trust Peekaboo and its Homebrew tap. Grant Screen Recording and Accessibility permissions deliberately, avoid using it on password managers, banking apps, private chats, or other sensitive windows, and do not hardcode real credentials in commands or scripts. Confirm clipboard reads/writes, screenshots, scripted runs, and destructive UI actions before allowing an agent to execute them.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

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.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (2)

Missing User Warnings

Medium
Confidence
95% confidence
Finding
The skill advertises broad macOS UI automation capabilities including app control, clipboard access, screenshots, dialog interaction, and scripted execution, but it does not foreground security or privacy risks. In an agent setting, this can normalize powerful desktop control without warning users that the tool may access sensitive on-screen data, manipulate applications, or alter clipboard contents.

Missing User Warnings

Medium
Confidence
98% confidence
Finding
The examples explicitly demonstrate automated login entry using a real-looking username and a password string, but provide no guidance on secret handling. In an LLM-agent context, this increases the chance that users or downstream agents will paste hardcoded credentials into scripts, logs, shell history, screenshots, or terminal transcripts, exposing secrets during automation.

Static analysis

No suspicious patterns detected.