T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:43
- Finding
- Unpinned installation of an unofficial third-party CLI<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:43-68` **Vulnerability Type**: Supply-chain exposure through mutable and unverified dependencies **Risk Level**: Medium ### Vulnerable Code ```bash brew tap hongkongkiwi/tap brew install elevenlabs-cli ``` ```powershell scoop bucket add elevenlabs-cli https://github.com/hongkongkiwi/scoop-elevenlabs-cli scoop install elevenlabs-cli ``` ```bash sudo snap install elevenlabs-cli ``` ```bash cargo install elevenlabs-cli ``` ```bash docker pull ghcr.io/hongkongkiwi/elevenlabs-cli:latest docker run --rm -e ELEVENLABS_API_KEY=your-key ghcr.io/hongkongkiwi/elevenlabs-cli tts "Hello!" ``` ### Technical Analysis The skill directs users to install and execute an unofficial community-maintained CLI from several third-party distribution channels. It does not pin package versions, immutable source revisions, checksums, signatures, or container image digests. The Docker instructions explicitly use the mutable `latest` tag. The Homebrew tap and Scoop bucket are hosted under a personal GitHub account, while Cargo and Snap resolve packages through external registries. Consequently, the executable installed by a user can change after this skill has been reviewed. This is a supply-chain trust issue rather than evidence that the current upstream package is malicious. Exploitation requires compromise or malicious modification of one of the referenced repositories, registry accounts, packages, or release artifacts. ### Attack Path 1. An attacker compromises an upstream maintainer account, repository, registry account, package release process, or container registry. 2. The attacker publishes a modified CLI release or replaces the image referenced by the mutable `latest` tag. 3. A user or autonomous agent follows the skill's installation instructions without verifying an immutable version or cryptographic digest. 4. The package manager downloads and installs the attacker-controlled artifact. 5. The user executes ...[truncated 985 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Pin every installation example to a reviewed, explicit release version. 2. Replace the Docker `latest` tag with an immutable image digest, for example: ```bash docker pull ghcr.io/hongkongkiwi/elevenlabs-cli@sha256:<verified-digest> ``` 3. Publish expected SHA-256 checksums and require users to verify downloaded release artifacts before execution. 4. Document signature or provenance verification, such as Sigstore verification or registry-specific artifact attestations. 5. Where supported, pin Homebrew, Scoop, Cargo, and Snap installations to reviewed versions. 6. Prefer official ElevenLabs tooling or clearly explain the additional trust placed in the community maintainer and distribution channels. 7. Run the CLI with least privilege and isolate it from unrelated credentials and sensitive files. 8. Avoid passing API keys directly in command lines or examples; use a narrowly scoped secret injection mechanism. ]]>
