OpenClaw AI Agent存在指令注入与数据泄露风险
主题: 两安全团队演示新型攻击手法,利用普通输入诱使OpenClaw代理执行恶意代码或泄露敏感数据
核心发现: 本周两项独立研究显示,自托管的AI代理OpenClaw可被普通外观的输入(共享联系人、vCard、位置标签、普通邮件)操控,执行攻击者控制的代码或外发敏感数据。
一、Imperva:共享联系人中的隐藏指令
Imperva研究员Yohann Sillam发现,OpenClaw在处理消息数据时存在设计缺陷。当代理将共享联系人、vCard或位置信息传递给大语言模型时,系统会将对象直接平铺为提示文本内联内容,未做不可信数据边界标记。攻击者利用此机制,在联系人的name字段或vCard的全名字段中注入恶意指令(如“下载并运行某脚本”),模型无法区分真实姓名与注入指令。由于WhatsApp及接收应用在屏幕上截断显示,受害者完全看不到载荷。
在针对Gemini 3.1 Pro(预览版)的测试中,代理成功执行了隐藏指令。OpenClaw已发布2026.4.23版本修复该问题:将联系人名称、vCard字段及位置标签移出提示正文,纳入独立的“不可信元数据”通道。Imperva警告,若未进行沙箱隔离,一条携带隐藏指令的广泛共享内容可能悄然入侵所有摄入该内容的代理。
二、Varonis:普通邮件实现“代理钓鱼”
Varonis威胁实验室由Itay Yashar领导的研究,在OpenClaw上构建测试代理Pinchy,注入模拟业务数据及假秘密,针对Gemini 3.1 Pro与OpenAI Codex GPT-5.4进行四次钓鱼模拟。他们将此称为代理钓鱼(agent phishing):通过正常渠道发出看似可信的请求,代理在检查发送者身份前即执行。
测试结果:
-
首次失败:一封冒充团队负责人“Dan”的Gmail外部邮件,以生产事故为由请求临时访问权限。代理找到凭证并以明文转发模拟的AWS IAM访问密钥、数据库连接串及SSH凭证。
-
第二次失败:一封常规语气请求“每周客户导出”用于QBR汇报,代理外发了一个包含247家企业客户、联系人与合同价值的模拟数据集。
-
技术威胁表现较好:代理能识别虚假礼品卡钓鱼页面并拒绝提交真实凭证;对伪装成考勤应用的恶意OAuth授权页面,经检查重定向目标后判定可疑并中止。
结论:代理识别恶意URL和伪造登录门户的能力优于多数人类,但在社会工程判断上(如同事异常时间索要凭证)表现糟糕。乐于助人的天性成为攻击面。OpenAI Codex GPT-5.4比Gemini 3.1 Pro更谨慎,但两者均被社交借口攻破。
三、漏洞共性分析
Varonis引用Simon Willison的“致命三重奏”理论:OpenClaw同时具备读取私密数据、接收不可信内容、向外发送数据三种能力,因此一个被污染的联系人与一封友好邮件最终殊途同归。
另一项独立分析(InfoSec Write-ups)将OpenClaw过往公告转化为静态分析规则,在其Slack、Discord、Matrix、Zalo、Microsoft Teams通道扩展中发现五个相同漏洞:启动代码通过可变显示名称(而非稳定ID)解析每个通道的允许列表,攻击者只需将自己的显示名称改为允许用户即可混入列表并操控代理。OpenClaw已修复。
四、风险警示与应对建议
荷兰数据保护局(Autoriteit Persoonsgegevens)已明确建议:不要在存储敏感数据的系统上运行OpenClaw,因其存在数据泄露与账户接管风险。
行动措施:
-
立即更新:所有运行OpenClaw的用户升级至 2026.4.23或更高版本。
-
架构控制(Varonis建议四项):
-
将代理的指令文件作为强制、版本化策略,而非建议。
-
出站邮件需设网关:禁止首次向陌生地址发送内容,防止被劫持代理从可信账户转发钓鱼邮件。
-
连接器访问权限需与触发任务的信任级别挂钩,避免处理外部邮件的收件箱同时拥有读取整个CRM的权限。
-
最高风险动作(如转发凭证、转移资金)必须等待人工确认。
Imperva与Varonis指向同一认知模型:应将代理视为拥有系统访问权限、缺乏异常直觉的初级员工,而非安全工具。当前解决方案仍为特定补丁与防护栏。更根本的问题依然待解:一个足够有用、能够处理邮件和执行命令的代理,本质上必须信任输入并乐于助人——目前尚无通用解决方案。
夜雨聆风