T08 · Insecure Dependencies
- Location
SKILL.md:4- Finding
Unpinned Dependencies Installed into the Host Python Environment
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:4
Vulnerability Type:T08: Insecure Dependencies
Risk Level: MediumVulnerable Code:
yaml metadata: {"clawdbot":{"emoji":"📺","requires":{"env":["GEMINI_API_KEY"]},"install":[{"id":"pip-google-ai","kind":"exec","command":"pip install -U google-generativeai requests --break-system-packages","label":"Install dependencies"}]}}Technical Analysis
The installation command retrieves the latest available versions of
google-generativeaiandrequestswithout version constraints or integrity hashes. The-Uoption permits reviewed dependency versions to be replaced by future releases, making installation behavior non-reproducible and expanding supply-chain exposure.The
--break-system-packagesoption bypasses Python distribution safeguards and installs or upgrades packages in the host environment. This exceeds the privileges necessary for the Skill because the dependencies can instead be installed in an isolated virtual environment.There is also a dependency consistency issue: the script imports
google.genai, while the documented installer specifiesgoogle-generativeai. The imported interface is generally supplied by the newergoogle-genaidistribution. Depending on the existing environment, this can cause runtime failure or reliance on an undeclared package.Attack Path
- The Skill installation command runs with access to the host Python environment.
- Pip resolves the latest unpinned package releases from its configured package index.
- A compromised or otherwise unsafe future release can be selected without requiring a change to the audited Skill.
- Package installation or import-time initialization executes code with the privileges of the user running the installation.
- Because system-package protections are bypassed, the installation can also replace dependencies used by unrelated applications.
Impact Assessment
A ...[truncated 541 chars]
- Remediation
View remediation
Remediation Suggestions
- Install dependencies in a dedicated virtual environment rather than using
--break-system-packages. - Remove
-Ufrom routine Skill execution and installation instructions. - Declare the distribution that actually provides
google.genai, and verify it against the script's supported API. - Pin reviewed versions, for example through a locked requirements file.
- Use package hashes with
pip install --require-hasheswhere practical. - Run dependency vulnerability and provenance checks during release preparation.
- Perform installation with an unprivileged account and avoid modifying the host's system Python environment.
- Install dependencies in a dedicated virtual environment rather than using
