T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:739
- Finding
- Unpinned npm Package Download and Execution via npx## Vulnerability Details **File Location**: `SKILL.md`, line 739 **Vulnerability Type**: Unsafe third-party dependency execution **Risk Level**: Medium ### Vulnerable Code ```bash # Install CLI deadline monitor skill npx openclaw skills add cli-deadline-monitor ``` ### Technical Analysis The installation instructions invoke `openclaw` through `npx` without pinning the package to a reviewed version or verifying its integrity. If the package is unavailable locally, `npx` can retrieve it from the configured npm registry and immediately execute its CLI entry point. This makes the code executed during installation dependent on mutable external registry state rather than the audited project contents. A compromised publisher account, malicious future release, registry substitution, or dependency-chain compromise could therefore cause users to execute attacker-controlled code. The project provides no lockfile, checksum, signature, trusted-publisher verification, or exact version in this command. The repository itself contains only documentation and evaluation fixtures; no malicious package payload was found locally. The risk arises specifically from the documented remote dependency resolution and execution process. ### Attack Path 1. An attacker compromises the `openclaw` npm package, one of its executable dependencies, or the registry resolution path. 2. The attacker publishes or serves a malicious version under the package name resolved by `npx`. 3. A user follows the installation instruction at `SKILL.md:739`. 4. `npx` resolves and downloads the unpinned package. 5. The downloaded package's CLI code or installation lifecycle logic executes with the invoking user's privileges. 6. The malicious code can access resources available to that user, including OpenClaw configuration, environment variables, and local compliance data. ### Impact Assessment Successful exploitation could result in arbitrary code execution with the privileges of the user running the ins ...[truncated 488 chars]
- Remediation
- ## Remediation Suggestions 1. Pin the CLI to an exact reviewed version rather than resolving the latest available package: ```bash npx --yes openclaw@X.Y.Z skills add cli-deadline-monitor ``` 2. Verify that the pinned version is published by the expected maintainer and document the authoritative package name and registry. 3. Use a lockfile and npm integrity metadata in a controlled installation workflow where possible. 4. Prefer a preinstalled, organization-approved OpenClaw binary over download-and-execute behavior during skill setup. 5. Validate package provenance using registry signatures, attestations, or an internal allowlisted package mirror. 6. Review transitive dependencies and lifecycle scripts before approving new versions. 7. Consider disabling lifecycle scripts during installation when compatible: ```bash npm install --ignore-scripts --save-exact openclaw@X.Y.Z ``` 8. Run installation under a dedicated, least-privileged account without access to production credentials or sensitive client data.
