T08 · Insecure Dependencies
- Location
SKILL.md:5- Finding
Unpinned Dependency Installed from a Third-Party Homebrew Tap
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 5
Vulnerability Type: Supply-chain exposure through an unpinned third-party dependency
Risk Level: MediumVulnerable 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-clias a required executable and directs the installation system to obtain it from the third-party Homebrew tapyakitrak/yakitrak. The dependency declaration does not pin an audited formula revision, package version, source commit, or immutable artifact checksum.As a result, the software installed when this declaration is processed can differ from the software that existed when the skill was reviewed. Homebrew formulas are executable Ruby definitions and may invoke build or installation logic. A compromise of the tap, its maintainers, the upstream source, or the dependency publication workflow could therefore introduce attacker-controlled code without requiring a modification to this skill package.
The audit found no evidence that the currently referenced dependency is malicious. The vulnerability is the mutable and externally controlled trust relationship created by the unpinned third-party source.
Attack Path
- An attacker compromises the third-party Homebrew tap, a maintainer account, or an upstream artifact referenced by its formula.
- The attacker publishes a modified formula or package containing malicious installation or runtime behavior.
- A user or automated skill installer processes the
brewinstallation declaration inSKILL.md. - Homebrew resolves the mutable
yakitrak/yakitrak/obsidian-cliformula and downloads the compromised content. - Attacker-controlled code runs during installation, build, or subsequent execution of ...[truncated 997 chars]
- Remediation
View remediation
Remediation Suggestions
- Prefer an official, publisher-controlled distribution channel for
obsidian-cliwhere one is available. - Pin the dependency to a specifically reviewed release and immutable source revision rather than resolving the latest formula state.
- Verify downloaded artifacts with a cryptographic checksum or signature controlled by a trusted release process.
- If the third-party tap must be retained, pin and audit the tap commit and review the complete formula, transitive dependencies, download URLs, and installation hooks.
- Run installation and CLI operations as an unprivileged user; do not use
sudoor grant the executable unnecessary filesystem access. - Record the approved version and integrity value in the skill metadata or installation documentation so unexpected dependency changes fail closed.
- Periodically re-audit the pinned dependency and update it through a controlled review process.
- Prefer an official, publisher-controlled distribution channel for
