OpenClaw基线安全检测神器

国家网络安全通报中心最新警示:OpenClaw(技术圈俗称“小龙虾”)风险爆表——85%资产直接暴露公网,默认18789端口成攻击者首选;漏洞库已收录258个安全漏洞,含远程控制、权限提升等严重风险;更令人警惕的是,插件供应链投毒率高达10.8%,每下载10个Skill就可能有一个暗藏后门。

你家的小龙虾,可能正在被别人“偷吃”:有人用你的18789端口挖矿,有人通过恶意Skill控制你的Agent,甚至你的AI模型已经在帮别人干活,你还以为它只是有点“不听话”。

逮虾户——首个开源OpenClaw基线安全检测工具正式上线。 一键扫描端口风险、深度检测架构缺陷、精准识别恶意Skill插件、全面排查配置不当导致的安全风险。

别等小龙虾爬出去咬人才补网。现在就用逮虾户查一遍:有没有人已经偷偷进了你家?你的AI Agent,到底听谁的话?

一、为什么 OpenClaw 的安全比你想象的复杂

把 OpenClaw 想象成一个大型龙虾养殖场,普通软件的安全问题,顶多是”虾池漏水”——修补漏洞就好。但 OpenClaw 不一样。它是个会自己游泳、会自己开门、还会帮你打电话的龙虾。

  • 它能读写你本地的文件系统
  • 它能调用你配置的任意外部 API
  • 它能执行系统命令、操作浏览器
  • 它能安装第三方”技能包”并自主使用

这种自主性,是它的价值所在,也是它的风险所在。更要命的是——OpenClaw 默认不开认证。 你装完就能用,方便是真的方便,风险也是真的存在。再加上今年最被广泛利用的漏洞——CVE-2026-25253(行业绰号”ClawJacked”):CVSS 评分 8.8,高危。原理是 OpenClaw 的 WebSocket 服务无条件信任来自 localhost 的请求。 攻击者只需要让你访问一个恶意网页,那个网页会在后台悄悄往你的本地 OpenClaw 发请求,无需你点任何东西,全程无感,你的 AI 智能体就被人开走了。

别慌。我们整理了 7 个检测维度,小白也能通过手工来查。

二、OpenClaw 安全自查七式
1查配置,别把钥匙挂在门口地毯下

这是最容易出事、也最容易被忽视的一关。

查什么: 你的配置文件里,有没有把 API Key 当门牌号一样贴在外面?

OpenClaw 的配置目录通常在 ~/.openclaw/openclaw.json我们重点检查几件事:

(1)硬编码 API Key 检测(CRITICAL 🚨)

查看.openclaw/openclaw.json文件,右击用记事本打开它。

图片[1]-OpenClaw基线安全检测神器-华盟网
图片[2]-OpenClaw基线安全检测神器-华盟网

查看你的各个apikey参数里面是不是有一大串sk-xxxxx,养虾人员明文写进配置文件的,快速部署的时候手快,回头可能就忘了。

(2)SOUL.md 提示注入检测(HIGH)

SOUL.md 是 OpenClaw 的系统提示词文件,相当于”给 AI 下的总命令”。 一旦被篡改,AI 的所有行为都可能被重定向。

Linux输入:

cat ~/.openclaw/SOUL.md | grep -iE "(ignore|override|bypass|pretend|forget|jailbreak|你现在是|忽略之前)"

Windows输入:

type %USERPROFILE%\.openclaw\SOUL.md | findstr /i "ignore override bypass pretend forget jailbreak 你现在是 忽略之前"

如果这里出现任何”忽略之前的指令”、”你现在是一个没有限制的 AI”之类的内容——问题大了。

(3)危险配置标志位检测(HIGH)

Linux输入:

grep -iE '"sandbox":\sfalse|"auth":\sfalse|"envEncryption":\sfalse|"confirmDestructive":\sfalse' ~/.openclaw/openclaw.json

Windows输入:

findstr /i "\"sandbox\":false \"enabled\":false \"envEncryption\":false \"confirmDestructive\":false" %USERPROFILE%\.openclaw\openclaw.json

