T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:199
- Finding
- Unpinned Installation of a Third-Party Executable Dependency<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 199–202 **Vulnerability Type**: Unpinned third-party dependency installation **Risk Level**: Medium ### Complete Code Snippet ```markdown Before using any ETALON command, verify it is installed: ```bash etalon info ``` If not installed: `cargo install etalon-cli` If Rust not available: install from https://rustup.rs ``` The same unpinned installation command is also referenced at lines 9, 26, and 305. ### Technical Analysis The Skill instructs users or agents to install `etalon-cli` directly from the Cargo package registry without specifying an exact reviewed version, enabling Cargo's locked dependency resolution, verifying a checksum, or validating the publisher and source repository. A Cargo package can contain executable build logic, such as a `build.rs` script, that runs during compilation. Consequently, installing an untrusted or compromised release may execute code before the resulting CLI is invoked. Because no version is pinned, the effective package and transitive dependency graph can change after this Skill has been reviewed. This creates a supply-chain trust gap. It does not establish that the current ETALON package is malicious, but the documented installation procedure does not protect users against a future compromised release, account takeover, malicious dependency update, or unexpected upstream change. ### Attack Path 1. An attacker compromises the package publisher, the registry release process, or a transitive dependency used by a future `etalon-cli` release. 2. The attacker publishes a malicious or altered version under the expected package name. 3. A user follows the Skill's instruction and runs `cargo install etalon-cli`. 4. Cargo retrieves and compiles the latest matching release and its dependency graph. 5. Malicious build-time code or the installed executable runs with the privileges of the user performing the installation. 6. The malicious component can ac ...[truncated 911 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Pin the CLI to an exact reviewed release and preserve its dependency lockfile: ```bash cargo install etalon-cli --version 0.9.6 --locked ``` The version shown should be replaced whenever the project approves a newer audited release. 2. Verify that the Cargo package is owned by the expected publisher and corresponds to the repository declared in the Skill metadata. 3. Where the release process supports it, verify downloaded artifacts or source archives using publisher-provided cryptographic signatures or trusted checksums. 4. Review the pinned package's `Cargo.lock`, build scripts, installation hooks, and relevant transitive dependencies before recommending it for sensitive environments. 5. Perform installation and audits in a sandbox or container with: - No unnecessary credentials or secrets. - Read-only access to the target project when fixes are not requested. - Restricted outbound network access. - No administrator or root privileges. 6. Require explicit user approval before running `etalon audit ./ --fix`, and use version control or a clean backup so all file modifications can be reviewed and reverted. ]]>
