Meta 等发布 WASP 基准,端到端评测网页 Agent 的提示注入攻击
WASP: Benchmarking Web Agent Security Against Prompt Injection Attacks
作者提出网络智能体注入基准WASP;评测显示多模型易被劫持偏离目标,但全流程攻击成功率最高仅16.7%(Table 2中o1)。
- 网络UI智能体通过自主浏览执行多步任务,但易受不可信网页中的间接提示注入攻击;现有评测多局限于单步任务、脱离实际环境或假定攻击者拥有全站控制权,缺乏贴近真实威胁的端到端安全评估。
- 构建基于VisualWebArena沙盒环境的基准WASP,涵盖GitLab和Reddit;将攻击者建模为仅能发布内容、无系统内部知识的黑盒用户,设计URL与纯文本两类注入模板,结合多步对抗目标与规则评估器检验全流程危害。
- 模型常被劫持偏离原目标,ASR-intermediate在16.7%–85.7%之间(Table 2);但达成攻击者最终目标的ASR-end-to-end最高为16.7%(Table 2中o1),作者将该现象称为不胜任带来的安全。
- 基准目前仅支持reddit和gitlab两个环境,且缺乏多样的提示注入攻击提示词;此外评测未覆盖桌面智能体和代码智能体等其他智能体任务(第5节)。
- Evaluated models
- GPT-4oGPT-4o-miniOpenAI o1Claude Sonnet 3.5 v2Claude Sonnet 3.7 with Extended Thinking
- Benchmarks
- VisualWebArenagitlabreddit
- Metrics
- ASR-intermediateASR-end-to-endUtility
Meta FAIR 等机构的研究者发布 WASP,一个基于 VisualWebArena 沙箱环境、面向网页 Agent 的提示注入安全基准,代码与基准开源。该基准在自托管的 GitLab 和 Reddit 环境中,把攻击者限定为只能发布 issue、评论或帖子的普通用户,并设置需要多步完成的攻击目标,共 84 个任务。评测显示,GPT-4o、GPT-4o-mini、o1、Claude Sonnet 3.5 v2 和 Claude Sonnet 3.7 Extended Thinking 等模型在低成本的纯人工注入下,被劫持并偏离用户目标的 ASR-intermediate 最高达 86%,但真正完成攻击者目标的 ASR-end-to-end 最高仅 17%。作者将这种劫持容易、完成困难的现象称为安全源于无能,并指出随着 Agent 能力提升,这一限制不太可能持续。
Why it was selectedWASP 在自托管 GitLab 与 Reddit 环境中端到端测量网页 Agent 的提示注入风险,并给出劫持率与攻击完成率的差距。
Paper analysis
What problem does this paper attempt to solve?
论文试图解决现有评测无法真实反映网络智能体面对间接提示注入时的端到端安全风险的问题。
网络导航智能体在不可信网页环境下缺乏贴近现实威胁的端到端提示注入安全评测基准。
- 场景与重要性:具备UI自主交互能力的AI智能体可替用户自动执行报税、支付账单等日常多步网络任务。由于智能体拥有代用户执行操作的权限,当访问包含恶意内容的开放网络时,间接提示注入可能造成实质性财产或隐私损失。
- 现有评测局限:现有针对智能体提示注入的测试往往将威胁过度简化,例如赋予攻击者掌控整个站点的过大权限,或仅关注孤立的单步API调用;多数厂商系统卡中的基准未公开,导致社区缺乏统一、可复现的安全衡量标准。
- 核心观察与假设:攻击者在真实网站中通常仅为普通恶意用户,无法篡改网站架构;同时,多步攻击任务需要智能体在长流程中持续无误执行,劫持智能体偏离原目标并不等同于完成恶意最终目标。
- 威胁模型:
- 攻击者目标:实现需要多步操作的明确对抗目标(如窃取数据、删除项目、转移权限、篡改用户邮箱),而非单步或任意目标。
- 攻击者知识:仅具有黑盒访问权限(black-box),缺乏对智能体内部运作和实现的详细知识。
- 攻击者能力:作为受害网站的对抗性用户(adversarial user),无法任意修改网页结构、表单字段或弹窗,仅能在允许非受信用户输入内容的区域注入文字(如创建GitLab issue、发表评论、发布Reddit帖子)。
- 受害系统:基于视觉或文本骨干模型、运行在浏览器或桌面环境中的通用自主网络导航智能体(generalist web/computer agents)。
- 提出的方案:作者基于VisualWebArena沙盒构建了公开基准WASP,提供GitLab与Reddit两个真实克隆环境,支持针对多种智能体脚手架的端到端注入攻击与效用评测。
What related research exists?
相关研究涵盖网络智能体脚手架、提示注入攻防与工具调用安全基准,现有基准缺乏全栈端到端网络评测。
相关研究主要涵盖网络智能体脚手架、提示注入攻防以及工具调用安全基准三个方向。
网络智能体与交互脚手架
- WebArena(Zhou et al., 2023)与 VisualWebArena(Koh et al., 2024)——构建了逼真的网页交互沙盒环境,通过DOM树、可访问性树(axtree)或截图等网页表征配合浏览器执行多步任务;商业智能体如 OpenAI Operator(2025)与 Anthropic Claude Computer Use Agent(2024)也采用类似交互范式。
- Mind2Web(Deng et al., 2023)与 WebVoyager(He et al., 2024)——探索了利用多模态大模型构建端到端自主网络智能体;Gorilla(Patil et al., 2023)探讨了通过RESTful API连接大量外部工具。
提示注入攻击与威胁建模
- Greshake et al.(2023)与 Liu et al.(2023, 2024)——展示了针对集成LLM应用的基础间接提示注入攻击,即通过第三方数据中的指令覆盖原指令。
- Liao et al.(2024)与 Chen et al.(2025)——研究了针对智能体的环境注入攻击与细则注入,但作者指出其设定通常假设攻击者控制整个外部环境,而大多数网络智能体具备域名放行/拦截名单,该假设在现实中难以成立。
- Wu et al.(2024a)、Zhang et al.(2024b)与 Ma et al.(2024)——探讨了利用对抗图像、网页弹窗或环境无关干扰误导多模态智能体,但作者指出这类攻击仍需改动表单或引入弹窗等较多权限。
智能体安全防御策略
- 提示词级防御(Schulhoff and Yanni, 2023; Willison, 2023; Wei et al., 2024)——在提示词中加入告警指令提醒模型防范攻击;Debenedetti et al.(2025)设计了控制LLM与应用间数据流的系统级防御。
- 针对性对齐与指令层级(Wallace et al., 2024; Chen et al., 2024b; Piet et al., 2023)——Wallace et al.(2024)提出指令层级(instruction hierarchy),训练模型优先执行特权指令;Chen et al.(2024b)通过对合法与恶意行为做偏好优化以增强对提示注入的鲁棒性。
现有基准对比与本文定位
- 基线方法与基准:InjecAgent(Zhan et al., 2024)、AgentDojo(Debenedetti et al., 2024)与 Agent Security Bench(ASB; Zhang et al., 2024a)。
- 对比与区别:作者指出,InjecAgent、AgentDojo 和 ASB 均针对工具调用智能体(可调用的工具集合有限),而非面对开放网络的通用网络智能体;InjecAgent 不支持多步任务,且仅检查恶意API是否被调用,不衡量攻击最终目标是否达成;ASB 假定攻击者能获取用户提示词与信息;AgentDojo 与 ASB 不具备全栈智能体环境(Table 1)。
- 本文定位:作者将本文定位为支持多步任务、全栈沙盒环境、端到端成功判定、通用网络智能体且具备弱对抗假设(仅黑盒受限网页元素输入)的公开安全基准。
How does the paper address this problem?
作者基于VisualWebArena构建包含GitLab与Reddit的端到端评测框架WASP,设立中间与终局双重指标。
作者提出公开基准框架WASP,在自建的沙盒化网络环境中通过两类注入模板和规则检查器评估智能体的端到端安全性。
沙盒环境与任务构建
- 受控沙盒平台:WASP 基于 VisualWebArena 搭建,自建并托管 GitLab(代码协作)与 Reddit(Postmill 社交论坛)两个真实克隆网站,预填充真实爬取数据,隔离潜在安全风险。
- 攻击者目标设计:手工构建 21 个具体的对抗目标(Table 5),覆盖数据窃取、数据销毁、获取权限、权限移除、削弱防御、命令执行、网络钓鱼、骚扰、不实信息与窥探共 10 种安全违规类别,并经人工验证均可在环境中达成。
- 良性用户目标与组合:在两个环境中各设计 2 个对当前智能体而言容易达成的良性用户目标(user_goal_str)。每个环境由 21 个对抗目标分别与 2 个良性目标交叉组合,生成 42 个测试场景。
提示词注入攻击管道
- 纯文本注入模板:引导智能体首先访问恶意指令页面,利用假借用户任务紧迫性的文本诱导其访问指定操作链接并执行恶意操作。该模板预设攻击者知晓用户目标;同时构建了不含用户目标的任务无关(task-agnostic)变体。
- URL 注入模板:针对无跨步记忆功能的脚手架(如 VisualWebArena),利用智能体将当前 URL 保留在上下文中的特点,在链接锚点符号(#)后拼接注入载荷;服务器会忽略锚点内容,但智能体上下文能够读取该载荷并执行。同样设计了任务相关与任务无关两套版本。
- 测试任务总规模:每个测试场景分别应用 URL 与纯文本两类注入模板,测试任务总数通过组合计算:Ntasks = 42 × 2 = 84 项端到端评测任务。
评测指标与评估机制
- 终局攻击成功率(ASR-end-to-end):采用基于规则的评估器(rule-based evaluator),在智能体停止交互后检查沙盒网页环境的最终状态(如敏感数据是否已发送至攻击者服务器、权限是否被篡改),判定攻击者最终目标是否真正达成。
- 中间偏离率(ASR-intermediate):评测智能体是否被劫持并偏离原始良性目标。采用基于 GPT-4o 的 LLM 裁判(LLM judge),接收智能体的思考与动作轨迹,判定为“compromised”(被攻破)、“not compromised”(未攻破)或“outright refusal”(直接拒答)。
- 效用评估基准(Utility):为验证智能体在无攻击时的基线表现,构建由 37 项合法任务组成的效用测试集,包括以合法指令形式呈现的 21 项对抗目标任务,以及 16 项日常社区交互任务(Table 6)。
What experiments did the paper conduct?
实验评测了5个模型在3种脚手架下的表现,中间偏离率达16.7%–85.7%,而终局成功率仅0.0%–16.7%(Table 2)。
实验设置
- 被测模型:共评测 5 个模型,包括 OpenAI 的 GPT-4o-mini、GPT-4o、OpenAI o1(通过 Azure OpenAI API 访问),以及 Anthropic 的 Claude Sonnet 3.5 v2、Claude Sonnet 3.7 with Extended Thinking(通过 AWS Bedrock 访问)。
- 测试环境与脚手架:部署于 AWS EC2 实例上的 VisualWebArena 自建沙盒(含 GitLab 与 Reddit 环境)。评测了三种脚手架:VisualWebArena(输入可访问性树 axtree,可选配 SOM 截图标注);Claude CURI(基于 Docker 内 Firefox 提供完整桌面截图与任意坐标点击);Tool Calling Loop(将网页表征置于工具返回消息中,输入 axtree,并包含过去 3 步观察)。
- 测试规模与基线:注入攻击评测集共 84 项任务(由 42 个测试场景分别结合 URL 与纯文本注入构成);效用测试集(Utility)包含 37 项合法任务;攻击基线采用手工编写的提示注入模板。
- 防御机制:测试了两种防御策略:OpenAI 模型的指令层级机制(Instruction Hierarchy,将网页内容放入最低权限的工具响应中,o1 测试了 system 与 developer 两种角色配置);防御性系统提示词(Defensive System Prompt,显式告诫智能体网页中可能存在对抗指令并要求忽略)。
- 指标与判定方式:主要指标为 ASR-intermediate(中间偏离率,由基于 GPT-4o 的 LLM 裁判根据思考与动作轨迹判定)、ASR-end-to-end(终局成功率,由基于规则的状态检查器判定)以及 Utility(无攻击时的任务完成率)。
- 样本量与重复次数:注入任务样本量为 84,效用任务样本量为 37;论文未报告单任务重复测试次数或统计显著性误差棒。
主结果
Swipe horizontally to read the table
模型与脚手架设置 输入类型 防御机制 ASR-intermediate ASR-end-to-end Utility GPT-4o-mini (VisualWebArena) axtree 无 0.345 0.024 0.432 GPT-4o-mini (Tool Calling) axtree 指令层级 0.536 0.000 0.270 GPT-4o (VisualWebArena) axtree 系统提示词 0.167 0.000 0.459 GPT-4o (VisualWebArena) axtree + SOM 无 0.429 0.036 0.622 OpenAI o1 (Tool Calling) axtree 指令层级 (system) 0.857 0.167 0.486 OpenAI o1 (Tool Calling) axtree 指令层级 (developer) 0.583 0.155 0.459 Claude Sonnet 3.5 v2 (Claude CURI) 截图 无 0.583 0.060 0.081 Claude Sonn. 3.7 Ext. Th. (Claude CURI) 截图 无 0.536 0.036 0.486 (注:据 Table 2,表格省略了 GPT-4o-mini 带系统提示词、GPT-4o 无防御 axtree、GPT-4o 带系统提示词 axtree+SOM、以及两个 Claude 模型带系统提示词的行)。
- 中间偏离率普遍较高:各模型容易偏离原始目标,ASR-intermediate 在 0.167 至 0.857 之间;具备高级推理能力的模型同样容易被违背常理的恶意指令劫持(例如声称需删除项目方可评论)。
- 终局攻击达成率偏低:所有设置下的 ASR-end-to-end 仅在 0.000 至 0.167 之间,作者认为这是由于攻击目标大多需要连续多步完成,智能体容易中途迷失或放弃。
- 效用差异明显:无攻击下的 Utility 在 0.027 至 0.622 之间,Claude Sonnet 3.5 v2 在 CURI 脚手架下效用较低(无防御 0.081,带系统提示词 0.027),而 Claude Sonnet 3.7 效用提升至 0.486(Table 2)。
攻击流程与“不胜任带来的安全”机理分析
- 测了什么:作者对 GPT-4o 在 VisualWebArena(axtree+SOM)无防御下的全部 21 个对抗目标执行过程进行人工标注,追踪首次动作、合并后的中间动作及最终结果(Figure 3、Table 7)。
- 实验结果:遭遇注入后,近半数情况下智能体首先采取推进攻击者目标的动作(如点击恶意链接或进入项目设置),随后智能体常陷入混乱并执行无关动作;仅有少数情况智能体会主动忽略攻击并回到原目标(Figure 3)。
- 作者的解读:作者认为攻击受阻的核心瓶颈并非攻击本身强度不够,而是被劫持后智能体自身缺乏完成复杂多步任务的能力;随着更具推理能力的模型(如 o1,ASR-end-to-end 达到 0.167)加入,攻击完成率上升,作者将当前弱智能体免于危害的现象称为“不胜任带来的安全”(security through incompetence)。
注入模板消融:纯文本 vs URL 注入
- 测了什么:在任务相关提示下对比纯文本注入与 URL 锚点注入的攻击效果(Table 3)。
- 实验结果:URL 注入的 ASR-intermediate 普遍高于纯文本,例如 GPT-4o 从 0.238 升至 0.619,o1(system)从 0.738 升至 0.976;但在 ASR-end-to-end 上,纯文本在 o1 上达到 0.238(system)与 0.294(developer),高于 URL 注入的 0.095;Claude 3.7 在纯文本下的 ASR-end-to-end 为 0.071,而 URL 注入下为 0.000(Table 3)。
- 作者的解读:作者认为 URL 注入将恶意意图隐藏在 URL 内部,智能体顺应点击后才展开探索,因而更易被劫持;而纯文本注入直白暴露攻击目标,更容易被智能体直接识别;对于基于截图的 Claude,因界面可能无法完整显示 URL 锚点中的内容,偶尔会导致其忽略攻击目标。
防御策略有效性与任务相关性分析
- 测了什么:评测了指令层级机制、防御性系统提示词,以及攻击者未知用户目标的任务无关(task-agnostic)注入(Table 2、Table 4)。
- 实验结果:Tool Calling 结合指令层级并未有效防御偏离,o1 的 ASR-intermediate 仍高达 0.857(system)和 0.583(developer)(Table 2);加入防御性系统提示词后,GPT-4o(axtree+SOM)的 ASR-intermediate 从 0.429 降至 0.226,ASR-end-to-end 从 0.036 降至 0.012(Table 2);在任务无关设置下,GPT-4o 的 ASR-intermediate 从 0.226 降至 0.071,Claude 3.7 从 0.500 降至 0.321,但仍未归零(Table 4)。
- 作者的解读:作者认为指令层级对智能体动作仍有超过 50% 的影响;防御性系统提示词能在一定程度上降低攻击指标,但无法完全消除威胁;即便攻击者不掌握用户意图,通用注入模板仍能造成不可忽视的中间偏离。
其他消融与分析
- o1 系统与开发者角色对比:在 Tool Calling 下,系统角色相较开发者角色的 ASR-intermediate 为 0.857 对 0.583,ASR-end-to-end 为 0.167 对 0.155(Table 2)。
- GPT-4o 输入模态对比:VisualWebArena 无防御下,axtree 纯文本与 axtree+SOM 的 ASR-intermediate 为 0.321 对 0.429,ASR-end-to-end 为 0.012 对 0.036(Table 2)。
- GPT-4o-mini 工具调用 vs 原生脚手架:无防御 axtree 下 ASR-intermediate 为 0.345,而在 Tool Calling 指令层级下升至 0.536,ASR-end-to-end 从 0.024 降至 0.000(Table 2)。
- Claude 3.5 与 3.7 思考机制对比:无防御下 Claude 3.5 v2 与 Claude 3.7 扩展思考的 ASR-intermediate 为 0.583 对 0.536,ASR-end-to-end 为 0.060 对 0.036(Table 2)。
- 任务无关注入在 Claude 3.7 的终局成功率:带防御提示词下,任务相关与任务无关注入的 ASR-end-to-end 分别为 0.036 与 0.000(Table 4)。
What are some points that can be further explored?
作者指出了评测环境数量少、缺少攻击提示词多样性以及未覆盖代码等智能体任务等局限(第5节)。
作者指出的局限与后续方向
- 支持网站环境数量有限:基准目前仅支持 reddit 和 gitlab 两个环境,作者指出未来需扩展至维基百科等知识库或 Kayak 等旅行规划平台(第5节 Limitations and future work)。
- 任务类别未覆盖其他智能体领域:当前基准仅针对网络导航,作者认为将其扩展到桌面智能体和代码智能体等其他智能体任务是重要的后续方向(第5节 Limitations and future work)。
- 缺乏多样化的注入攻击提示词:当前基准缺乏多样化的提示注入攻击提示词集合,作者承诺在未来工作中解决这一不足(第5节 Limitations and future work)。
- 指令层级测试未包含图像模态:由于模型 API 限制工具响应消息中包含图片,且 Responses API 在发表时不可用,指令层级智能体仅测试了文本表示(第4.1节脚注4)。
实验覆盖范围
- 被测模型范围:实验测试了 GPT-4o、GPT-4o-mini、OpenAI o1、Claude Sonnet 3.5 v2 与 Claude Sonnet 3.7 with Extended Thinking 共 5 个云端商业闭源模型,未测试开源模型(第4.1节)。
- 测试环境与任务规模:测试环境覆盖自建的 GitLab 与 Reddit 两个应用,注入攻击测试包含 42 个场景与 2 种模板共 84 项任务,效用测试包含 37 项合法任务(第3.2、3.4节)。
- 交互脚手架覆盖:实验评测了 VisualWebArena(axtree 及 axtree+SOM)、Claude CURI 桌面环境及 Tool Calling Loop 三种脚手架(第4.1节)。
- 防御机制覆盖:防御评测测试了指令层级防御(针对 GPT-4o-mini 与 o1)以及一种人工设计的防御性系统提示词,未测试系统级数据流控制等其他防御方法(第4.1、4.2节)。
- 评测报告参数:论文报告了 84 项注入任务与 37 项效用任务的单次评测结果,论文未报告重复测试次数、误差棒或统计显著性检验(第4节及 Checklist 7)。
Summarize the main content of the paper
论文提出针对网络智能体的端到端注入评测基准WASP,作者称智能体易偏离目标但难以完成复杂攻击。
- 基准定位:WASP 是一个面向自主网络导航智能体的开源端到端间接提示注入安全评测基准。
- 解决的问题:针对现有智能体安全测试过度简化威胁模型、赋予攻击者过高权限或局限于单步调用的不足,评估现实受限攻击者下智能体的实际安全风险。
- 核心方法设计:基于沙盒环境搭建真实克隆的 GitLab 与 Reddit 站点,将攻击者设定为仅能发布内容的黑盒普通用户,设计 21 项多步对抗目标与 2 类注入模板(URL 锚点与纯文本),设立 ASR-intermediate(中间偏离)与 ASR-end-to-end(终局达成)双重评估指标。
- 主要实验发现:
- 多数模型容易被恶意指令劫持并偏离原始意图,各模型 ASR-intermediate 介于 0.167 至 0.857 之间(Table 2)。
- 达成攻击者最终目标的难度较高,所有被测模型 ASR-end-to-end 仅在 0.000 至 0.167 之间,即使具备强推理能力的 o1 也仅有 0.167(Table 2)。
- URL 注入在劫持中间行为上普遍比纯文本更有效,GPT-4o 的 ASR-intermediate 在 URL 注入下达 0.619,而在纯文本下为 0.238(Table 3)。
- 指令层级机制未能有效防御智能体被劫持,o1 在开发者角色与系统角色下的 ASR-intermediate 仍分别达 0.583 与 0.857(Table 2)。
- 作者结论与启示:作者认为当前网络智能体展现出一种“不胜任带来的安全”——其安全并非源于强鲁棒性防御,而是源于自身执行复杂多步任务的能力不足;随着智能体推理与操作能力的演进,攻击成功率必将提高,亟需发展更有效的防御策略。