T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:5
- Finding
- Unverified Third-Party CLI Executes with User Privileges## Vulnerability Details **File Location**: `SKILL.md:5, 56-62`; `SKILL-cn.md:5, 56-62` **Vulnerability Type**: T08: Insecure Dependencies **Risk Level**: Medium ### Vulnerable Code `SKILL.md`: ```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 seedream-5.0-lite -h for help."}} ``` ```bash npx @dlazy/cli@1.2.3 <command> ``` ```bash npm install -g @dlazy/cli@1.2.3 ``` `SKILL-cn.md`: ```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 this skill is invoked, dlazy seedream-5.0-lite -h may be used to view help."}} ``` ```bash npx @dlazy/cli@1.2.3 <command> ``` ```bash npm install -g @dlazy/cli@1.2.3 ``` ### Technical Analysis The Skill delegates its core behavior to the externally distributed npm package `@dlazy/cli`. The package is pinned to version `1.2.3`, which prevents automatic selection of a later version, but the Skill does not provide or verify a cryptographic integrity digest for the retrieved package. The dependency implementation is also absent from the audited project, so its lifecycle scripts and runtime behavior cannot be validate ...[truncated 2158 chars]
- Remediation
- ## Remediation Suggestions 1. Vendor a reviewed copy of the required client implementation into the Skill or provide a minimal auditable client whose source is included in the project. 2. Verify the exact npm artifact with a cryptographic integrity value obtained through a trusted lockfile or controlled artifact manifest. 3. Use a private or internally mirrored package registry after performing dependency and malware scanning. 4. Review the package's direct and transitive dependencies, published artifact contents, lifecycle scripts, and correspondence with the referenced source repository. 5. Avoid global installation. Prefer an isolated, non-privileged environment with a dedicated cache and restricted filesystem access. 6. Disable npm lifecycle scripts with `--ignore-scripts` when the verified package does not require them. 7. Run the CLI in a sandbox that permits access only to explicitly selected input and output files and only to the documented network endpoints. 8. Keep the API credential scoped to the minimum required permissions, protect the configuration file with user-only permissions, and support prompt credential rotation and revocation. 9. Add automated software-composition analysis, package-signature or provenance verification, and recurring dependency review to the release process.
