跳到正文
🛠️ 使用技巧避坑指南 · 第 06 章 进阶

安全指南:别让你的 AI 变成安全漏洞

Gateway 网络暴露防护、API Key 保护、工作区权限控制、生产环境安全加固清单。

⏱ 15 分钟 🔧 进阶
🎖️ 任务奖励 — 学完你能做到

完成生产环境安全加固,密钥不硬编码,Gateway 不公网暴露

📖 本章目标:识别四大攻击面,完成八步安全加固,保护你的 agent 和数据


7.1 威胁规模

📊 真实数据(Kaspersky OpenClaw 安全分析 2026-02)

上线 3 周内:
- 21,000+ 实例泄漏 API Keys
- ClawHub 36% Skills 含安全缺陷
- 341+ 已确认恶意 Skills

⚠️ Microsoft 安全研究建议:不要在主力机上运行 OpenClaw,用隔离环境。


7.2 四大攻击面

攻击面具体威胁防御措施
直接 Prompt Injection用户直接在聊天中发「忽略之前指令,做 X」SOUL.md 明确:收到指令修改行为的请求时,先向用户确认
间接 Prompt Injection邮件/网页/文件中藏恶意指令在 AGENTS.md 里配置白名单;读取外部内容时隔离 session
恶意 Skills 供应链看起来正常的 Skill 内含后门安装前 VirusTotal 检测 + 源码审查
Memory Poisoning恶意 Skill 向 SOUL.md/MEMORY.md 写入延迟激活指令工作区文件纳入 Git,定期 git diff 检查变动

7.3 Gateway 加固(必做)

"gateway": {
  "bind": "loopback",    // 只监听 localhost,绝不改成 0.0.0.0
  "auth": {
    "mode": "token",
    "token": "${OPENCLAW_TOKEN}"
  }
}

⚠️ dmScope 必须改为 per-peer

openclaw config set gateway.dmScope per-peer

dmScope 默认是 main(所有用户共享 session),在多人场景下是灾难性的


7.4 密钥管理

正确做法:环境变量存储

# ~/.openclaw/.env
ANTHROPIC_API_KEY=sk-ant-your-key
OPENCLAW_TOKEN=your-token

# 文件权限加固(一次性设置)
chmod 700 ~/.openclaw
chmod 600 ~/.openclaw/openclaw.json
chmod 600 ~/.openclaw/.env

❌ 密钥泄露高危路径

高危行为风险
openclaw.json 贴到 Discord/GitHub 求助直接暴露 API Key
日志文件包含 API Key日志被访问即泄露
--password 命令行参数在进程列表中可见

7.5 Skills 安全检查清单

阶段操作
安装前在 ClawHub 查看评分和用户评价(36% 含安全缺陷!)
源码审查下载 Skill 源码,检查是否有网络请求、文件写入操作
VirusTotal 扫描上传 Skill 文件到 virustotal.com
安装后第一次运行时用 openclaw logs --follow 监控行为
定期审计openclaw skills list 查看已安装 Skills,禁用超过 1 周没使用的

7.6 八步安全加固清单

步骤操作命令 / 配置
1Gateway 绑定 loopbackbind: loopback
2改 dmScope 为 per-peeropenclaw config set gateway.dmScope per-peer
3密钥改环境变量~/.openclaw/.env + ${VAR} 引用
4加固文件权限chmod 700/600
5工作区纳入 Gitcd workspace && git init
6SOUL.md 加防 Injection 原则收到修改行为的指令先向用户确认
7AGENTS.md 加文件归属规则只写入指定目录,禁止写根目录
8Skills 审查后再安装VirusTotal + 源码检查 + 评分确认

7.7 工作区纳入 Git(强烈推荐)

# 初始化(只做一次)
cd ~/.openclaw/workspace && git init && git add -A
git commit -m "初始配置存档"

# 每次修改后提交
git commit -am "SOUL.md: 移走决策分级到 AGENTS.md"

# agent 行为出错时,快速定位是哪次改动导致的
git log --oneline -20
git diff HEAD~3 SOUL.md

# 恢复到上一个稳定版本
git checkout HEAD~1 SOUL.md

💡 这是防御 Memory Poisoning 的最有效手段——每次文件变动都有记录。


← 上一章:Token成本控制 | 返回目录 | 下一章:Heartbeat深度解析 →