T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:4
- Finding
- Unaudited External npm Package Is Installed and Executed## Vulnerability Details **File Location**: `SKILL.md:4,47-53`; equivalent instructions appear in `SKILL-cn.md:4,47-53` **Vulnerability Type**: Third-party dependency and software supply-chain risk **Risk Level**: Medium ### Vulnerable Code `SKILL.md:4`: ```yaml metadata: {"clawdbot":{"emoji":"🤖","requires":{"bins":["npm","npx"]},"install":"npm install -g @dlazy/cli@1.2.3","installAlternative":"npx @dlazy/cli@1.2.3","homepage":"https://github.com/dlazy-ai/cli","source":"https://github.com/dlazy-ai/cli","author":"dlazyai","license":"see-repo","npm":"https://www.npmjs.com/package/@dlazy/cli","configLocation":"~/.dlazy/config.json","apiEndpoints":["api.dlazy.com","files.dlazy.com"]},"openclaw":{"systemPrompt":"When invoking this skill, use dlazy video-replicate -h for help."}} ``` `SKILL.md:47-53`: ```markdown You can install on demand without persisting a global binary by running: ```bash npx @dlazy/cli@1.2.3 <command> ``` Or, if you prefer a global install, the skill's `metadata.clawdbot.install` field declares the exact pinned version (`npm install -g @dlazy/cli@1.2.3`). Review the GitHub source before installing. ``` The Chinese documentation contains the same executable dependency declarations at `SKILL-cn.md:4,47-53`. ### Technical Analysis The project contains documentation only and delegates all operational behavior to the externally distributed npm package `@dlazy/cli@1.2.3`. Both supported installation methods retrieve and execute an artifact from the npm registry: - `npm install -g @dlazy/cli@1.2.3` - `npx @dlazy/cli@1.2.3` Pinning the version reduces exposure to unexpected future package updates, but the project does not include the package source, a lockfile with a registry integrity digest, a signed artifact, or other evidence allowing the downloaded package to be matched conclusively to the linked GitHub repository. The audited files therefore do not permit verification of npm lifecycle s ...[truncated 1945 chars]
- Remediation
- ## Remediation Suggestions 1. Bundle the reviewed CLI source or a reproducible, independently verifiable artifact with the Skill so its effective implementation can be audited. 2. Record and validate the npm artifact's exact integrity digest rather than relying only on a semantic version. 3. Publish provenance attestations and signatures, and verify them before installation or execution. 4. Use a lockfile or equivalent manifest that pins the complete transitive dependency graph and includes integrity values. 5. Disable npm lifecycle scripts where compatible, such as with `--ignore-scripts`, or document and audit every required lifecycle script. 6. Execute the CLI in a sandbox with access restricted to explicitly selected media files, a dedicated output directory, and only the required API domains. 7. Use a dedicated, least-privileged service credential that can be rotated or revoked, rather than exposing unrelated user credentials to the process. 8. Avoid privileged or administrator-level global installation. Prefer an isolated execution environment with a dedicated package cache and operating-system account. 9. Add automated dependency and provenance checks to release workflows and periodically compare the npm package contents against the referenced source repository.
