T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:38
- Finding
- Unpinned External Tool Installations Permit Mutable Supply-Chain Code Execution## Vulnerability Details **File Location**: `SKILL.md`, lines 38-51 **Vulnerability Type**: `T08: Insecure Dependencies` **Risk Level**: Medium ```bash # Or use Go go install github.com/gitleaks/gitleaks/v8@latest ``` ```bash # Or use Docker docker pull trufflesecurity/trufflehog:latest ``` ### Technical Analysis The installation instructions use the mutable `latest` identifier for both a Go module and a Docker image. Because these identifiers can resolve to different artifacts over time, the code ultimately installed or executed may differ from what was reviewed when the Skill was published. This behavior is related to the Skill's declared secret-scanning functionality, but mutable references are not the minimum-risk mechanism needed to install the scanners. Exact versions and immutable image digests would provide the same functionality while reducing supply-chain exposure. ### Attack Path 1. An attacker compromises an upstream release process, maintainer account, package registry, or container registry. 2. The attacker publishes a malicious artifact under a version selected by `@latest` or replaces the image referenced by the `latest` tag. 3. A user follows the documented installation command. 4. The package installer or container runtime downloads the attacker-controlled artifact. 5. The malicious artifact executes with the permissions available to the invoking user or container environment. ### Impact Assessment A compromised Go tool can execute with the local user's privileges when invoked. A compromised container image can access any files, environment variables, credentials, sockets, or network resources explicitly exposed to the container. Potential consequences include source-code theft, secret exfiltration, repository modification, and further compromise of the developer or CI environment. The precise scope depends on the invoking user's privileges and container configuration.
- Remediation
- ## Remediation Suggestions - Replace `@latest` with a reviewed, exact Gitleaks version. - Replace the Docker `latest` tag with a reviewed image digest, such as `image@sha256:...`. - Verify release signatures or checksums before installation where supported. - Document expected publishers and official distribution channels. - Use automated dependency-update tooling to propose version changes for review rather than resolving mutable versions during installation. - Run scanners with only the filesystem and network access required for repository analysis.
