T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:17
- Finding
- Unpinned npm Package Execution Through npx## Vulnerability Details **File Locations**: - `SKILL.md:17-21` - `README.md:30-35` **Vulnerability Type**: Execution of a mutable third-party dependency during installation **Risk Level**: Medium **Vulnerable Code Snippets**: `SKILL.md:17-21` ```markdown ### OpenClaw / Moltbot / Clawbot ```bash npx clawhub@latest install startup-metrics ``` ``` `README.md:30-35` ```markdown ### OpenClaw / Moltbot / Clawbot ```bash npx clawhub@latest install startup-metrics ``` ``` ### Technical Analysis The documented installation procedure invokes `clawhub@latest` through `npx`. The `latest` npm distribution tag is mutable and does not identify an immutable, previously audited package version. `npx` may download and execute the selected package, including its CLI implementation and applicable npm lifecycle behavior, with the permissions of the user performing the installation. Consequently, the code ultimately executed by this command can change after the skill itself has been reviewed. The project does not provide a fixed version, lockfile, integrity digest, signature, or other mechanism that allows users to verify that they are executing the same package that was originally intended. This is a supply-chain exposure rather than evidence that the current `clawhub` package is malicious. ### Attack Path 1. An attacker compromises the npm publisher account, package release process, registry entry, or another relevant upstream component. 2. The attacker publishes a malicious version and assigns it to the `latest` distribution tag. 3. A user follows the documented `npx clawhub@latest install startup-metrics` instruction. 4. `npx` retrieves the attacker-controlled release. 5. The downloaded CLI or associated package behavior executes with the installing user's privileges. 6. The payload can access or modify resources available to that user. ### Impact Assessment Successful exploitation could provide arbi ...[truncated 548 chars]
- Remediation
- ## Remediation Suggestions 1. Replace `@latest` with a specifically reviewed package version, for example `clawhub@X.Y.Z`. 2. Prefer an immutable package reference and verify the expected npm integrity digest before execution. 3. Document the trusted publisher, expected version, and checksum or signature. 4. Use lockfiles where the installation workflow supports them. 5. Test updates in an isolated environment and review package provenance before changing the pinned version. 6. Keep `SKILL.md` and `README.md` synchronized so neither reintroduces an unpinned installation command. 7. Advise users not to run the installer with elevated privileges.
