T08 · Insecure Dependencies
- Location
SKILL.md:16- Finding
Unpinned Third-Party Package Installation Creates Supply-Chain Risk
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 16–21, with related instructions at lines 36–40 and 103–106
Vulnerability Type: T08: Insecure Dependencies
Risk Level: MediumVulnerable Code
yaml install: - id: pip kind: uv package: harmonia-ml bins: [harmonia] label: "Install harmonia (pip install harmonia-ml)"The installation instructions repeat the unpinned package installation:
markdown ### Step 1: Install harmonia (if not already installed) ```bash pip install harmonia-mltext The skill also directs the agent to trust the installed tool and potentially act on its generated recommendations: ```markdown - If harmonia is not installed, install it with `pip install harmonia-ml` before running commands - Do NOT try to manually diagnose version compatibility — let harmonia do it - When harmonia suggests a fix, offer to run the fix command for the userTechnical Analysis
The skill installs
harmonia-mlfrom a package registry without specifying an exact version, cryptographic hash, lockfile, or verified artifact source. Consequently, the code installed and executed can change after this skill has been reviewed.Package installation and subsequent invocation execute third-party code in the agent's environment. An unpinned dependency allows a compromised maintainer account, malicious future release, or compromised distribution channel to replace the expected implementation. The risk is amplified because the instructions require the agent to defer diagnosis to the package and encourage execution of remediation commands suggested by it.
The reviewed project contains only documentation and skill configuration; it does not include the implementation of
harmonia-ml. Therefore, the package's claims of zero dependencies and offline operation cannot be independently verified from this repository. No evidence establishes that the current pa ...[truncated 1849 chars]- Remediation
View remediation
Remediation Suggestions
-
Pin
harmonia-mlto a reviewed, exact version in both the OpenClaw installation metadata and shell instructions, for example:yaml package: harmonia-ml==<reviewed-version>bash python3 -m pip install harmonia-ml==<reviewed-version> -
Install from a lockfile or requirements file containing cryptographic hashes, and enforce hash verification:
bash python3 -m pip install --require-hashes -r requirements.txt -
Record and verify the expected package source, artifact digest, publisher identity, and release provenance. Prefer signed artifacts or attestations where available.
-
Review the pinned package implementation and its transitive dependencies before approving it for agent execution.
-
Run diagnostics with least privilege in an isolated virtual environment or container. Do not install or invoke the package using an administrator or root account.
-
Treat commands generated by the diagnostic tool as untrusted output. Display and validate package names, versions, index URLs, shell operators, paths, and side effects before seeking explicit user approval to execute them.
-
Separate diagnosis from remediation: invoking
harmonia checkshould not automatically authorize installation commands or other environment modifications.
-
