T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:30
- Finding
- Unpinned Third-Party Skill Installation Creates a Supply-Chain Risk## Vulnerability Details **File Location**: `SKILL.md`, lines 30-41 **Vulnerability Type**: Unpinned and unverifiable third-party dependencies **Risk Level**: Medium ### Vulnerable Code ```bash openclaw install leegitw/constraint-engine ``` **Dependencies**: `leegitw/failure-memory` (for eligibility data) ```bash # Install with dependencies openclaw install leegitw/context-verifier openclaw install leegitw/failure-memory openclaw install leegitw/constraint-engine ``` ### Technical Analysis The installation instructions retrieve third-party skills by mutable package or repository names without specifying immutable versions, commit hashes, cryptographic checksums, or signature-verification requirements. Consequently, the artifacts installed by these commands may differ from those reviewed during this audit. The documented dependency installation procedure also installs `leegitw/context-verifier`, although the dependency declaration identifies only `leegitw/failure-memory` as required. This expands the supply-chain attack surface without clearly documenting why the additional component is necessary. This issue does not prove that the referenced packages are currently malicious. The risk arises because compromise of an upstream account, namespace, repository, release process, or package-resolution mechanism could cause future installations to retrieve altered content. ### Attack Path 1. An attacker compromises an upstream maintainer account, repository, package namespace, or release process associated with one of the referenced skills. 2. The attacker publishes a modified package under the same mutable identifier. 3. A user follows the installation commands in `SKILL.md`. 4. OpenClaw resolves and installs the attacker-controlled package because no immutable version or digest is required. 5. The modified skill is loaded or invoked within the agent environment. 6. Any malicious instructions or executable comp ...[truncated 832 chars]
- Remediation
- ## Remediation Suggestions 1. Pin every referenced skill to an immutable, reviewed version or commit hash rather than installing by a mutable repository identifier. 2. Publish and verify cryptographic checksums or signed provenance for each installed artifact. 3. Configure the installer to reject packages whose signatures, hashes, or expected source repositories cannot be verified. 4. Explicitly declare and justify `leegitw/context-verifier` as a dependency, or remove it from the installation procedure if it is unnecessary. 5. Maintain a lock file or equivalent dependency manifest containing exact resolved versions and integrity hashes. 6. Review dependency updates before changing pinned versions, including transitive dependencies and any bundled executable scripts. 7. Run installed skills with least privilege and restrict filesystem, network, tool, and environment access to reduce the consequences of a compromised dependency.
