T08 · Insecure Dependencies
- Location
requirements.txt:1- Finding
Mutable Python Dependencies and Unverified Chromium Binary Installation
- Content
View full analysis
=10.0,<13 playwright>=1.50,<2 PyMuPDF>=1.24,<2 PyYAML>=6.0,<7 ``` From `SKILL.md:96-97`: ```bash python -m pip install -r requirements.txt python -m playwright install chromium ``` ### Technical Analysis The installation instructions cause Python packages and a Chromium executable to be obtained from external package infrastructure. The dependencies use broad version ranges rather than exact versions, and no cryptographic hashes are supplied. Consequently, two installations of the same Skill version may resolve to different package artifacts. Python package installation can execute package build or installation logic with the privileges of the user running `pip`. The Playwright command also downloads and installs a native Chromium executable. If an upstream package release, package index, transitive dependency, browser artifact, or distribution channel is compromised, malicious code could execute locally during installation or later when the imported package or browser is launched. The dependencies and Chromium browser are functionally relevant to document processing, static-reference rendering, and browser QA. The issue is therefore not that these components are unnecessary, but that their identities and integrity are insufficiently constrained. No evidence was found that the Skill intentionally retrieves a malicious package or browser. This finding concerns supply-chain exposure and non-reproducible installation. ### Attack Path 1. An attacker compromises an eligible future release of one of the declared packages, a transitive dependency, the configured package index, or the Playwright browser distribution channel. 2. A user follows the installation instructions in `SKIL ...[truncated 1176 chars]- Remediation
View remediation
