T08 · Insecure Dependencies
- Location
SKILL.md:13- Finding
Unpinned Third-Party CLI Dependency
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 13–18
Vulnerability Type: Unpinned executable dependency from a mutable third-party Homebrew tap
Risk Level: MediumVulnerable Code:
yaml install: - kind: brew formula: runapi-ai/tap/runapi bins: - runapiTechnical Analysis
The skill instructs the environment to install the
runapiexecutable from the third-party Homebrew taprunapi-ai/tap/runapi. It does not pin an audited package version or immutable source revision, nor does it require verification of a checksum or publisher signature.Consequently, the installed executable is determined by the mutable state of the external tap and its release infrastructure at installation time. The rest of the skill trusts this executable to access authentication state, process local media paths, submit potentially billable API tasks, and download outputs.
This creates a supply-chain boundary in which compromise of the tap, formula, release artifact, distribution infrastructure, or publisher account could substitute attacker-controlled executable code.
Attack Path
- An attacker compromises the referenced Homebrew tap, its publisher account, formula repository, or associated release infrastructure.
- The attacker modifies the formula or referenced artifact so that it installs a malicious
runapiexecutable. - An agent follows the skill metadata and installs
runapi-ai/tap/runapiwithout validating an immutable version, checksum, or signature. - The substituted executable runs during installation or when the documented
runapicommands are invoked. - The executable can access data available to the invoking user, including environment-based API credentials, saved CLI authentication, request files, and local media passed to it.
- It may exfiltrate data, manipulate API requests or results, or perform other actions within the invoking user's operating-system privileges.
...[truncated 784 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin the CLI to a reviewed, explicit version rather than accepting the current release from the tap.
- Pin the formula or source to an immutable commit or content-addressed artifact where the installation mechanism supports it.
- Publish and verify a cryptographic checksum, such as SHA-256, for the expected release artifact before execution.
- Prefer verifiable publisher signatures and document the trusted signing identity and verification procedure.
- Document the expected download origin and reject artifacts obtained from unexpected hosts or redirects.
- Avoid automatic installation when the selected version and artifact integrity cannot be established.
- Run the CLI with least privilege and expose only the credentials and local files required for the specific operation.
- Periodically review the pinned dependency and deliberately update the pin only after validating the new release.
