安全与风控
怀疑 OpenClaw 工作区被恶意技能入侵时…
当检测到或怀疑安装了恶意/可疑 OpenClaw 技能时,按 SEV 分级走一遍从遏制、调查、凭证轮换到恢复与上报的完整处置流程。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 60/100 ×0.15
适用场景
怀疑 OpenClaw 工作区被恶意技能特定
解决思路
- 先定级:SEV-1 确认已有数据外泄(如凭证被发往外部服务器);SEV-2 已安装恶意技能但影响范围未知(如发现仿冒拼写技能);SEV-3 发现可疑行为但未确认(如异常网络请求);SEV-4 仅违反策略、未确认恶意(如安装了权限过大的技能)。
- 立即停止技能:把它从活动配置中移除,杀掉它可能启动的后台进程;若怀疑数据外泄则断开网络。
- 保留证据:不要删除恶意 SKILL.md,另存一份副本供分析;保存 OpenClaw 会话日志;截图观察到的可疑行为;记录安装与被发现的确切时间戳。
- 隔离环境:若运行在共享系统上先把系统下线;撤销该技能可访问的 API token;更改该系统上可访问账号的密码。
- 调查技能访问过什么:读取了哪些文件(尤其是 .env、.ssh、.aws);是否发起网络请求、请求到哪些端点;是否执行 shell 命令、执行了哪些;写入或修改了哪些文件;从安装到被发现活跃了多久。
- 调查是否已外泄数据:查找带 POST body 的出站连接、指向异常域名的 DNS 查询、日志中的大数据量传输、请求头或 URL 中的 base64 编码数据。
- 排查是否被建立持久化:检查 ~/.bashrc、~/.zshrc、~/.profile(shell 启动项)、~/.ssh/authorized_keys(SSH 后门)、crontab -l(定时任务)、systemd services 与 launchd agents、package.json 中的 Node.js postinstall 脚本、.git/hooks/、VS Code 或编辑器扩展。
- 排查是否波及其他系统:若该技能有网络访问权限,检查它是否访问了内部服务、审查关联的 CI/CD 流水线、查看云厂商审计日志(如 AWS CloudTrail)、审查 git push 历史中是否有未授权提交。
- 第一优先级凭证(立即轮换):.env 文件中的 API key、云厂商密钥(AWS/GCP/Azure)、GitHub/GitLab token、数据库密码、SSH 密钥(生成新密钥并更新 authorized_keys)。
- 第二优先级凭证(24 小时内轮换):服务账号凭证、CI/CD 流水线 secret、第三方 API key(Stripe、SendGrid 等)、容器镜像仓库 token、包仓库 token(npm、PyPI)。
- 第三优先级凭证(1 周内轮换):所连接服务的个人密码、OAuth 应用 secret、加密密钥(若技能访问过)、签名证书。
- 彻底清除恶意技能的痕迹:从配置中删除 SKILL.md;检查被修改的文件并从 git 恢复;删除技能创建的文件;清理调查阶段发现的所有持久化机制。
- 加固环境:安装并运行 config-hardener 技能;为所有技能启用 sandbox 模式;复查并收紧 AGENTS.md;启用审计日志。
- 验证恢复结果:运行 credential-scanner 检查是否仍有暴露的密钥;对仍安装的所有技能运行 skill-vetter;检查 git status 是否有未提交改动;确认没有未知进程在运行。
- 撰写事件报告,至少包含:日期、严重级别、涉及技能(名称与来源)、暴露时长、可能被泄露的数据、已轮换的凭证、已采取的措施、经验教训。
- 上报恶意技能:向 ClawHub 报告要求下架;向 UseClawPro 报告以更新其数据库;若适用 CVE 则上报 OpenClaw 安全团队;若该技能被广泛使用则提醒社区。
- 按常见场景快速处置「安装了仿冒拼写技能」:按 SEV-2 处理——移除技能、轮换 .env 中的凭证、运行 credential-scanner、检查 git 历史。
- 按常见场景快速处置「技能发起异常网络请求」:按 SEV-3 处理——移除技能、检查请求里带了哪些数据、轮换任何曾驻留内存的密钥。
- 按常见场景快速处置「发现技能在修改 .bashrc」:按 SEV-1 处理——立即移除技能、从备份恢复 .bashrc、检查其他持久化点、完整轮换所有凭证。
- 按常见场景快速处置「技能要求关闭 sandbox 模式」:按 SEV-4 处理——不要关闭 sandbox,移除该技能并上报,对其它已安装技能运行 skill-vetter。
- 始终把遏制放在首位:先止血,再调查。
- 不要相信恶意技能自己的日志或输出,它可能是在撒谎。
- 在被证明清白之前按最坏情况假设:技能只要有访问权限,就假定它已经用过了。
- 全程边做边记录,后续正式报告可能需要这些材料。
- SEV-1 与 SEV-2 必须执行凭证轮换,没有商量余地。
适用边界 · 注意事项
- 只适用于 OpenClaw 的工作区与技能生态;其它平台或非技能类的入侵事件需要改用对应的应急流程。
- 没有实际入侵迹象、只是正常安装技能时不要走这套流程,应改用技能审查(skill-vetter)流程。
- 处置过程需要保全证据;如果系统已被完全接管且不具备隔离条件,应先做物理/网络隔离或交由专业应急团队,而不是在本机边用边查。