T08 · Insecure Dependencies
- Location
SKILL.md:128- Finding
Unpinned Third-Party Package Installation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 128–133; repeated at lines 253–259
Vulnerability Type: Unpinned and unverified third-party dependency installation
Risk Level: MediumVulnerable Code Snippet:
bash # pip installation pip install -U llm-provider-whisper # Verify installation whisper --helpThe same installation command is repeated in the dependency table:
markdown | llm-provider-whisper | Python library | Required | `pip install -U llm-provider-whisper` |Technical Analysis
The Skill directs the agent or user to install the latest available release of
llm-provider-whisperby usingpip install -U. It does not specify an exact reviewed version, provide cryptographic hashes, lock transitive dependencies, identify an authoritative source repository, or require package-integrity verification.Because the
-Uoption resolves a mutable latest version, the effective code installed in the future can differ from the code present when this Skill was audited. Python packages and their transitive dependencies may execute installation or runtime code with the permissions of the account invokingpip. This creates a supply-chain exposure if the package, its distribution account, package namespace, or any dependency is compromised.The finding is reinforced by the Skill's declared
execcapability, which allows the documented installation command to form part of its effective behavior. This audit did not establish that the named package is currently malicious; the vulnerability is the unsafe and non-reproducible dependency acquisition procedure.Attack Path
- An agent or user follows the Skill's documented setup instructions.
- The command
pip install -U llm-provider-whisperqueries the configured Python package index and selects the latest compatible package and dependencies. - An attacker compromises a package publishing account, dependency, distribu ...[truncated 1021 chars]
- Remediation
View remediation
Remediation Suggestions
- Replace the mutable upgrade command with an exact, reviewed version:
bash python -m pip install "llm-provider-whisper==<reviewed-version>" - Publish a lock file containing all direct and transitive dependency versions.
- Provide SHA-256 hashes for every distribution and require hash validation:
bash python -m pip install --require-hashes -r requirements.txt - Document the package's authoritative registry entry and source repository so users can detect namespace confusion or impersonation.
- Install the package in a dedicated virtual environment under a non-privileged account rather than using an elevated or system-wide Python environment.
- Remove
-Ufrom routine installation instructions and require a new security review before changing the pinned version. - Verify downloaded model artifacts with publisher-provided cryptographic checksums or signatures before placing them in the local model cache.
- Replace the mutable upgrade command with an exact, reviewed version:
