Back to skill

Security audit

全能生成 Generate

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed wrapper for dLazy media generation, with expected cloud uploads and credential use but no evidence of hidden or destructive behavior in the inspected artifacts.

Install only if you are comfortable running the external dLazy npm CLI, sending prompts and selected media files to dLazy services, and possibly incurring account charges. Prefer per-run DLAZY_API_KEY or an isolated environment if you do not want credentials persisted in the user config.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:5
Finding
Third-Party CLI Is Downloaded and Executed Without Local Integrity Verification<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:5, 69-72`; mirrored configuration in `SKILL-cn.md:5, 69-72` **Vulnerability Type**: Third-party dependency and supply-chain exposure **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":"When this skill is called, use dlazy <subcommand>."}} ``` ```bash npx @dlazy/cli@1.2.3 <command> ``` ```text 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. ``` ### Technical Analysis The Skill delegates its operational behavior to the external npm package `@dlazy/cli@1.2.3`. The package is not included in the audited project, and the project does not provide a lockfile, vendored source, package archive, or independently verified integrity digest. Version pinning reduces unintentional version drift, but it does not independently establish the integrity or safety of the package retrieved from the npm registry. Both documented installation mechanisms execute externally supplied code: - `npx @dlazy/cli@1.2.3` can download and execute the package on demand. - `npm install -g @dlazy/cli@1.2.3` installs the executable globally for the current environment. - npm lifecycle scripts, if present in the external package or its transitive dependencies, may run during installation. - The CLI subsequently receives access to the configured dLazy API key, user-supplied local media files, and network endpoints. The project documentati ...[truncated 2023 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. **Vendor and audit the dependency** - Include the required CLI implementation or a reviewed package archive in a controlled release process. - Audit the exact source revision and all transitive dependencies before distribution. 2. **Verify artifact integrity** - Record and enforce the npm artifact's cryptographic integrity value. - Bind the reviewed source commit to the distributed npm package using reproducible builds, signed provenance, and package attestations. - Verify signatures or attestations before installation and execution. 3. **Avoid global installation** - Prefer an isolated, ephemeral execution environment over `npm install -g`. - Prevent the package from modifying persistent user-level command paths unless explicitly approved by the user. 4. **Restrict installation behavior** - Disable npm lifecycle scripts where compatible, such as by using `--ignore-scripts`. - Use a private allowlisted registry or verified package mirror. - Apply dependency lockfiles and automated vulnerability scanning to the complete dependency graph. 5. **Sandbox runtime access** - Run the CLI with access only to explicitly selected input files. - Restrict outbound network traffic to documented and approved endpoints. - Prevent access to unrelated home-directory files, credentials, SSH material, browser profiles, and other secrets. 6. **Protect credentials** - Store API credentials through an operating-system credential manager where possible. - Use narrowly scoped, revocable credentials and avoid exposing them to installation scripts. - Document credential rotation procedures for suspected package compromise. 7. **Make external execution explicit** - Require user confirmation before downloading, globally installing, or executing the third-party package. - Clearly identify the external code boundary and disclose that the dependency itself is outside the Skill package's audit scope ...[truncated 5 chars]
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Rogue AgentSelf-Modification, Session Persistence
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (8)

Ae1

High
Category
analysis-evasion
Content
[English](./SKILL.md) · [中文](./SKILL-cn.md)
Confidence
100% confidence
Finding
Referenced artifact was not completely inspected

Natural-Language Policy Violations

Medium
Confidence
85% confidence
Finding
文件主体以中文呈现,且标题与内容未说明这是仅面向中文用户的区域性版本,也未在技能指令中提供语言选择或根据用户偏好切换语言的机制。按照语言/地区策略,若技能对输出语言作出固定约束而无用户选择,可能构成自然语言政策问题。

Vague Triggers

Medium
Confidence
96% confidence
Finding
The trigger keywords are overly broad terms like '生成' and '创建图片、视频、音频', which can overlap with ordinary user conversation and cause the skill to activate unexpectedly. In this skill, accidental activation is more concerning because activation may lead to networked CLI execution, API usage, file uploads, and billable remote generation requests.

Whitespace Padding

Medium
Category
Prompt Injection
Content
## 错误处理

| Code | 错误类型                         | 示例信息                                                                                                                 |
| ---- | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| 401  | 未授权 (API Key缺失或无效)       | `ok: false, code: "unauthorized", message: "API key is missing or invalid"`                                                              |
| 501  | 缺少必填参数                     | `error: required option '--prompt <prompt>' not specified`                                                               |
Confidence
70% confidence
Finding
Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Vague Triggers

Medium
Confidence
96% confidence
Finding
The trigger keywords are extremely broad for a skill that can invoke networked generation actions and upload local media to remote services. Broad matching increases the chance the agent will select this skill for ordinary requests and initiate privacy-impacting or billable operations without sufficiently explicit user intent.

Session Persistence

Medium
Category
Rogue Agent
Content
## Trigger Keywords

- generate
- create image, video, audio
- multimodal generation

## Authentication
Confidence
85% confidence
Finding
The skill promotes persistent authentication via `dlazy login` and explicitly states that the API key is automatically saved to local CLI config, creating session persistence on the host. In an agent-executed environment, persisted credentials can be reused by later runs or other skills, expanding blast radius if the environment is shared, long-lived, or insufficiently isolated.

Missing User Warnings

Medium
Confidence
97% confidence
Finding
The skill explicitly instructs the agent to run `dlazy` commands after choosing a model, but does not require an immediate warning or consent checkpoint at the execution step. This is dangerous because the command sends user prompts to `api.dlazy.com` and may upload referenced local files to `files.dlazy.com`, creating privacy, data exfiltration, and cost risks.

Whitespace Padding

Medium
Category
Prompt Injection
Content
## Error Handling

| Code | Error Type                         | Example Message                                                                                                          |
| ---- | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| 401  | Unauthorized (No API Key)          | `ok: false, code: "unauthorized", message: "API key is missing or invalid"`                                                              |
| 501  | Missing required parameter         | `error: required option '--prompt <prompt>' not specified`                                                              |
Confidence
70% confidence
Finding
Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Static analysis

No suspicious patterns detected.