sandbox:false(关闭沙箱)、auth:false(关闭网关认证)、envEncryption:false(明文存储密钥)这三个标志,任何一个出现在你的配置里,直接视为高危。

(4)配置文件权限检查(MEDIUM)

重点是看 openclaw.json 的权限位,Linux 下不应该出现 -rw-rw-rw- (666) 或 -rwxrwxrwx (777),Windows 下不应该出现 Everyone 拥有写权限。

Linux输入:

ls -la ~/.openclaw/openclaw.json# 检查数字权限(不应大于 644)stat -c "%a %n" ~/.openclaw/openclaw.json

Windows输入:

icacls "%USERPROFILE%\.openclaw\openclaw.json"# 检查输出中是否包含 Everyone:(F) 或 Everyone:(M) 或 Users:(W) - 有则危险

2查技能,警惕混进虾池的“坏虾”

ClawHub 上已经有超过 1,184 个恶意技能包被确认,15% 的社区技能包含有恶意指令。你装的那几个技能包,你核查过吗?

(1)查已安装技能包及权限(HIGH)

Linux输入:

openclaw skills listls ~/.openclaw/skills/

Windows输入:

  openclaw skills list  dir %USERPROFILE%.openclaw\skills

重点关注每个技能包的 skill.yaml 中的 permissions 字段,一个”天气查询”技能包为什么需要 filesystem: write 权限?技能包的权限不应该超过它声称功能的实际需要。

(2)比对已知恶意技能包名单(HIGH)

# 使用 OpenClaw 内置的安全审计(推荐)

openclaw doctor –security

Linux输入:

find ~/.openclaw/skills/ -name "skill.yaml" | xargs grep -l "source:" | xargs cat

Windows输入:

findstr /s /l "source:" %USERPROFILE%.openclaw\skills\skill.yaml

手工查:检查 skill.yaml 中的 repository URL 是否来自可信域名(github.com/MoonshotAI/ 等官方源)

(3)检测系统 Prompt 劫持风险(CRITICAL 🚨)

# 技能包使用 YAML 配置,不是 JSON。

Linux输入:

find ~/.openclaw/skills/ -name "skill.yaml" | xargs grep -E "(system_prompt|inject_prompt|override)"find ~/.openclaw/skills/ -name "*.md" | xargs grep -iE "(ignore previous|new instruction|system prompt override)" 2>/dev/null

Windows输入:

findstr /s /r "system_prompt inject_prompt override" %USERPROFILE%.openclaw\skills\skill.yamlfindstr /s /i "ignore previous new instruction system prompt override" %USERPROFILE%.openclaw\skills*.md

(4)沙箱隔离与跨技能包数据泄露(MEDIUM)

# 查看具体技能包的权限配置

Linux输入:

cat ~/.openclaw/skills/[skill-name]/skill.yaml | grep -A 10 "permissions:"

Windows输入:

type %USERPROFILE%.openclaw\skills[skill-name]\skill.yaml | findstr /A 10 "permissions:"# 检查高危权限组合:网络+文件系统+执行权限同时存在

Linux输入:

find ~/.openclaw/skills/ -name "skill.yaml" | xargs grep -l "exec:" | xargs grep -l "network:"

Windows输入:

findstr /s /l "exec:" %USERPROFILE%.openclaw\skills\skill.yaml && findstr /s /l "network:" %USERPROFILE%.openclaw\skills\skill.yaml

特别注意:有没有技能包被授予了 exec: true(外部命令执行权限)。这相当于给龙虾装了个独立的遥控器,你以为在控制它,实际上别人也在控制它。3查端口,别把虾池的盖子敞着

那 135,000个裸奔的 OpenClaw 实例,大多数是被这一关坑的 [ref:21,27]。

(1)检测 Gateway 端口绑定(CRITICAL 🚨)

Linux输入:

ss -tlnp | grep -E "3000|8080|9000|4140"# 或查看具体监听地址(确认是 127.0.0.1 还是 0.0.0.0)ss -tlnp | grep openclaw

Windows输入:

