T08 · Insecure Dependencies
- Location
SKILL.md:14- Finding
Mutable npm Package Execution Through an Unpinned @latest Version
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:14-18; the same command is also present atREADME.md:25-29
Vulnerability Type: Supply-chain risk caused by execution of an unpinned third-party npm package
Risk Level: MediumComplete Code Snippet:
markdown ### OpenClaw / Moltbot / Clawbot ```bash npx clawhub@latest install realtime-dashboardtext ### Technical Analysis The installation command uses `npx` to retrieve and execute the mutable `latest` release of the third-party `clawhub` npm package. The project does not pin a reviewed package version, provide a lockfile for this command, verify a package integrity hash, or require signature verification. The effective code executed by this instruction can therefore change after this Skill has been reviewed. If the npm package, maintainer account, release process, or a transitive dependency is compromised, following the documented command could execute attacker-controlled package or lifecycle code. This finding concerns the installation instruction rather than embedded project code. The audited project contains only Markdown files and does not itself include a malicious script. ### Attack Path 1. An attacker compromises the `clawhub` npm package, its publishing credentials, or a dependency incorporated into a new release. 2. The compromised release becomes the version resolved by the mutable `@latest` tag. 3. A user follows the installation instruction and runs `npx clawhub@latest install realtime-dashboard`. 4. `npx` downloads and executes the newly resolved package rather than a previously reviewed, immutable version. 5. Malicious package or lifecycle code runs with the permissions and environment of the user who launched the command. ### Impact Assessment Successful exploitation could provide arbitrary code execution under the installing user's account. The accessible scope could include files writable by that user, the current proje ...[truncated 243 chars]- Remediation
View remediation
Remediation Suggestions
- Replace
@latestwith an explicitly reviewed package version. - Prefer a lockfile-backed installation workflow where applicable.
- Verify npm provenance, signatures, and published integrity metadata before execution.
- Document the expected package publisher and checksum so users can verify the artifact.
- Review lifecycle scripts and transitive dependencies for the pinned release.
- Apply the same correction to the duplicate command in
README.md:25-29. - Consider instructing users to download and inspect the package before executing it in a restricted environment.
- Replace
