T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:107
- Finding
- Unpinned Python Dependency Installation## Vulnerability Details **File Location**: `SKILL.md`, lines 107-109 **Vulnerability Type**: Unpinned third-party dependency **Risk Level**: Medium ```bash pip install python-docx ``` ### Technical Analysis The installation guidance retrieves the latest available `python-docx` release without an exact version, lockfile, package hash, or integrity-verification procedure. Consequently, the dependency resolved at installation time may differ from the version originally reviewed. Python package installation can execute package build or installation logic under the privileges of the invoking user. If the package distribution, publisher account, dependency chain, or configured package index is compromised, following this command could introduce attacker-controlled code. The dependency is not used by any of the included examples, so it also creates unnecessary supply-chain exposure. ### Attack Path 1. An attacker compromises a relevant package release, dependency, publisher account, or package source used by the victim. 2. A user follows the documented `pip install python-docx` instruction. 3. `pip` resolves the mutable package version available at that time. 4. Malicious build or installation logic executes with the permissions of the invoking user. 5. The installed package may subsequently execute malicious logic when imported or otherwise used. ### Impact Assessment Successful exploitation could provide code execution with the privileges of the user running `pip`. This may expose that user's files, environment variables, credentials, and accessible application data. If installation is performed from an administrative shell or into a privileged environment, the impact could expand accordingly; however, the documentation does not explicitly require elevated privileges.
- Remediation
- ## Remediation Suggestions - Remove `python-docx` from the installation instructions unless it is required by actual Skill functionality. - Pin the dependency to an explicitly reviewed version. - Use a lockfile or requirements file with cryptographic hashes, such as `pip install --require-hashes -r requirements.txt`. - Install dependencies inside an isolated virtual environment rather than a system-wide Python environment. - Document the expected package registry and verify package publisher and provenance information. - Add automated dependency and vulnerability scanning for all retained third-party packages.
