Back to skill

Security audit

apple-notes

Security checks for vulnerabilities and agentic risk

Overview

This is a coherent Apple Notes helper skill, but users should understand that it installs a third-party CLI and can read, export, edit, move, and delete notes after macOS grants access.

Install only if you trust the memo project and its Homebrew tap, and review what macOS Automation access allows. Preview or list notes before editing, moving, exporting, or deleting them, and revoke Notes.app Automation permission when you no longer need the CLI.

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:17
Finding
Unpinned Third-Party CLI Installation from Mutable Sources## Vulnerability Details **File Location**: `SKILL.md`, lines 17 and 32–33 **Vulnerability Type**: Unpinned and unverified third-party dependency **Risk Level**: Medium The Skill directs users to install the external `memo` CLI from a custom Homebrew tap or a cloned repository without pinning an immutable release, commit, checksum, or signature. ```yaml "formula": "antoniorodr/memo/memo", ``` ```sh brew tap antoniorodr/memo && brew install antoniorodr/memo/memo pip install . ``` ### Technical Analysis The Homebrew installation retrieves a mutable formula from the third-party `antoniorodr/memo` tap. The instructions do not constrain installation to a reviewed version or verify the integrity or authenticity of downloaded content. The alternative `pip install .` workflow similarly installs executable code from the current cloned directory without specifying the expected repository URL, release tag, immutable commit, package hash, or signature. The actual dependency implementation is not included in this project, so its installation logic and runtime behavior could not be audited. This creates a supply-chain trust boundary: the effective code installed when the instructions are followed can differ from the code that existed when this Skill was reviewed. ### Attack Path 1. An attacker compromises the upstream repository, custom Homebrew tap, maintainer account, release process, or a user's local clone. 2. The attacker modifies the formula, package source, build process, or runtime code. 3. A user follows the Skill instructions and installs the latest mutable content without integrity verification. 4. Attacker-controlled code executes with the privileges of the installing user. 5. The user grants the installed CLI macOS Automation access to Notes.app as instructed. 6. The compromised CLI abuses that authorized access to read, modify, delete, move, or export Apple Notes within the permissions available to the ...[truncated 645 chars]
Remediation
## Remediation Suggestions 1. Pin the Homebrew installation to a reviewed, immutable release or commit rather than implicitly installing the latest tap content. 2. Publish and verify a cryptographic checksum or trusted signature for the expected source archive or binary. 3. Specify the canonical HTTPS repository URL and an immutable commit hash for the manual installation workflow. 4. Replace the generic `pip install .` instruction with a reproducible installation procedure that checks out and verifies the approved revision before installation. 5. Review the dependency's formula, build hooks, transitive dependencies, and runtime code before recommending it. 6. Use a lockfile or equivalent dependency manifest where supported, including hashes for transitive dependencies. 7. Document the minimum macOS Automation permissions required and advise users to revoke Notes.app access when the CLI is no longer needed. 8. Consider distributing a verified release artifact through a trusted package source with provenance attestations and signed releases.
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (1)

Missing User Warnings

Medium
Confidence
90% confidence
Finding
The skill explicitly supports deleting Apple Notes but does not include any warning, confirmation guidance, or caution about irreversible data loss. In an agent-driven context, exposing destructive operations without prominent safeguards increases the chance of accidental or unauthorized deletion of personal notes.

Static analysis

No suspicious patterns detected.