Back to skill

Security audit

Doubao Launch

Security checks for vulnerabilities and agentic risk

Overview

The skill’s stated purpose is understandable, but it runs an unbundled Python file from an absolute host path, so the reviewed package does not determine what code will execute.

Review this skill before installing. It should bundle the Doubao automation script and use a package-relative entry point, or otherwise pin and verify the external script, because the current package cannot prove what code launch_doubao will run.

Vulnerability Patterns
  • Tool Hijacking and SpoofingModifies or replaces tools so legitimate-looking calls execute attacker logic
  • 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)

T07 · Tool Hijacking and Spoofing

Warning
Location
openclaw.plugin.json:9
Finding
Plugin Delegates Tool Execution to an Unpackaged Absolute Host Path<![CDATA[ ## Vulnerability Details **File Location**: `openclaw.plugin.json`, line 9 **Vulnerability Type**: T07: Tool Hijacking and Spoofing **Risk Level**: Medium ### Vulnerable Code ```json { "id": "doubao-launch", "name": "Doubao Launch", "version": "1.0.0", "description": "Launch Doubao desktop application and configure real-time translation window.", "tools": [ "launch_doubao" ], "entry": "/mnt/h/AI/openclaw_workspace/video_translate/skills/doubao_auto_workflow.py" } ``` ### Technical Analysis The plugin registers `launch_doubao` but delegates its execution to the absolute path `/mnt/h/AI/openclaw_workspace/video_translate/skills/doubao_auto_workflow.py`. That executable is outside the audited project and is not included among the supplied files. Consequently, the package does not bind the registered tool to a reviewed implementation. The effective behavior depends on whichever file occupies the external path at invocation time. A user or process with write access to that host-mounted workspace could replace or modify the Python file without changing the reviewed plugin package. The documentation is also inconsistent with the configuration: `SKILL.md` refers to the package-relative path `scripts/doubao_auto_workflow.py`, but no such file is present. In addition, `package.json` declares `index.js` as its main file, although that file is also absent. These omissions prevent verification of the tool's actual runtime behavior. ### Attack Path 1. An attacker obtains write access to `/mnt/h/AI/openclaw_workspace/video_translate/skills/` or the referenced `doubao_auto_workflow.py` file. 2. The attacker creates or replaces `doubao_auto_workflow.py` with attacker-controlled Python code. 3. The plugin remains apparently unchanged and continues to expose the legitimate-looking `launch_doubao` tool. 4. An Agent or user invokes `launch_doubao`. 5. The plugin resolves the absolute entry path and executes the substituted implementation. 6. The a ...[truncated 977 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. Include the complete `doubao_auto_workflow.py` implementation within the distributed and reviewed project. 2. Replace the absolute host path with a package-relative entry point, such as `scripts/doubao_auto_workflow.py`. 3. Ensure the package manifest includes every executable file required at runtime and remove or correct the nonexistent `index.js` declaration. 4. Make the runtime implementation read-only to untrusted users and processes. 5. If external execution is unavoidable, verify the executable against a pinned cryptographic hash or trusted signature before every invocation. 6. Reject symbolic links and validate the canonical path so path substitution cannot redirect execution outside an approved directory. 7. Run the tool under a least-privileged account with restricted filesystem, network, process-launch, and host-mount access. 8. Align `SKILL.md`, `openclaw.plugin.json`, and `package.json` so that documentation and manifests reference the same bundled implementation. ]]>
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

Static analysis

No suspicious patterns detected.