T08 · Insecure Dependencies
- Location
SKILL.md:19- Finding
Unpinned dependencies installed into the system-managed Python environment
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 19–22
Vulnerability Type: Supply-chain exposure and unsafe system package modification
Risk Level: MediumVulnerable Code
bash pip install undetected-chromedriver selenium pandas numpy pyarrow --break-system-packagesTechnical Analysis
The installation instructions specify mutable package names without exact versions or cryptographic hashes. Consequently, the packages installed at a later date may differ from those reviewed during this audit. Package installation can execute package-controlled build or installation logic with the permissions of the invoking user.
The
--break-system-packagesoption also bypasses the protection that normally preventspipfrom modifying a distribution-managed Python environment. This can overwrite or conflict with operating-system-managed libraries and increase the blast radius beyond an isolated project environment.No evidence was found that the named packages are currently malicious. The vulnerability is the unsafe and non-reproducible dependency installation process.
Attack Path
- A user follows the dependency installation command in
SKILL.md. pipresolves mutable package releases from the configured package index.- A compromised upstream release, package-index account, mirror, or dependency in the transitive dependency graph supplies malicious installation or runtime code.
- The malicious package code executes with the permissions of the user running
pip. - Because
--break-system-packagesis enabled, installation can also alter the system-managed Python environment and affect unrelated Python applications.
Impact Assessment
Successful exploitation could execute arbitrary code with the invoking user's privileges. This may permit access to that user's files, environment variables, browser data, and network resources. If the installation command is run with elevated privi ...[truncated 234 chars]
- A user follows the dependency installation command in
- Remediation
View remediation
Remediation Suggestions
- Remove
--break-system-packagesfrom the documented installation command. - Require installation in an isolated virtual environment:
bash python3 -m venv .venv . .venv/bin/activate python -m pip install --upgrade pip python -m pip install --require-hashes -r requirements.txt - Pin every direct and transitive dependency to a reviewed exact version.
- Add hashes for all permitted distributions and install with
--require-hashes. - Generate and commit a reproducible lock file using a dependency-locking tool.
- Regularly scan locked dependencies for known vulnerabilities and review dependency updates before adoption.
- Advise users not to run dependency installation as root or through
sudo.
- Remove
