T08 · Insecure Dependencies
- Location
SKILL.md:69- Finding
Unpinned Third-Party Dependency Installation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 69–70
Vulnerability Type:T08: Insecure Dependencies
Risk Level: MediumVulnerable Code:
text - If `openpyxl` not installed: `pip install openpyxl` - If `xlsxwriter` not installed: `pip install xlsxwriter`Technical Analysis
The Skill instructs the agent to install third-party Python packages without exact version constraints, integrity hashes, an explicitly approved package index, or user confirmation. Consequently, package contents and transitive dependencies can vary between executions.
Python package installation can execute package build and installation logic. If a package source, release, dependency, or configured package index is compromised or substituted, attacker-controlled code could execute during installation. The absence of a lock file and hash verification prevents the installer from confirming that the resolved artifacts are the versions reviewed and approved by the project.
Attack Path
- A user invokes the Excel Builder Skill in an environment where
openpyxlorxlsxwriteris unavailable. - The agent follows the documented error-handling instruction and executes the corresponding unpinned
pip installcommand. pipresolves the current package release and its transitive dependencies through the environment's configured package index.- A compromised index, package release, or transitive dependency supplies malicious installation or runtime code.
- The malicious code executes with the privileges of the account running
pipand may subsequently run again when the installed library is imported.
Impact Assessment
Successful exploitation could provide arbitrary code execution under the privileges of the agent or user performing the installation. The affected scope may include files, environment variables, credentials, network resources, and services accessible to that account. If installation is perfo ...[truncated 184 chars]
- A user invokes the Excel Builder Skill in an environment where
- Remediation
View remediation
Remediation Suggestions
- Remove automatic or implicit dependency installation instructions from the Skill workflow.
- Require explicit user approval before installing any package.
- Define reviewed dependencies in a lock file or requirements file using exact versions.
- Record and enforce cryptographic hashes for all direct and transitive dependency artifacts.
- Install with a command such as
python -m pip install --require-hashes -r requirements.txt. - Configure an approved package index and disable unintended fallback indexes.
- Perform installation inside a dedicated, least-privileged virtual environment or isolated container.
- Periodically scan and update locked dependencies through a controlled review process.
