T08 · Insecure Dependencies
Error
- Location
- SKILL.md:9
- Finding
- Unpinned Third-Party Executable Installation<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:9-27` **Vulnerability Type**: Unpinned and mutable third-party executable dependency **Risk Level**: High ### Vulnerable Code ```bash The CLI uses Chrome/Chromium via CDP directly. Install via `go install github.com/libi/ko-browser/cmd/kbr@latest` or build from source. Run `kbr install` to verify Chrome is available, or `kbr install --with-deps` to auto-install it. ## Installation # Install kbr binary directly (no CGO, no external dependencies) go install github.com/libi/ko-browser/cmd/kbr@latest # Or build from source git clone https://github.com/libi/ko-browser.git cd ko-browser go build -o kbr ./cmd/kbr/ mv kbr /usr/local/bin/ # Verify browser dependency kbr install # Auto-install Chrome if missing kbr install --with-deps ``` ### Technical Analysis The Skill directs agents to install and execute software from a mutable upstream source. The `@latest` version selector does not identify a fixed, previously audited release. Similarly, cloning the repository without checking out a pinned commit builds whichever revision is on the upstream default branch at installation time. No checksum, source commit, cryptographic signature, or other integrity verification is specified. Consequently, the executable installed at runtime can differ from the implementation present when the Skill was reviewed. The `kbr install --with-deps` command can also initiate additional dependency installation through the unverified executable. This creates a supply-chain trust boundary in which compromise of the upstream repository, maintainer account, release process, module distribution path, or dependency chain could cause attacker-controlled code to run locally. ### Attack Path 1. An attacker compromises the upstream repository, maintainer credentials, release process, or another dependency involved in building the latest version. 2. The attacker publishes malicious code under the mutable version resolved by `@la ...[truncated 1191 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Replace `@latest` with a specific, reviewed version: ```bash go install github.com/libi/ko-browser/cmd/kbr@vX.Y.Z ``` 2. For source builds, check out a full, reviewed commit hash before building: ```bash git clone https://github.com/libi/ko-browser.git cd ko-browser git checkout --detach <reviewed-full-commit-hash> ``` 3. Publish and verify SHA-256 checksums or cryptographic signatures for distributed binaries and source archives. 4. Record the expected version, commit hash, source digest, and verification procedure in the Skill. 5. Avoid moving an unverified executable into a system-wide executable directory. 6. Review the behavior of `kbr install --with-deps` and pin all packages or browser artifacts that it retrieves. 7. Perform installation in a sandbox or low-privilege environment and promote the binary only after integrity and security checks succeed. 8. Establish an update process requiring explicit review before changing the pinned version. ]]>