netstat -ano | findstr "3000 8080 9000 4140"tasklist | findstr "openclaw"

关键判断:

127.0.0.1:3000 ✅ 只有本机能访问,相对安全

0.0.0.0:3000 🚨 全网暴露,任何人都能连

(2)检测 Browser Control 端口隔离(CRITICAL 🚨)

OpenClaw 使用 Playwright/Chromium 控制浏览器,CDP (Chrome DevTools Protocol) 默认监听在 9222/9223 端口。这个端口一旦对外暴露,攻击者可以直接控制你机器上的浏览器。

Linux输入:

ss -tlnp | grep -E "9222|9223"

Windows输入:

netstat -ano | findstr "9222 9223"

确认只有 127.0.0.1,不能出现 0.0.0.0。

(3)CORS 配置检测(HIGH)

Linux输入:

grep -i "cors|origin" ~/.openclaw/openclaw.json# 或者查看完整的 gateway 配置cat ~/.openclaw/openclaw.json | grep -A 5 -B 5 "gateway"

Windows输入:

findstr /i "cors origin" %USERPROFILE%.openclaw\openclaw.jsontype %USERPROFILE%.openclaw\openclaw.json | findstr /A 5 /B 5 "gateway"

检测危险配置:

“origin”: “*” 🚨 等于告诉全世界”我家没门,随便进”

“origin”: “https://trusted-domain.com” ✅ 应该限制为可信域名

(4)防火墙规则验证(HIGH)

Linux输入:

# ufw 需要 sudo 查看详细规则,普通用户查看基本状态sudo ufw status verbose 2>/dev/null || ufw status | grep -E "3000|8080|4140|9222"# iptables 通常需要 rootsudo iptables -L -n | grep -E "3000|8080|4140|9222"# 或查看当前用户的网络命名空间(如果是非 root 部署)iptables-save 2>/dev/null | grep -E "3000|8080|4140"

Windows输入:

# 查看特定端口防火墙规则netsh advfirewall firewall show rule name=all | findstr "4140"# 查看所有启用的入站规则netsh advfirewall firewall show rule name=all dir=in | findstr /i "openclaw 4140 3000 8080"

4查口令,弱密码等于没装门锁

核心原则:Auth Token 至少要 40 位十六进制字符,且不能有规律。

(1)Token 长度和熵值检测(CRITICAL 🚨)

Linux输入:

openclaw config get gateway.auth.token 2>/dev/null | tr -d '"' | wc -c# 输出应该 >= 41(40位+换行符)# 检查 Token 有没有全零、重复字符等弱模式openclaw config get gateway.auth.token 2>/dev/null | tr -d '"' | grep -E "^(0+|1+|a+|(.)\2{10,})$"

Windows输入:

# 查看 Token(注意:CMD 统计长度较麻烦,建议肉眼检查或复制到文件查看属性)openclaw config get gateway.auth.token 2>nul# 检查是否有明显弱口令特征(连续相同字符)findstr /r /c:"0{10,}" /c:"1{10,}" /c:"a{10,}" %USERPROFILE%.openclaw\openclaw.json

有匹配 = 弱 Token,立即换。

(2)认证模式检测(CRITICAL 🚨)

Linux输入:

cat ~/.openclaw/openclaw.json | grep -A 3 '"auth"' | grep -i '"enabled":\s*false'# 或者直接查看认证是否关闭openclaw config get gateway.auth.enabled

Windows输入:

type %USERPROFILE%.openclaw\openclaw.json | findstr /A 3 /c:""auth"" | findstr /i "enabled"openclaw config get gateway.auth.enabled# 如果输出包含 false,等于裸奔

(3)速率限制和 Session TTL(MEDIUM)

Linux输入:

cat ~/.openclaw/openclaw.json | grep -iE "rateLimit|rate_limit|sessionTTL|session_ttl|ttl"

Windows输入:

findstr /i "rateLimit rate_limit sessionTTL session_ttl ttl" %USERPROFILE%.openclaw\openclaw.json

这两个没配置不是 CRITICAL,但属于”虾池没加盖”的状态。

