T08 · Insecure Dependencies
- Location
SKILL.md:120- Finding
Unpinned Third-Party Dependency Installation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 120
Vulnerability Type: Unpinned and unverified Python dependency installation
Risk Level: MediumVulnerable Code
bash pip install vllmTechnical Analysis
The deployment guide instructs users to install
vllmwithout specifying an reviewed version, cryptographic hashes, a lockfile, or a trusted package index. Consequently, the package and its transitive dependencies are resolved from mutable repository state at installation time.Python package installation may execute package-controlled build or installation logic. If the package repository, a future package release, the configured index, or a transitive dependency is compromised, following this instruction could execute attacker-controlled code. The project contains no evidence that the current
vllmpackage is malicious; this finding concerns avoidable supply-chain exposure created by the installation method.Attack Path
- An attacker compromises a future release of
vllm, one of its transitive dependencies, or a package index used by the victim. - A user follows the documented deployment instruction and runs
pip install vllm. pipresolves the latest compatible packages from the mutable index without validating project-approved versions or hashes.- Malicious build, installation, or imported runtime code executes in the user's environment.
- The payload operates with the privileges and access available to the account that invoked
pip.
Impact Assessment
Successful exploitation could permit arbitrary code execution with the invoking user's privileges. Depending on the installation context, this could expose local files, API credentials, model data, environment variables, and accessible network services. If installation is performed by an administrator or inside a privileged production environment, the impact may extend to system-level compromise or compromise of the deployed inference service.
- An attacker compromises a future release of
- Remediation
View remediation
Remediation Suggestions
- Pin
vllmto a reviewed, explicitly approved version instead of resolving the latest release. - Use a requirements or lock file that also constrains transitive dependencies.
- Generate and verify cryptographic hashes, such as with
pip install --require-hashes -r requirements.txt. - Explicitly configure a trusted package index and avoid unreviewed extra indexes.
- Recommend installation inside a dedicated virtual environment or container under a non-privileged account.
- Add a dependency update process that includes vulnerability scanning, provenance review, and testing before changing pinned versions.
For example:
bash python -m venv .venv . .venv/bin/activate python -m pip install --require-hashes -r requirements.txtThe corresponding
requirements.txtshould contain an approved version and its verified hashes.- Pin
