Back to skill

Security audit

Obsidian 1

Security checks for vulnerabilities and agentic risk

Overview

This skill is a straightforward Obsidian note-management helper, with disclosed note editing and deletion capability plus a third-party CLI install risk users should understand.

Install only if you are comfortable trusting the obsidian-cli Homebrew tap and allowing the agent to read and modify the selected Obsidian vault. Confirm the vault and note path before move or delete requests, and keep backups or version history enabled for important notes.

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 Executable Dependency from a Third-Party Homebrew Tap## Vulnerability Details **File Location**: `SKILL.md`, line 5 **Vulnerability Type**: Unpinned third-party executable dependency **Risk Level**: Medium ### Vulnerable Code ```yaml metadata: {"clawdbot":{"emoji":"💎","requires":{"bins":["obsidian-cli"]},"install":[{"id":"brew","kind":"brew","formula":"yakitrak/yakitrak/obsidian-cli","bins":["obsidian-cli"],"label":"Install obsidian-cli (brew)"}]}} ``` ### Technical Analysis The skill directs the environment to install `obsidian-cli` from the third-party Homebrew tap `yakitrak/yakitrak`. The dependency declaration does not pin a reviewed version or immutable source commit and does not specify an expected checksum or other integrity constraint. Consequently, the executable and its installation logic can change after this skill version has been reviewed. If the tap, formula, release artifact, or upstream publishing account is compromised, a subsequent installation or upgrade could retrieve and execute altered code under the installing user's account. This is a supply-chain trust issue rather than evidence that the dependency is currently malicious. ### Attack Path 1. An attacker compromises the third-party Homebrew tap, its publishing credentials, or an artifact referenced by its formula. 2. The attacker publishes a modified formula or executable under the existing `obsidian-cli` package identity. 3. A user or automated skill installer processes the unpinned `yakitrak/yakitrak/obsidian-cli` declaration. 4. Homebrew retrieves and installs the attacker-controlled version. 5. Installation logic or the resulting executable runs with the permissions of the installing user. 6. When invoked for vault operations, the compromised executable can access data available to that user, including configured Obsidian vault content. ### Impact Assessment Successful exploitation could permit arbitrary code execution with the installing user's privileges. The resulting scope could include reading or modifying Obsidian notes ...[truncated 283 chars]
Remediation
## Remediation Suggestions - Prefer a verified official distribution channel when one is available. - Pin the dependency to a reviewed release or immutable source revision rather than allowing the installed implementation to change independently. - Verify downloaded artifacts against an expected cryptographic checksum or signature from a separately trusted source. - Record the approved dependency version, source repository, and digest in the skill metadata or installation documentation. - Perform upgrades through an explicit review process instead of silently accepting the latest formula. - Run the CLI with least privilege and limit its filesystem access to the intended Obsidian vault where the execution environment supports sandboxing.
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
96% confidence
Finding
The skill explicitly documents create, move, and delete commands that modify or remove notes, but it does not warn that these operations are destructive or advise confirmation before use. In a filesystem-backed notes tool like Obsidian, an agent following this guidance could unintentionally alter or delete user data, especially if it guesses the wrong vault or note path.

Static analysis

No suspicious patterns detected.