T08 · Insecure Dependencies
Warning
- Location
- _meta.json:7
- Finding
- Unpinned Third-Party Dependency Allows Mutable Installation Behavior<![CDATA[ ## Vulnerability Details **File Location**: `_meta.json`, lines 7–10 **Vulnerability Type**: Unpinned third-party package dependency **Risk Level**: Medium ### Vulnerable Code ```json "install": [ {"id": "psutil", "kind": "pip", "package": "psutil"} ] ``` ### Technical Analysis The installation metadata requests the `psutil` package without specifying an exact version or an integrity hash. Consequently, separate installations of the same reviewed Skill may resolve to different package releases. This makes the code ultimately installed and executed dependent on the state and trustworthiness of the configured Python package index at installation time. No evidence indicates that the current `psutil` package is malicious. The risk arises from mutable dependency resolution: a compromised package release, package-index compromise, or unexpectedly incompatible future version could introduce code that was not included in this audit. Python packages may execute package-controlled build or installation logic during installation and are subsequently imported by `scripts/health.py`. ### Attack Path 1. An attacker compromises the upstream package distribution channel or publishes a malicious future release through a compromised maintainer account. 2. A user installs the Skill after that release becomes the version selected by the package resolver. 3. Because `_meta.json` provides no exact version or hash, the installer retrieves the changed package without detecting that it differs from the dependency reviewed previously. 4. Package-controlled installation logic may execute during installation, and package code executes when `scripts/health.py` imports `psutil`. 5. The malicious dependency operates with the privileges of the account installing or running the Skill. This path requires compromise or abuse of the dependency supply chain; the audited project itself does not retrieve arbitrary remote scripts or contain an observed malicious payload. ### Imp ...[truncated 403 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions - Pin `psutil` to an exact, reviewed version rather than allowing unconstrained resolution. - Maintain dependencies in a lock file or hash-verified requirements file using hashes generated from trusted artifacts. - Configure installation to use an approved package index and, where practical, an internally mirrored repository. - Review dependency updates before changing the pinned version and rerun security and compatibility checks. - Use isolated virtual environments and install dependencies with the minimum privileges required. - Consider generating and retaining a software bill of materials so deployed dependency versions can be verified and monitored. ]]>
