T08 · Insecure Dependencies
- Location
SKILL.md:339- Finding
Unpinned and Unverified Third-Party CLI Dependency
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 339
Vulnerability Type: Insecure third-party dependency
Risk Level: MediumComplete Code Snippet:
markdown | free-finder | CLI工具 | 必需 | `pip install free-finder` |Technical Analysis
The Skill directs the agent or user to install
free-finderfrom the default Python package index without specifying an exact version, cryptographic hashes, a verified publisher, or a source repository. The package is therefore mutable external code whose implementation was not included in the audited project.The documented workflow grants this CLI access to command execution, network communication, user configuration files, and the OpenRouter API credential. Consequently, compromise of the package, its publisher account, or its distribution path could introduce arbitrary code into the environment. The package's actual behavior and side effects cannot be verified from the single Markdown file supplied for audit.
Attack Path
- An agent loads the Skill and follows its dependency-installation instructions.
- The command
pip install free-finderresolves the current package release from the configured package index. - A compromised, malicious, or unexpectedly changed release is downloaded.
- Package installation hooks or subsequently invoked CLI code execute with the privileges of the user running the agent.
- The package can access files available to that user, read configured credentials such as
OPENROUTER_API_KEY, alter~/.free-finder/config.json, and initiate network requests.
This is a supply-chain exposure rather than evidence that the current external package is malicious.
Impact Assessment
Successful exploitation could provide arbitrary code execution with the invoking user's privileges. The accessible scope could include the user's files, environment variables, OpenRouter API credential, Free Finder configuration, and outbound ne ...[truncated 175 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin
free-finderto a specifically reviewed version rather than installing the latest available release. - Require cryptographic hashes, such as through a hash-locked requirements file using
pip --require-hashes. - Provide a verified official source repository and document package publisher ownership and release provenance.
- Include the relevant source code in the project, or otherwise make it available for security review before execution.
- Use a lockfile and a controlled package index or allowlist to reduce dependency-confusion and account-compromise risks.
- Install and execute the CLI in an isolated virtual environment or sandbox with minimal filesystem and network permissions.
- Prevent installation scripts from receiving API credentials. Expose credentials only at runtime and only to the component that requires them.
- Document integrity-verification and dependency-update review procedures.
- Pin
