T08 · Insecure Dependencies
- Location
SKILL.md:51- Finding
Unpinned Third-Party Dependencies Create Supply-Chain Exposure
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 51-56
Vulnerability Type: Unpinned dependency installation
Risk Level: MediumVulnerable Code:
bash pip install pymupdf rapidocr-onnxruntimeTechnical Analysis
The Skill directs the agent to install
pymupdfandrapidocr-onnxruntimewithout exact version constraints, integrity hashes, a lock file, or an explicitly trusted package index. Consequently, the installed code may differ from the code that existed when the Skill was audited.Python packages can execute package-controlled installation or build logic and subsequently run inside the PDF conversion process. If a dependency, transitive dependency, release account, or configured package index is compromised, following this instruction could introduce attacker-controlled code. The instruction does not itself prove that either named package is malicious; the vulnerability is the mutable and unverified dependency resolution process.
Attack Path
- A user invokes the Skill to download and convert a document.
- The required Python packages are unavailable in the current environment.
- The agent follows the documented prerequisite and runs the unpinned
pip installcommand. pipresolves the latest available packages and transitive dependencies from its configured index.- A compromised or unexpectedly modified package executes during installation, import, or document processing.
- The package code operates with the privileges of the account running the agent.
Impact Assessment
Successful supply-chain exploitation could execute arbitrary code with the invoking user's privileges. This may expose files, environment variables, credentials available to that account, and data processed by the Skill. It could also modify user-accessible files or make unauthorized network requests. The issue does not independently grant administrative privileges unless the installation is ...[truncated 43 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin every direct and transitive dependency to a reviewed exact version.
- Store dependencies in a lock file or hash-checked requirements file.
- Install with hash verification, for example through
pip install --require-hashes. - Specify and enforce an approved package index rather than inheriting an arbitrary local pip configuration.
- Install dependencies inside an isolated virtual environment with the minimum required permissions.
- Scan pinned artifacts for known vulnerabilities and review updates before changing versions.
- Prefer prebuilt, verified artifacts and document their expected hashes.
