T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:14
- Finding
- Unpinned Third-Party Secret-Management Dependency<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 14-24 **Vulnerability Type**: Unpinned and unverifiable third-party dependency **Risk Level**: Medium ### Vulnerable Code ```markdown The `keys` CLI must be installed first: ```bash brew install stym06/tap/keys ``` Or with Go: ```bash go install github.com/stym06/keys@latest ``` ``` ### Technical Analysis The Skill instructs users to install a third-party CLI that will receive direct access to API keys and other secrets. The Go installation command explicitly selects the mutable `latest` version, while the Homebrew command also lacks a pinned version, checksum, signature, or other integrity-verification requirement. Consequently, the code executed by users may differ from the code that was reviewed during this audit. If the upstream repository, Homebrew tap, release pipeline, dependency graph, or maintainer account is compromised, a malicious version could be distributed through the documented installation process. Because the CLI's intended functions include storing, retrieving, exporting, injecting, and synchronizing credentials, a compromised release would operate within a particularly sensitive trust boundary. ### Attack Path 1. An attacker compromises the upstream repository, Homebrew tap, maintainer account, release pipeline, or one of the CLI's transitive dependencies. 2. The attacker publishes a malicious release or modifies the version resolved by `@latest`. 3. A user follows the installation instructions in `SKILL.md`. 4. The package manager downloads and executes the attacker-controlled version. 5. The user stores, retrieves, imports, injects, or synchronizes secrets through the compromised CLI. 6. The malicious CLI captures credentials and may disclose them using any network or local channel available to the user's account. ### Impact Assessment A compromised dependency would execute with the privileges of the user installing or invoking the CLI. It could potential ...[truncated 493 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Replace `@latest` with a specific, security-reviewed semantic version or immutable commit: ```bash go install github.com/stym06/keys@vX.Y.Z ``` 2. Pin the Homebrew installation to a reviewed release where supported, or distribute a versioned formula with immutable source references. 3. Publish expected SHA-256 checksums and require verification before installation. 4. Prefer cryptographically signed releases and document signature verification. 5. Review and lock transitive dependencies used by the selected release. 6. Establish a controlled upgrade process in which new versions are audited before the pinned version is changed. 7. Document the expected upstream repository, release identity, and binary digest so users can detect source substitution. ]]>
