Back to skill

Security audit

视频生成 Seedance 2.0

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed dLazy video-generation CLI wrapper with normal cloud API, credential, and npm-package trust considerations.

Before installing, understand that this will run the dLazy npm CLI, store or use a dLazy API key, send prompts and selected media files to dLazy's cloud service, and may consume dLazy credits. Prefer the npx on-demand path if you do not want a persistent global binary, review the linked CLI source/package, and rotate or revoke the API key if you stop using it.

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
Unaudited External npm Package Is Installed and Executed Without Integrity Verification## Vulnerability Details **File Location**: `SKILL.md:5, 54-60`; mirrored in `SKILL-cn.md:5, 53-60` **Vulnerability Type**: Third-party supply-chain exposure **Risk Level**: Medium **Relevant code from `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 seedance-2.0 -h for help."}} ``` ```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. ``` **Equivalent code from `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 invoking this skill, the agent may use dlazy seedance-2.0 -h for help."}} ``` ```bash npx @dlazy/cli@1.2.3 <command> ``` The global installation alternative is: ```bash npm install -g @dlazy/cli@1.2.3 ``` ### Technical Analysis The skill delegates its operation to the external npm package `@dlazy/cli`. Although version `1.2.3` is pin ...[truncated 2826 chars]
Remediation
## Remediation Suggestions 1. Vendor the required CLI implementation into a reviewable, version-controlled component or include its complete audited source in the skill distribution. 2. Verify downloaded artifacts against an approved cryptographic integrity digest or signed provenance before execution. Pin both the direct package and its complete transitive dependency graph. 3. Include a lockfile generated from the reviewed dependency set and enforce immutable or reproducible installation in deployment. 4. Prefer a package manager mode that refuses dependency or lockfile changes and validates registry integrity metadata. 5. Disable npm lifecycle scripts where operationally possible, for example by using an installation policy equivalent to `--ignore-scripts`, after confirming that the reviewed CLI does not legitimately require them. 6. Avoid global installation. Execute the reviewed artifact from an isolated, non-privileged environment with narrowly scoped filesystem and network access. 7. Restrict the process to only user-approved media paths and the required endpoints. Do not expose unrelated home-directory content, SSH material, or broad environment variables. 8. Store the API key using an operating-system credential manager where possible, use a narrowly scoped key, and support prompt rotation and revocation. 9. Add automated software-composition analysis, registry provenance verification, and periodic review of the pinned package and every transitive dependency. 10. Document the exact artifact digest and reviewed source revision rather than relying only on the mutable association between an npm version and a GitHub repository.
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (5)

Ae1

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

Intent-Code Divergence

Medium
Confidence
95% confidence
Finding
The skill is described throughout the manifest as a video generation model, but the sample output under '输出格式' shows an output object with `type: "image"`, `result.png`, and `mimeType: "image/png"`. This is an active contradiction in the documentation about what the command produces, not merely an omitted detail.

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.

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.

Natural-Language Policy Violations

Low
Confidence
85% confidence
Finding
This file is presented as the Chinese version of the skill, but it includes mandatory agent instructions and explanatory text in English such as 'CRITICAL INSTRUCTION FOR AGENT' and the pipe-reference note. That imposes a language choice inconsistently and may violate locale expectations for a localized skill because no opt-in or language selection is offered.

Static analysis

No suspicious patterns detected.