T08 · Insecure Dependencies
Warning
- Location
- README.md:25
- Finding
- Recommended Installation Executes an Unpinned npm Package## Vulnerability Details **File Location**: `README.md:25-28` **Vulnerability Type**: Unpinned executable dependency **Risk Level**: Medium ### Vulnerable Code ```markdown ### From ClawHub (Recommended) ```bash npx clawhub@latest install ivanheral/videogames ``` ``` ### Technical Analysis The recommended installation procedure invokes `npx` with the mutable `latest` npm distribution tag. When this command is run, npm may download and immediately execute a version of `clawhub` that was not included in or evaluated during this audit. Because `latest` can be reassigned to a new package version at any time, the effective installer is not reproducible or cryptographically tied to a reviewed release. Compromise of the npm package, its maintainer account, or its publishing workflow could therefore turn the documented installation command into a remote code-execution vector. This issue concerns the recommended external installer rather than malicious behavior in the bundled Python source. The audited Python files did not contain subprocess execution, embedded malicious payloads, privilege escalation, or unrelated credential access. ### Attack Path 1. An attacker compromises the `clawhub` npm package, a maintainer account, or its release pipeline. 2. The attacker publishes a malicious package version and assigns it the `latest` distribution tag. 3. A user follows the project’s recommended installation instructions. 4. `npx` downloads the attacker-controlled version. 5. The package executes under the installing user’s account and can perform actions allowed by that account before or during Skill installation. ### Impact Assessment Successful exploitation could provide arbitrary code execution with the privileges of the user running the installation command. The accessible scope could include that user’s files, environment variables, OpenClaw configuration, Skill directories, and credentials available to the process. ...[truncated 281 chars]
- Remediation
- ## Remediation Suggestions 1. Replace `@latest` with an explicitly reviewed and immutable package version, for example: ```bash npx clawhub@<reviewed-version> install ivanheral/videogames ``` 2. Document the expected package integrity digest and provide a verification procedure before execution. 3. Pin the installer version in release documentation and update it only after reviewing that exact release. 4. Where practical, separate download and verification from execution rather than relying on automatic `npx` retrieval. 5. Recommend running the installer as an unprivileged user in a restricted environment and never through `sudo`. 6. Consider providing a verified manual installation method based on an immutable commit or signed release archive.
