T08 · Insecure Dependencies
- Location
SKILL.md:62- Finding
Unpinned Third-Party Dependency Installation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 62
Vulnerability Type: Unpinned package installation from a mutable package repository
Risk Level: LowVulnerable Code
bash pip install requestsTechnical Analysis
The installation instructions retrieve the latest available version of
requestsand its transitive dependencies from the package index configured in the user's environment. No reviewed version, lock file, package hash, or trusted index is specified.Because dependency resolution is mutable, the code installed by this command may differ between installations. Exploitation would require a supply-chain compromise, such as compromise of a relevant package release or dependency, control of the configured package index, or package-resolution manipulation. A malicious package could execute code during package build or installation, or when imported by
scripts/skill_router.py.This finding does not establish that the legitimate
requestspackage is malicious. It identifies the absence of controls that ensure users install the same reviewed dependency artifacts.Attack Path
- An attacker compromises a resolved package release or a package index configured in the victim's Python environment.
- A user follows the documented setup instruction and runs
pip install requests. - Pip resolves and downloads the attacker-controlled or modified package because the documentation does not constrain versions, hashes, or the package source.
- Malicious code executes during package installation, wheel or source build processing, or subsequent import.
- The code runs with the privileges of the user or automation account performing the installation or invoking the skill.
Impact Assessment
Successful exploitation could permit arbitrary code execution within the installing user's security context. The attacker could potentially access files, environment variables such as
API_KEY, and network resources available to ...[truncated 390 chars]- Remediation
View remediation
Remediation Suggestions
- Pin reviewed direct and transitive dependency versions in a requirements or lock file.
- Record cryptographic hashes for every permitted distribution and install with hash enforcement:
bash python -m pip install --require-hashes -r requirements.txt - Generate the lock file through a controlled dependency-review process and update it only after security and compatibility testing.
- Use an explicitly approved package index or internal package mirror rather than relying on arbitrary user-level pip configuration.
- Prefer prebuilt, reviewed wheels and disable unexpected source builds where operationally practical.
- Run installation and skill execution in a dedicated virtual environment or container with minimal filesystem, credential, and network access.
- Add automated dependency vulnerability and integrity scanning to the release process.
