T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:39
- Finding
- Unpinned Third-Party Package Is Installed and Immediately Executed<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, line 39 **Vulnerability Type**: Supply-chain risk from an unpinned dependency **Risk Level**: Medium ### Vulnerable Code ```bash pip install tidepool && tidepool quickstart ``` Related package metadata at `SKILL.md`, lines 12-15: ```yaml kind: uv package: tidepool bins: - tidepool ``` ### Technical Analysis The Skill instructs users or autonomous agents to install the latest available release of the third-party `tidepool` package without a fixed version or integrity hash. It then immediately executes the installed `tidepool` CLI. Package installation may run package-controlled build or installation logic, while `tidepool quickstart` directly executes code supplied by the installed package. Because no version constraint, lockfile, artifact hash, or publisher-verification procedure is provided, the effective code can change after this Skill has been reviewed. This does not establish that the current package is malicious. The vulnerability is the absence of controls that would protect users if the package registry account, publishing process, dependency chain, or a future release were compromised. The separately flagged command at line 31 is not remote payload execution: ```bash curl -s https://tidepool.sh/api | python3 -m json.tool ``` It parses the response as JSON rather than executing it as shell or Python code, and the command does not transmit local sensitive information. ### Attack Path 1. An attacker compromises the package publisher, registry account, release pipeline, or an indirect dependency used by a future `tidepool` release. 2. The attacker publishes a malicious package version under the expected package name. 3. A user or autonomous agent follows the Skill instructions and runs `pip install tidepool`. 4. The package manager selects the attacker-controlled release because the command does not pin a reviewed version or verify an artifact hash. 5. Malicious code executes d ...[truncated 1080 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Pin the CLI to a specific reviewed version, for example: ```bash python3 -m pip install "tidepool==<reviewed-version>" ``` 2. Verify package artifacts with cryptographic hashes through a locked requirements file: ```text tidepool==<reviewed-version> --hash=sha256:<verified-hash> ``` Install it with: ```bash python3 -m pip install --require-hashes -r requirements.txt ``` 3. Document the canonical package registry, verified publisher identity, source repository, and release-signing process. 4. Separate installation and execution rather than chaining them with `&&`. This allows the package version, origin, files, and signatures to be inspected before running the CLI. 5. Use an isolated virtual environment or disposable container with only the filesystem and credentials required for the task. 6. Review dependency changes before upgrading the pinned version, and use automated dependency and provenance scanning in the release process. 7. Do not expose production secrets or deployment credentials during installation or initial verification. Grant them only when a reviewed operation specifically requires them. ]]>
