T08 · Insecure Dependencies
- Location
SKILL.md:27- Finding
Unpinned External CLI Installation Creates a Supply-Chain Risk
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 27–34
Vulnerability Type: Unpinned third-party dependency and unverified release artifact
Risk Level: MediumVulnerable Code
markdown If that fails, the CLI is not installed. Tell the user, with the install line for their platform, and stop — there is no fallback path: ```text cargo install anything-to-skill # or download a release binary: # https://github.com/asale-ai/anything-to-skill/releasestext ### Technical Analysis The skill requires users or agents to install and execute an external `anything-to-skill` CLI that is not included in the audited project. The Cargo command does not pin a specific version or require a locked dependency graph. The release-binary alternative also does not identify a fixed release or require checksum or signature verification. As a result, the code ultimately executed by the documented `check`, `extract`, and `render` commands can change after this skill has been reviewed. The risk becomes exploitable if the package registry account, upstream repository, release artifacts, or transitive dependency chain is compromised. This audit found no evidence that the currently referenced project is malicious; the finding concerns the unsafe dependency acquisition process. ### Attack Path 1. An attacker compromises the upstream package publisher, release account, distribution channel, or a dependency used by a future CLI release. 2. The attacker publishes a modified package or replaces a downloadable release artifact. 3. A user or agent follows `SKILL.md` and runs the unpinned `cargo install anything-to-skill` command or downloads an unverified release binary. 4. The malicious executable runs with the permissions of the invoking user when the skill calls `anything-to-skill --version`, `check`, `extract`, or `render`. 5. The executable can access inputs supplied for conversion and any other resources available to that operating-system account. ### Impac ...[truncated 513 chars]- Remediation
View remediation
Remediation Suggestions
-
Pin a reviewed CLI version exactly and retain Cargo's resolved dependency versions:
bash cargo install anything-to-skill --version '=X.Y.Z' --locked -
Document the authoritative package identity, source repository, expected publisher, and reviewed commit or release tag.
-
Link directly to a fixed release rather than a mutable releases index.
-
Publish SHA-256 or stronger checksums for every release artifact and require verification before execution.
-
Prefer signed releases and document signature verification against a pinned maintainer key.
-
Re-audit the CLI and its locked transitive dependency graph whenever the pinned version is updated.
-
Where feasible, vendor the reviewed implementation or distribute the verified executable with the skill through a trusted, integrity-protected channel.
-
