Back to skill

Security audit

Openclaw Bridge

Security checks for vulnerabilities and agentic risk

Overview

This skill has a coherent local agent-bridge purpose, but it forwards user context to another agent and documents unsafe shell message interpolation without enough guardrails.

Review before installing. Use this only if you trust the local OpenClaw gateway and downstream agents with the exact messages and context you send. Avoid forwarding secrets, credentials, private notes, or bulk file contents, and do not paste untrusted text into the documented shell command templates without safer argument handling.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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
Findings (2)

T09 · Insecure Skill Coding Practices

Error
Location
SKILL.md:37
Finding

Shell Command Injection Through Unsafe Message Interpolation

Content
View full analysis
" --agent main --json ``` ```bash openclaw agent --message "HANDOFF od Claude Code: $(cat /path/to/.continue-here.md)" --agent main --json ``` ```bash openclaw agent --message "..." --agent main --json | python3 -c " import json, sys d = json.load(sys.stdin) for p in d['result']['payloads']: if p['text']: print(p['text']) " ``` ### Technical Analysis The skill instructs Claude Code to interpolate message content directly into a Bash command enclosed in double quotes. Double quotes do not make arbitrary input safe for shell command construction. If untrusted message content contains a double quote followed by shell syntax, it can terminate the intended argument and introduce command separators, redirections, or command substitutions. For example, a message containing syntax conceptually equivalent to: ```text "; attacker_command; # ``` could transform the generated command into multiple shell operations if the agent follows the documented template literally. The explicit `$(cat ...)` handoff example also normalizes shell command substitution as part of message construction. Although that particular example uses a fixed path placeholder, adapting it with an attacker-influenced path would create an additional injection or unauthorized file-read risk. The skill's declared tool scope is `Bash(openclaw:*)`. The practical exploitability may depend on how the host enforces that tool restriction, but the generated shell command itself is unsafe and must not rely on tool-policy matching as an input-sanitization boundary. ### Attack Path 1. An attacker supplies or influences text used in an “ask openclaw,” “tell rook,” or handoff request. 2. The message includes a closing quotation mark and additional shell syntax. 3. Claude Code follows th ...[truncated 833 chars]
Remediation
View remediation

T08 · Insecure Dependencies

Warning
Location
README.md:5
Finding

Unpinned Installation From a Mutable Upstream Repository

Content
View full analysis
Remediation
View remediation
``` - Provide a cryptographic checksum or signed release artifact and document signature verification. - Clone into a staging directory, inspect the exact diff and file list, and only then copy the verified files into the active Claude Code skill directory. - Recommend reviewing updates before installation instead of automatically pulling changes into an already trusted skill. - Document the exact commit or release to which each security audit applies. ]]>
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (5)

Exfiltration Commands

High
Category
Prompt Injection
Confidence
95% confidence
Finding

This skill is purpose-built to transmit arbitrary user-supplied messages to another agent via a local gateway, which fits the exfiltration pattern even if the destination is nominally local. The risk is heightened because the downstream agent may have different tools, persistence, logging, or network access, so forwarding sensitive prompts or context can expand the trust boundary and leak data beyond the current agent session.

Content

Scanner excerpt · SKILL.md (reported line 4)May include surrounding context.

md
---
name: openclaw-bridge
description: >
  Send messages to a local OpenClaw/Rook gateway and receive responses directly
  from Claude Code. Enables bidirectional agent-to-agent communication via the
  `openclaw agent --message` CLI. Use when you need to delegate work to OpenClaw,
  ask for Kimi's opinion, trigger an OpenClaw skill, or hand off context between

Exfiltration Commands

High
Category
Prompt Injection
Confidence
97% confidence
Finding

The body of the skill reiterates that it sends messages to a running OpenClaw gateway and includes examples for handoff and task delegation, including embedding file contents into outbound messages. In context, this is more dangerous than a generic communication tool because it normalizes passing rich context to another autonomous agent without guardrails on sensitive data handling or recipient capabilities.

Content

Scanner excerpt · SKILL.md (reported line 20)May include surrounding context.

md
# openclaw-bridge

Send messages to a running OpenClaw gateway and get responses back — directly from Claude Code, without leaving the terminal.

## When to use

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger phrases include broad natural-language prompts such as "ask openclaw" and "ask the local agent," which can cause the skill to activate in ordinary conversation without clear, deliberate user intent. Because the skill forwards message content to another local agent process, accidental activation can disclose prompts, context, or sensitive workspace information to a secondary system.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The skill explicitly supports sending user messages and session handoff context to another agent, including examples that pass file contents into the message stream, but it does not present a clear privacy warning or require consent per transfer. This creates a real risk of unintended data sharing, especially if prompts, notes, credentials, or proprietary code are included in forwarded context.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
96% confidence
Finding

The documented delegation example sends a hard-coded Polish instruction to the downstream agent, which imposes a specific language choice without indicating user preference or opt-in. This can violate language/locale policy expectations for user-controlled language selection.

Content

No source excerpt is available for this finding.