T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:12
- Finding
- Unpinned Third-Party Executable Dependency## Vulnerability Details **File Location**: `SKILL.md`, lines 12–19 **Vulnerability Type**: Supply-chain risk from a mutable dependency reference **Risk Level**: Medium ### Vulnerable Code ```yaml "requires": { "bins": ["grizzly"] }, "install": [ { "id": "go", "kind": "go", "module": "github.com/tylerwince/grizzly/cmd/grizzly@latest", "bins": ["grizzly"], "label": "Install grizzly (go)", }, ``` ### Technical Analysis The installation configuration retrieves the `grizzly` executable using the mutable Go module version `@latest`. Consequently, the installed code can change after this skill has been reviewed without any corresponding modification to the audited project. Because the dependency is sourced from an external GitHub namespace and no immutable version, commit, checksum, or signature is specified, a compromised publisher account, compromised upstream repository, or malicious future release could cause installation of attacker-controlled code. ### Attack Path 1. An attacker compromises the upstream repository, its maintainer account, or its release process. 2. The attacker publishes a malicious release that resolves as `@latest`. 3. A user or agent installs the skill dependency according to the manifest. 4. The Go installer downloads and builds the attacker-controlled version. 5. The resulting `grizzly` binary executes with the invoking user's privileges when the documented commands are used. 6. The malicious binary can access resources available to that user, potentially including Bear notes and the configured Bear token. ### Impact Assessment Successful exploitation permits arbitrary behavior within the privileges of the user installing or invoking the dependency. Potential effects include reading or modifying Bear notes, stealing the Bear API token, accessing other user-readable files, and executing additional local commands. The project itself does ...[truncated 150 chars]
- Remediation
- ## Remediation Suggestions - Replace `@latest` with a specifically audited semantic version or immutable commit. - Prefer a release with published checksums or cryptographic signatures, and verify those artifacts before installation. - Record the expected upstream repository and reviewed version in the skill documentation. - Introduce a controlled dependency-update process that requires review and testing before changing the pinned version. - Where supported, generate and retain dependency provenance or software bill-of-materials information.
