T03 · Remote Payload Retrieval and Execution
- Location
ClawRouter 安装指南.md:16- Finding
Mutable Remote Installer Is Piped Directly into Bash
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill is mostly documentation and templates, but it recommends high-impact installation and configuration patterns that need careful review before use.
Install only if you are comfortable reviewing and tightening the templates first. Avoid the curl-to-bash installer, pin and verify any Docker/source installs, restrict Feishu access to approved users/groups, treat all API keys and bot tokens as secrets, use 600-style permissions for sensitive configs, and do not enable remote memorySearch unless you accept sending indexed memory content to that provider.
ClawRouter 安装指南.md:16Mutable Remote Installer Is Piped Directly into Bash
ClawRouter 安装指南.md:30Unpinned Docker, Git, and npm Installation Paths Permit Supply-Chain Code Execution
记忆系统配置模板.md:101Conversation-Derived Memory May Be Transmitted to a Third-Party Embedding Service
ClawRouter 安装指南.md:349Troubleshooting Command Exposes the Complete ClawRouter API Key
配置模板合集(脱敏版).md:178Open Messaging Policies Expose Tool-Enabled Agents to Untrusted Users
SKILL.md:205Broad Permission Commands Make Configuration Files World-Readable
Fetching an installation script from a remote domain and executing it as part of setup is a classic supply-chain risk. Users are asked to trust both the remote host and the transport path with immediate code execution, making compromise of either highly impactful.
# 1. 安装 ClawRouter
curl -fsSL https://blockrun.ai/ClawRouter-update | bash
# 2. 重启 OpenClaw Gateway
openclaw gateway restart
The | bash chain removes the user’s chance to inspect the downloaded content before it runs, compounding the risk of the external script fetch. In a configuration/operations skill, this is especially dangerous because users are likely to run commands verbatim on real systems.
# 1. 安装 ClawRouter
curl -fsSL https://blockrun.ai/ClawRouter-update | bash
# 2. 重启 OpenClaw Gateway
openclaw gateway restart
Mixing characters from multiple Unicode scripts in a single identifier is a common technique to create visually ambiguous tool names.
This line explicitly fetches and executes an external script from https://blockrun.ai/ClawRouter-update, which is a classic supply-chain hazard. In the context of an agent skill intended to guide installation, this is more dangerous because users may copy-paste it verbatim and grant the script access to their workstation, credentials, configs, and local services.
方式 1: 一键安装 (推荐)
curl -fsSL https://blockrun.ai/ClawRouter-update | bash
openclaw gateway restart
The | bash chaining turns a network fetch into immediate shell execution with no review boundary, magnifying the risk of malicious or tampered content. Combined with the document's recommendation wording, it lowers user caution and increases the likelihood of unsafe execution.
方式 1: 一键安装 (推荐)
curl -fsSL https://blockrun.ai/ClawRouter-update | bash
openclaw gateway restart
Skill selects an external model or provider that may use a different account or billing plan than the operator expects. Undisclosed model switches can cause unexpected cost or quota consumption.
# 简单任务 - 使用便宜模型
openclaw agent --model gpt-4o-mini --message "提取 JSON"
# 复杂任务 - 使用 Claude
openclaw agent --model claude-sonnet-4 --message "架构设计"
Skill selects an external model or provider that may use a different account or billing plan than the operator expects. Undisclosed model switches can cause unexpected cost or quota consumption.
openclaw agent --model gpt-4o-mini --message "提取 JSON"
openclaw agent --model claude-sonnet-4 --message "架构设计"
---
The template instructs the agent to automatically read multiple local context files, including USER.md and MEMORY.md, and explicitly says 'Don't ask permission. Just do it.' That removes user opt-in for potentially sensitive personal or historical data access and normalizes silent collection of context beyond the immediate task.
Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
## Safety
- Don't exfiltrate private data. Ever.
- Don't run destructive commands without asking.
- `trash` > `rm` (recoverable beats gone forever)
- When in doubt, ask.
The guide recommends curl ... | bash, which downloads and immediately executes remote code without requiring the user to inspect or verify it. If the upstream site, network path, or update script is compromised, users can suffer arbitrary code execution on their machine.
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
Docker image references without a specific tag (:latest is implicit) or digest (@sha256:...) can be silently replaced by a malicious image.
The guide instructs users to place an API key into a config file but does not clearly warn that the key is sensitive or provide handling guidance beyond file permissions. Users may accidentally paste real credentials into shared terminals, screenshots, repos, backups, or world-readable environments.
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
chmod 600 ~/.openclaw/config/clawrouter.json
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
chmod 600 ~/.openclaw/config/clawrouter.json
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
chmod 600 ~/.openclaw/config/clawrouter.json
This test request sends prompt content and an Authorization header to the local router endpoint, which is designed to forward requests onward to external providers. In the context of a routing/proxy product, that means user content and credentials may transit systems beyond the local machine, so the absence of an explicit privacy warning is security-relevant.
tail -f ~/.clawrouter/logs/routing.log
# 测试请求
curl http://localhost:8080/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
The guide recommends kill -9 <PID> without warning about its forceful, destructive nature or the risk of targeting the wrong process. In an operational context, this can cause service disruption, data loss, or termination of unrelated workloads.
The troubleshooting step cat ~/.openclaw/config/clawrouter.json | jq '.proxy.api_key' prints the secret directly to the terminal. This creates avoidable exposure through shell history captures, terminal logging, screen sharing, shoulder surfing, or CI transcripts.
The FAQ claims the system is '本地运行,数据不出境', but the rest of the guide clearly shows routing requests to external model services and handling API credentials for remote access. This can mislead users into sending sensitive prompts or data under a false assumption of locality and confidentiality.
This markdown file contains user-facing natural language that effectively forces a specific language/locale for understanding and use of the skill. The policy requires flagging language constraints when the skill does not offer user opt-in or explain that it is intentionally region-specific.
Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.
# 创建配置目录
mkdir -p ~/.openclaw/config/{agents,skills,channels}
mkdir -p ~/.openclaw/workspace/{memory,templates}
# 复制核心配置模板
L145-L148 将该方案描述为“零风险重构”,且明确写出 “Phase 1 纯新增,不修改现有配置”;但文档中的实际操作包括生成并覆盖 ~/.openclaw/openclaw.json(L271-L275)、同步修改 ~/agents/writer/SOUL.md(L279-L280),以及重启网关使变更生效(L126-L129)。这些行为明显会修改现有运行配置和记忆文件,因此与“纯新增、不修改现有配置”的说法相矛盾。
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
chmod 755 ~/.openclaw/config
chmod 644 ~/.openclaw/config/*.json
chmod 600 ~/.openclaw/config/channels/feishu.json # 密钥文件更严格
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
chmod 755 ~/.openclaw/config
chmod 644 ~/.openclaw/config/*.json
chmod 600 ~/.openclaw/config/channels/feishu.json # 密钥文件更严格