Back to skill

Security audit

图像生成 GPT Image 2.5 Sunburst

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed wrapper around a pinned dLazy npm CLI for cloud image generation, with expected credential storage and file upload behavior for that purpose.

Before installing, review and trust the @dlazy/cli package and dLazy service because the skill executes external npm code and sends prompts or selected media files to dLazy-hosted endpoints. Prefer npx or another isolated install if you do not want a persistent global binary, and use a revocable dLazy API key.

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
Unverified Third-Party npm Package Installation and Execution<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:5, 53-59, 73-74`; mirrored in `SKILL-cn.md:5, 53-59, 73-74` **Vulnerability Type**: Third-party software supply-chain exposure **Risk Level**: Medium ### Vulnerable Code Snippets `SKILL.md:5`: ```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 gpt-image-2-5-sunburst -h for help."}} ``` `SKILL.md:53-59`: ```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. ``` `SKILL.md:73-74`: ```markdown **CRITICAL INSTRUCTION FOR AGENT**: Execute `dlazy gpt-image-2-5-sunburst` to get the result. ``` Equivalent installation and execution instructions appear in `SKILL-cn.md` at the same line ranges. ### Technical Analysis The Skill contains no executable implementation of its own. Instead, it depends on the externally distributed `@dlazy/cli` npm package and directs the Agent to install or execute it. Pinning the package to version `1.2.3` limits unintended version changes, but it does not independently verify the downloaded artifact's cryptographic integrity or establish that the npm artifact matches the linked source repository. The audited project also does not include a lockfile, checksum, signature, vendored source, or reviewed executable implementation for this dependency. The global instal ...[truncated 2257 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. **Vendor and audit the executable implementation** - Include the required CLI source or a minimal reviewed client in the Skill package. - Review all direct and transitive dependencies before release. - Re-audit the vendored implementation whenever it changes. 2. **Add artifact integrity verification** - Publish a cryptographic digest or signed provenance statement for the exact supported package artifact. - Verify the downloaded artifact before execution. - Ensure the verified npm artifact corresponds to the reviewed source revision. 3. **Use reproducible dependency controls** - Maintain a lockfile with exact transitive dependency versions and integrity values. - Use a controlled package registry or an internally mirrored, approved artifact. - Enable npm provenance and signature verification where supported. 4. **Avoid global installation** - Remove `npm install -g` from automatic installation metadata. - Prefer an isolated, ephemeral execution environment with a dedicated cache and no modification of system-level executable paths. 5. **Reduce installation-time execution** - Disable npm lifecycle scripts where compatible, such as by using `--ignore-scripts`. - Explicitly review any lifecycle scripts required by the package before permitting them. 6. **Apply runtime isolation** - Execute the CLI as a non-privileged dedicated user or within a sandbox/container. - Restrict filesystem access to explicitly selected input and output paths. - Restrict outbound network access to the documented endpoints only. - Avoid exposing unrelated environment variables or credentials to the process. 7. **Protect API credentials** - Store the API key using an OS credential manager where possible. - Enforce restrictive permissions on `~/.dlazy/config.json`. - Use narrowly scoped, revocable credentials and rotate them after suspected dependency compromise. ]]>
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • 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
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (5)

Ae1

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

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.

Natural-Language Policy Violations

Medium
Confidence
90% confidence
Finding
The primary heading is in Chinese and the language switcher presents English as an alternate, which indicates a default language choice imposed by the skill content. The policy requires avoiding forced language or locale constraints unless the user is given a choice up front or the constraint is clearly justified.

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
81% confidence
Finding
This file presents the skill instructions and operational guidance entirely in Chinese, which can impose a language preference on users reading this variant of the skill. The policy allows locale constraints when users are given a language choice or the constraint is clearly justified; this file links to an English version but does not explicitly state a user language choice within the instructions themselves.

Static analysis

No suspicious patterns detected.