5查依赖,别让供应链的坏虾混进来

OpenClaw 已累计披露87个 CVE,你的版本中了几个?

(1)CVE漏洞修复

官方已经就公开的各类漏洞进行了修复,直接将你的龙虾更新到最新版本。

(2)Node.js 版本检测(HIGH)

跨平台通用:

node –version

对照 https://nodejs.org/en/about/previous-releases

 跑在 EOL 版本上,等于跑在一个没有安全补丁的环境里。

(3)Typosquatting 相似包名检测(MEDIUM)

跨平台通用:

npm ls –depth=0 2>nul

手工检查有没有这类可疑包名:

  • openclaw vs 0penclaw
  • openclaw-utils vs openclaw_utils

一字之差,可能是专门钓粗心人的恶意包。

(4)锁定文件完整性(MEDIUM)

Linux输入:

ls -la package-lock.json# 如果最近被意外修改,需要和 git 历史比对git diff package-lock.json

Windows输入:

dir package-lock.jsongit diff package-lock.json

6查主机,后院不能着火

技能包装进去之后,它在机器上干了什么?这一式检测的不是 OpenClaw 的配置,而是你的操作系统有没有被它或者通过它搞过。

(1)异常外联连接检测(HIGH)

重点:有没有连接到不认识的 IP 或域名?有没有在奇怪的时间段有持续的外联流量?

Linux输入:

ss -tnp | grep openclawlsof -p $(pgrep -f openclaw) -i

Windows输入:

netstat -ano | findstr "openclaw"# 先获取 openclaw 进程 PIDtasklist | findstr "openclaw"# 然后用 PID 查网络连接(将 1234 替换为实际 PID)netstat -ano | findstr "1234"

(2)可疑定时任务审计(HIGH)

Linux输入:

