T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:19
- Finding
- Automatic Installation of Unpinned Third-Party Dependencies## Vulnerability Details **File Location**: `SKILL.md:19-38`; duplicated in `references/query_rules.md:14-18` and `references/technical_specs.md:3-9` **Vulnerability Type**: Supply-chain exposure through automatic, unpinned dependency installation **Risk Level**: Medium **Vulnerable commands:** ```bash agent-browser --version npm install -g agent-browser python -c "import docx" pip install python-docx ``` ### Technical Analysis The Skill instructs the agent to install the latest available versions of `agent-browser` and `python-docx` automatically when they are not already present. It does not specify approved versions, package hashes, lockfiles, trusted registry configuration, or package-signature verification. The `agent-browser` package is installed globally with npm. Global installation expands the affected environment beyond this Skill and may execute npm package lifecycle scripts with all privileges held by the invoking user. The Python package is also installed into whichever environment the unqualified `pip` command selects. This does not establish that either named dependency is currently malicious. The vulnerability is that the Skill automatically trusts mutable third-party releases without integrity controls or explicit user approval. ### Attack Path 1. An attacker compromises the relevant package registry account, publishing pipeline, package distribution infrastructure, or a future dependency release. 2. The attacker publishes a package version containing malicious installation or runtime behavior. 3. A user invokes the Skill in an environment where the dependency is absent. 4. Following `SKILL.md` and `references/technical_specs.md`, the agent runs the unpinned installation command. 5. The package manager downloads the current compromised release. 6. Malicious package lifecycle or runtime code executes with the permissions of the user running the agent. ### Impact Assessment Successful exploit ...[truncated 657 chars]
- Remediation
- ## Remediation Suggestions 1. Pin every dependency to a specifically reviewed version rather than installing the latest release. 2. Maintain lockfiles and verify package integrity with registry-provided hashes or an internal artifact manifest. 3. Install Python dependencies into a dedicated virtual environment using `python -m pip`, not an ambiguous global `pip` executable. 4. Install npm dependencies locally in an isolated project directory rather than using `npm install -g`. 5. Disable or carefully review npm lifecycle scripts where operationally possible. 6. Configure approved registries explicitly and prevent dependency resolution from untrusted mirrors or indexes. 7. Require explicit user confirmation before modifying the environment. 8. Prefer a prebuilt, reviewed runtime image containing the required dependency versions. 9. Periodically audit pinned packages and update them through a controlled review process.
