Back to skill

Security audit

Obsidian

Security checks for vulnerabilities and agentic risk

Overview

This skill is a straightforward Obsidian helper, with a visible third-party CLI install that users should trust-check before use.

Install only if you are comfortable trusting the yakitrak/yakitrak Homebrew tap and the obsidian-cli tool with access to your Obsidian vault files. Review commands that move or delete notes before running them, especially in work or synced vaults.

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 Installed from a Third-Party Homebrew Tap<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, line 5 **Vulnerability Type**: Unpinned third-party dependency and supply-chain risk **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 declares `obsidian-cli` as a required executable and directs the environment to install it from the third-party Homebrew tap `yakitrak/yakitrak`. The dependency is not pinned to an audited version, immutable commit, or cryptographic digest. The skill's declared homepage points to Obsidian documentation, while the executable is obtained from a separate third-party publisher. This trust distinction is not documented or verified in the skill. Because Homebrew resolves the current formula and its upstream artifacts at installation time, the effective executable can change without any corresponding modification to this repository. This creates a supply-chain exposure: compromise of the tap, its maintainer account, the upstream release infrastructure, or an artifact referenced by the formula could result in attacker-controlled code being installed. No evidence shows that the current dependency is malicious; the finding concerns the unsafe, mutable trust mechanism. ### Attack Path 1. An attacker compromises the third-party Homebrew tap, its maintainer account, or an upstream artifact source used by the formula. 2. The attacker changes the formula or referenced release so that it installs a malicious executable or runs malicious installation logic. 3. A user or automated agent installs the declared dependency using `yakitrak/yakitrak/obsidian-cli`. 4. Homebrew retrieves and installs the attacker-controlled dependency under the installing user's authority. 5. The agent later invokes apparently legitimate comman ...[truncated 1104 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. Prefer an officially maintained and verified distribution source for `obsidian-cli`, if one is available. 2. Pin the dependency to a specific reviewed version rather than accepting the current version from a mutable tap. 3. Verify downloaded artifacts with a trusted SHA-256 digest or equivalent cryptographic integrity mechanism. 4. Where possible, reference an immutable source revision and audit both the Homebrew formula and every upstream download URL it uses. 5. Document that `yakitrak/yakitrak` is a third-party publisher distinct from the declared Obsidian homepage, including the resulting trust assumptions. 6. Use dependency monitoring to detect formula ownership changes, unexpected checksum changes, compromised releases, and newly disclosed vulnerabilities. 7. Run the CLI with least privilege and restrict its filesystem access to the intended vault where the execution environment supports sandboxing. 8. Require manual review before accepting dependency upgrades, and retest vault read, write, move, and delete behavior after each approved update. ]]>
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

Static analysis

No suspicious patterns detected.