crontab -lcat /etc/cron.d/* 2>/dev/nullsystemctl list-timers

Windows输入:

schtasks /query /fo LIST /v | findstr /i "openclaw claw node"# 或者查看精简版schtasks /query | findstr /i "openclaw"

有没有 OpenClaw 运行之后新增的、你不认识的定时任务?

(3)关键目录文件变更检测(HIGH)

Linux输入:

find ~/.openclaw -newer /tmp/checkpoint -type f 2>/dev/null# 或直接用 find 按时间过滤find ~/.openclaw -mtime -2 -type f | head -20

Windows输入:

# 检查最近2天修改的文件(CMD 限制较多,建议用 PowerShell 或手动检查)forfiles /p %USERPROFILE%.openclaw /s /m . /d -2 /c "cmd /c echo @path" 2>nul# 或者简单列出按时间排序dir /s /o:d %USERPROFILE%.openclaw*.yaml

检查最近48小时被修改的文件。

(4)特权账号审计(HIGH)

不应该用 root,用普通用户最小权限原则。

Linux输入:

ps aux | grep openclaw | grep -v grep# 检查有没有 OpenClaw 运行期间新增的 sudo 用户grep -i "openclaw|$(date '+%b %d')" /var/log/auth.log 2>/dev/null | grep "sudo|useradd"

Windows输入:

# 查看 openclaw 运行用户(不应是 SYSTEM/Admin)tasklist /v | findstr "openclaw"# 查看安全日志中是否有异常用户创建(需管理员权限)wevtutil qe Security /c:50 /f:text | findstr /i "openclaw useradd" 2>nul || echo 需要管理员权限查看安全日志

7查密匙——私钥不是墙上的装饰品

这是最后一关,也是一旦出问题最难收拾的一关。

(1)私钥文件泄露检测(CRITICAL 🚨)

Linux输入:

find ~/.openclaw -name ".pem" -o -name ".p12" -o -name ".pfx" -o -name ".key" 2>/dev/null

Windows输入:

dir /s /b %USERPROFILE%.openclaw*.pem %USERPROFILE%.openclaw*.p12 %USERPROFILE%.openclaw*.pfx %USERPROFILE%.openclaw*.key 2>nul

有输出就是有私钥文件,确认一下是不是自己放的,不是自己放的,立即处置。

(2)助记词/钱包种子短语检测(CRITICAL 🚨)

12或24个英文单词的组合,很可能是助记词。

Linux输入:

grep -rE "(mnemonic|seed phrase|seed_phrase|private.?key|助记词|钱包密码)" ~/.openclaw/memory/ 2>/dev/nullgrep -rE "\b([a-z]+ ){11,23}[a-z]+\b" ~/.openclaw/memory/ 2>/dev/null

Windows输入:

# 搜索关键词(findstr 正则支持有限,建议配合肉眼检查)findstr /s /r /c:"mnemonic seed phrase seed_phrase private.key 助记词 钱包密码" %USERPROFILE%.openclaw\memory* 2>nul

注意:复杂的 12/24 单词正则 CMD 不支持,建议手动检查 memory 目录

dir /s %USERPROFILE%.openclaw\memory*.txt这一条是 2026 年加密资产盗窃的重灾区。不是吓你,是真的发生过。

(3)会话数据库明文存储检测(MEDIUM)

Linux输入:

file ~/.openclaw/data/conversations.dbstrings ~/.openclaw/data/conversations.db | grep -iE "(password|token|api.?key|secret)" | head -10

Windows输入:

# 检查文件类型(无 file 命令,用扩展名判断)dir %USERPROFILE%.openclaw\data\conversations.db# 使用 findstr 搜索明文敏感词(strings 需安装 Sysinternals)findstr /i "password token api key secret" %USERPROFILE%.openclaw\data\conversations.db 2>nul || echo 二进制文件或无法读取

检查对话历史有没有加密存储,如果能直接 grep/findstr 出来密钥,就是明文存储。

(4)Brain/Memory 数据备份验证(MEDIUM)

Linux输入:

ls -la ~/.openclaw/memory/

Windows输入:

dir %USERPROFILE%.openclaw\memory

OpenClaw 的记忆文件里可能存储了你告诉它的所有信息,检查有没有备份机制,备份是否加密。

完成上述七项检测后,你应该已对当前 OpenClaw 实例的安全态势有了全面认知。手工核查虽耗时(约1-2小时),却是理解风险暴露面的必要过程。

三、OpenClaw 基线安全检测工具

考虑到检测复杂度与命令行门槛,我们将七式检测逻辑及更多的检查项全部脚本化,开源发布 Dejavu(逮虾户)——OpenClaw 基线安全检测工具。

对于偏好自动化检测的安全团队,Dejavu 提供了标准化的安全基线核查能力:

  • 全维度覆盖:整合七式检测逻辑,覆盖配置、组件、网络、认证、依赖、主机、数据七大风险面。
  • 结构化输出:生成分级检测报告(CRITICAL/HIGH/MEDIUM),风险项按优先级高亮标注。
  • 隐私优先:纯本地运行无依赖,检测数据不上传云端,2-5分钟完成全量扫描。
  • 社区协同:开源模式支持特征库持续更新,新发现的恶意 Skill 特征可通过 PR 即时同步至全社区。

开源不仅是免费,更是安全研究的集体防御。当攻击者以组织化方式研究 OpenClaw 漏洞时,防御端同样需要开放的协作机制。

四、结尾

OpenClaw 作为 AI Agent 基础设施,其安全风险本质上是权限边界的失控风险。七式检测框架从攻击者视角梳理了最常见的利用路径,而 Dejavu 提供了可落地的检测能力。

安全不是一次性配置,而是持续的基线维护。建议将上述检测纳入定期巡检流程,或在 CI/CD 阶段集成 Dejavu 扫描,防止不安全的 OpenClaw 实例流入生产环境。

GitHub: https://github.com/AscendGrace/Dejavu

立即行动:访问 GitHub 搜索 Dejavu,对您的 OpenClaw 实例完成一次基线核查。

转发给还没查过虾的朋友,帮他们也养条健康的虾 🦞

文章来源:山海之关

黑白之道发布、转载的文章中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途及盈利等目的,否则后果自行承担!

如侵权请私聊我们删文

END

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容