T08 · Insecure Dependencies
- Location
SKILL.md:4- Finding
Unpinned Holded CLI Installation from a Third-Party Homebrew Tap
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:4;references/holdedcli-reference.md:5-7
Vulnerability Type: Unpinned third-party executable dependency
Risk Level: MediumVulnerable Code
SKILL.md:4:yaml metadata: {"openclaw":{"homepage":"https://github.com/jaumecornado/holded-skill","requires":{"bins":["holded"]},"primaryEnv":"HOLDED_API_KEY","install":[{"id":"brew","kind":"brew","formula":"jaumecornado/tap/holded","bins":["holded"],"label":"Install holdedcli (brew)"}]}}references/holdedcli-reference.md:5-7:bash brew tap jaumecornado/tap brew install holdedTechnical Analysis
The skill instructs users or the hosting framework to install the
holdedexecutable from the personal third-party Homebrew tapjaumecornado/tap. The dependency is not constrained to an immutable version, commit, checksum, or cryptographically verified artifact.The installed executable occupies a sensitive trust position: it can access
HOLDED_API_KEY, communicate with the Holded API, read ERP information, and execute confirmed write operations. If the tap, formula repository, release account, or referenced artifact is compromised, a modified executable could be distributed without requiring changes to this audited skill package.This is a supply-chain weakness rather than evidence that the current upstream package is malicious.
Attack Path
- An attacker compromises the third-party Homebrew tap, its release infrastructure, or an artifact referenced by its formula.
- The attacker replaces the expected Holded CLI release with a modified executable.
- A user or agent follows the documented installation process:
bash brew tap jaumecornado/tap brew install holded - The skill invokes the compromised
holdedbinary. - The binary accesses the Holded API credential through
HOLDED_API_KEYor the local Holded CLI configuration. - The compromised binary c ...[truncated 872 chars]
- Remediation
View remediation
Remediation Suggestions
- Prefer an official, organization-controlled distribution channel for the Holded CLI.
- Pin installation to a reviewed, immutable release rather than implicitly installing the latest formula.
- Verify downloaded artifacts using a published SHA-256 digest or cryptographic release signature.
- Pin the tap or formula to a reviewed commit where the deployment mechanism permits it.
- Add installation documentation identifying the expected source repository, release version, and checksum.
- Use a Holded API key restricted to the minimum entities and operations required by the skill.
- Rotate the API key immediately if dependency or release-infrastructure compromise is suspected.
- Where possible, execute the CLI in a restricted environment with limited filesystem and network access.
