T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:7
- Finding
- Unverified Third-Party CLI Installation and Execution<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 7 and 45–49 **Vulnerability Type**: T08: Insecure Dependencies **Risk Level**: Medium ### Vulnerable Code ```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":"当你需要使用此技能时,请严格遵循此技能提供的指南进行规划和执行。你可以通过调用 dlazy CLI 的各类生成模型(如 dlazy seedream-4.5 等)来完成实际的图片渲染。注意:Windows PowerShell 中不允许使用 `&` 或 `&&` 进行命令串联或后台运行,请单独且同步地执行命令。"}} ``` ```markdown - **npm package**: `@dlazy/cli` (this Skill's install field is pinned to version `1.0.9`) - **Official website**: [dlazy.com](https://dlazy.com) If you do not want to retain a global CLI on the system, run it on demand: ```bash npx @dlazy/cli@1.2.3 <command> ``` ``` ### Technical Analysis The Skill directs the agent to install or execute the external npm package `@dlazy/cli@1.2.3`. The implementation of that package is not included in the audited project, so its runtime behavior cannot be verified from the supplied files. Although a fixed version reduces dependency drift, the instructions do not require verification through an approved lockfile, package digest, signature, or independently trusted artifact. The global installation command also creates a persistent executable outside the Skill directory. Depending on npm configuration and package contents, package lifecycle scripts and CLI code can execute with the permissions of the user running the agent. There is also a provenance inconsistency: the documentation states that the install field is pinned to `1.0.9`, while both the actual metadata and the `npx` command select `1.2.3`. This discrepancy ca ...[truncated 1438 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Vendor and audit the required CLI implementation, or distribute it through a controlled internal artifact repository. 2. Verify the package using a trusted lockfile and an approved integrity digest before execution. 3. Review the complete transitive dependency tree and monitor it for known vulnerabilities and ownership changes. 4. Prefer a project-local, isolated installation over `npm install -g` to limit persistence and path exposure. 5. Where compatible with the verified package, disable npm lifecycle scripts during installation and explicitly run only audited setup operations. 6. Execute the CLI in a sandbox with minimum filesystem and network access. Expose only the media files explicitly selected by the user. 7. Provide the dLazy credential through a narrowly scoped secret mechanism and prevent unrelated subprocesses from reading it. 8. Correct the provenance documentation so that every version reference consistently identifies `1.2.3`, or update all commands and metadata to the intended reviewed version. 9. Pin any transitive dependencies where possible and establish a controlled process for reviewing package upgrades. ]]>
