T08 · Insecure Dependencies
- Location
runtime/hkipo-next/pyproject.toml:10- Finding
Unlocked Dependency Resolution Permits Unreviewed Supply-Chain Code
- Content
View full analysis
=4.14.3", "httpx>=0.28.1", "lxml>=6.0.4", "opencc-python-reimplemented>=0.1.7", "pydantic>=2.13.0", "requests>=2.33.1", ] ``` ### Technical Analysis All runtime dependencies use minimum-version constraints without upper bounds or exact pins. The distributed project also has no dependency lockfile. Consequently, the documented `uv run` workflow can resolve dependency versions released after this artifact was audited. This creates a supply-chain trust gap: reviewed source code does not uniquely determine the code that will execute. If a dependency publisher account, upstream release process, or transitive dependency is compromised, a malicious version satisfying these constraints may be selected. Source distributions may execute build backend code during installation, while installed packages execute code when imported or used by the CLI. The issue does not demonstrate that any currently named package is malicious. The vulnerability is the inability to reproduce and enforce the reviewed dependency set. ### Attack Path 1. An attacker compromises a direct or transitive dependency publisher, or otherwise causes a malicious future version to be published. 2. The malicious version satisfies one of the project's open-ended `>=` constraints. 3. A user follows the documented workflow and runs the Skill through `uv run`. 4. Because no reviewed lockfile constrains resolution, `uv` selects and installs the malicious version. 5. Malicious code executes during package building, import, or normal runtime use. 6. That code operates with the privileges of the user invoking the Skill and can access resources available to that account. ### Impact Assessment Successful exploitation could pro ...[truncated 573 chars]- Remediation
View remediation
