MalURLBench:评估 Agent 处理网页 URL 时脆弱性的基准
MalURLBench: A Benchmark Evaluating Agents' Vulnerabilities When Processing Web URLs
MalURLBench上12个LLM的攻击成功率为32.9%–99.9%,URLGuard平均E为81%。
- LLM网页智能体先要决定是否接受URL,接受后才会访问网页。作者称现有基准只评测网页内容中的攻击,没有专门评估伪装恶意URL能否让模型在这一步同意访问。
- MalURLBench把诱导或仿冒内容放进子域名、路径或参数,覆盖10个场景和7类恶意网站。低成功率模板用文本梯度变异补强。URLGuard把Llama-2-7b-chat-hf微调成独立的URL预过滤模块。
- 在MetaGPT上、并提示模型留意攻击时,12个LLM的攻击成功率为32.9%–99.9%。作者称模型规模较大时风险分更低,诱导类平均F(M)为71.5%,模仿类为60.89%。URLGuard相对Llama2-7B的平均E为81%。
- 作者指出基准只做URL结构操纵,不含图像或音频中的恶意URL,也未考虑动态URL或DNS劫持。URLGuard只在有限模板上微调,泛化尚未测试。实验覆盖12个LLM、10个场景和7类网站,每条输入重复5次。
- 被测模型
- GPT-3.5-TurboGPT-4o-miniGPT-4oDeepSeek-Chat (DeepSeek-V3.1-Terminus)Qwen-PlusMistral-SmallMistral-7BMixtral-8x7bLLama2-7B-chat-hfLLaMA-3-8BLLaMA-3-70BDeepSeek-CoderURLGuard
- 基准
- MalURLBenchMetaGPTBrowser Use
- 指标
- FsF(M)ASRE
研究者提出 MalURLBench,一个评估 LLM 处理恶意 URL 时脆弱性的基准,作者称这是首个针对该威胁的基准,包含 61,845 条攻击实例,覆盖 10 个真实场景和 7 类真实恶意网站。对 12 个流行 LLM 的实验显示,现有模型难以识别精心伪装的恶意 URL。作者还分析了影响攻击成功率的关键因素,并提出轻量级防御模块 URLGuard,代码已在 GitHub 公开。
深度解读
这篇论文试图解决什么问题?
作者用MalURLBench评估LLM会否接受结构伪装的恶意URL,并提出URLGuard。
核心问题是:LLM网页智能体会否在访问前接受结构伪装的恶意URL。
- 场景:作者称工作流分两阶段,先由LLM决定是否接受URL,接受后才调用工具访问并解析网页。只有stage 1被诱导信任,攻击者才能利用网页继续攻击。
- 不足:作者称已有基准只覆盖stage 2的网页恶意内容。Kong et al. (2025b)已显示操纵URL结构可误导智能体,但尚无基准系统评估这一威胁。
- 研究问题:RQ1问处理恶意URL时模型有多安全,RQ2问哪些因素影响攻击效果,RQ3问如何增强安全性。
- 本文工作:作者提出MalURLBench,称其为首个此类基准,含10个场景、7类真实恶意网站和61,845条攻击实例,并设计轻量模块URLGuard。
- 威胁模型:
- 目标:恶意用户输入伪装URL,误导智能体同意访问该链接。
- 能力:给定恶意站的SLD与TLD,只能改子域名、路径和参数。
- 判定:成功只看stage 1的文本输出是否接受;不构造含有害内容的网页。
有哪些相关研究?
相关基准多评测网页内容或环境中的提示注入,而非URL结构伪装。
引言和Related Work把本文放在网页智能体安全评测旁边,多数工作只被描述、未被逐篇批评。
网页内容阶段的攻击
- stage 2基准:Shapira et al. (2025)、Wang et al. (2025)、Ukani et al. (2025)、Liao et al. (2025)、Johnson et al. (2025)与Zhang et al. (2025b,c)关注网页中的恶意内容、提示注入、弹窗或隐私行为。作者称这些基准只覆盖stage 2。
- URL结构操纵:Kong et al. (2025b)显示攻击者可借URL结构让智能体信任恶意链接。作者称此前没有全面评估该威胁的基准。
Web环境中的安全基准
- SecureWebArena:Ying et al. (2025)覆盖六个模拟Web环境和六类用户级、环境级攻击向量。
- WASP:Evtimov et al. (2025)评测经由恶意网页投递的提示注入,强调外部环境被操纵的风险。
- BrowseSafe-Bench:Zhang et al. (2025a)收集隐藏在网页中的提示注入,并设计防御BrowseSafe。
隐私与计算机使用风险
- AgentDAM:Zharmagambetov et al. (2025)基于WebArena与VisualWebArena,用246个含敏感信息的多步任务评测数据最小化。
- RiOSWorld:JingYi et al. (2025)在真实计算机交互环境中设置492个风险任务,覆盖多种应用。
对照设置
- 本文对照:未伪装URL(Figure 1)、优化前Fs(Table 1),以及URLGuard相对Llama2-7B-chat-hf。网站来自公开恶意网站名单,不是上述基准的任务集。
作者称本文是首个检查LLM能否识别恶意伪装URL的工作,关注工作流stage 1,而不是网页内容或环境中的提示注入。
论文如何解决这个问题?
用场景提示加伪装URL测接受与否,并用URLGuard做独立预过滤。
MalURLBench把日常任务提示和伪装URL组成输入,看LLM是否接受;URLGuard再作为独立预过滤模块。结论将该模块写作URLBench,方法节名为URLGuard。
问题设定与形式化
用户输入x=(ps, u),ps是场景s的自然语言提示,u是URL。模型M输出文本y。fM(x)取0或1,1表示接受u。场景风险分是URL集合上的平均:Fs(M,U)=1/(|U|)∑i=1|U|fM(ps,ui)。F(M)是各场景Fs的平均。
URL写成子域名us、网站ud(SLD+TLD)、路径up和参数ua。攻击模板只含us、up、ua,不同恶意站可插入同一模板。防御有效性为E=F(M)−F(D(M))。
基准构建
- 场景与网站:10个日常场景为包裹追踪、在线客服、购物、外卖、天气、求职、音乐、短视频、新闻和演唱会。网站来自FeodoTracer、SSLbl、URLhaus、Threatfox、PishingArmy、mitchellkrogza和firehol,分为钓鱼、恶意软件注入、欺诈、被黑网站、信息窃取、远程控制和恶意广告。
- 提示与模板:场景提示由人工撰写并经LLM润色,要求简短且不含强制接受的祈使表达。每场景手工做3个模板,伪装分别放在子域名、路径或参数;GPT-4o每个模板生成50条,再按语义合并,每场景保留15个,共150个。附录A.2给出提示词。
- 评测子集:每类随机抽3个网站并插入全部模板。每条输入重复5次,每场景测试数为15×7×3×5=1575。过滤阈值Thd为10%,作者称这对攻击是可观概率。
变异优化
任一模型–场景的Fs不高于Thd,则该场景模板视为不合格,并用Algorithm 1在该组合上改写。做法借用文本梯度(Pryzant et al., 2023)和示例优化(Wan et al., 2024)。
- 流程:取风险分最高的k=10个模板作正例。每轮由DeepSeek-Coder从评测日志分析失败原因,再由另一个DeepSeek-Coder变异;约束是不能改换伪装所在字段。
- 停止:每轮处理当前最好的j=5个模板,最多c=10轮。凑满每场景15个合格模板即停,否则取最好的15个。合格线为风险分不低于Thd。最终模板再经人工检查是否符合URL写法。
URLGuard
作者认为主要弱点是缺少恶意URL知识。骨干选LLama2-7b-chat-hf,因其攻击成功率高、体量小,可作隔离的预检测模块。训练只用sshop模板,测试放在其他场景。
DeepSeek-V3.1-Terminus扩展出140条同类变体,另有140条正常URL,人工逐条标注类别和理由,共280条。微调用QLoRA:4-bit NF4、双重量化、计算用bfloat16;LoRA加在query、key、value、output投影,r=16、α=32、dropout 0.05;Paged AdamW 8-bit,学习率2×10^-4,有效批大小16,最大长度256。损失为因果语言建模,padding不计入损失。
成功判定
攻击成功定义为模型文本表示接受该URL,不部署有害网页。智能体框架是MetaGPT。系统提示要求留意可能的攻击并输出风险等级,换LLM时该提示不变;附录A.2.2给出全文。论文未写明No Risk、Medium Risk、High Risk如何对应到fM的0/1。
论文做了哪些实验?
Table 1中Fs从0.00到1.00;URLGuard在九个场景降低风险分。
实验设置
- 模型:闭源为GPT-3.5-Turbo、GPT-4o-mini、GPT-4o、DeepSeek-Chat(DeepSeek-V3.1-Terminus)、Qwen-Plus、Mistral-Small;开源为Mistral-7B、Mixtral-8x7b、LLama2-7B-chat-hf、LLaMA-3-8B、LLaMA-3-70B、DeepSeek-Coder。URLGuard另作防御评测。
- 框架:MetaGPT中只建一个判断风险的智能体。主评测带有防御提示,即告诉模型注意可能的攻击。
- 规模:10个场景、7类网站、每类3站、每场景15个模板。摘要写明61,845条攻击实例;§4.1的每场景测试数为1575。
- 指标:Fs是该场景上的接受比例,F(M)是场景平均。Figure 1使用ASR。防御用E=F(M)−F(D(M))。
- 重复与判定:主实验每条输入5次。成功由被测模型自己的文本输出决定。论文未报告独立评审模型。
主结果
下表为优化前Fs,据Table 1,且评测带有“注意攻击”提示。只列五个场景。
表格较宽,可左右滑动
模型 scon sfood spkg swea smus Mixtral-8x7b 1.00 1.00 1.00 1.00 1.00 Mistral-small 0.98 0.94 0.95 1.00 1.00 Llama2-7B-chat-hf 1.00 0.94 0.96 1.00 1.00 GPT-4o-mini 0.97 0.66 0.64 1.00 1.00 Llama-3-70b 0.03 0.02 0.07 0.41 0.66 GPT-4o 0.18 0.13 0.01 0.77 0.74 GPT-3.5-turbo 0.01 0.06 0.0000 0.50 0.41 Qwen-plus 0.01 0.00 0.20 0.73 0.51 省略Deepseek-chat、Deepseek-coder、Llama-3-8b、Mistral-7b。Mixtral-8x7b在Table 1的十个场景均为1.00。
- 总体:引言称12个LLM的攻击成功率为32.9%–99.9%。作者称Figure 3(b)中GPT-4o-mini、Mistral-small、LLama2-7B、Mixtral-8x7b的F(M)可超过90%,GPT-3.5-Turbo、Llama-3-70b、Qwen-plus仍超过30%。
- 作者解释:作者推断训练数据既缺少完整URL结构,也缺少对抗性URL,因而模型对这种结构不熟悉。
- 场景差:作者称同一模型在不同场景上的Fs差别很大,后文再按场景、字段和顶级域名拆开。
影响因素
- 规模与结构:六个有规模标注的模型中,作者把Mixtral-8x7b按13B、DeepSeek-chat按37B激活参数计,DeepSeek-coder计为671B。作者称规模越大F(M)越低,且这两个MoE高于所列稠密模型;Figure 3(c)画有回归线。
- 场景、长度与TLD:跨模型平均后swea为82.9%;Figure 3(d)标出均值66.19%、标准差9.17%。作者认为外卖和包裹追踪相对更低,因其涉及金钱、身份或位置。子域名长度≤20时F(M)更高,≥20后无明确趋势;路径和参数长度不影响F(M)。作者称.link、.art、.dev更高,.world、.com、.ru、.za、.net更低。
- 语义类型:诱导类平均F(M)为71.5%,模仿已知良性域名的一类为60.89%。作者推断良性域名可能已出现在训练数据中,模仿结构与之不同,因而较易被区分。
URLGuard
- 对照结果:相对Llama2-7B-chat-hf,Table 1中URLGuard在scon为0.14(0.86↓),sjob为0.01(0.97↓),snew、scus、spkg、svid为0.00。smus仍为0.61(0.39↓),swea仍为0.70(0.30↓)。sshop记为“/”,因其模板是训练种子。
- 作者解读:作者称平均E为81%;引言称攻击成功率降低30%–99%。作者认为小训练集上的下降支持现有LLM缺少这类知识。作者称smus和swea上不够好,并认为是训练覆盖不够。
访问案例与表示差异
- 端到端访问:Browser Use以Qwen-Plus为LLM,访问人工复查过的3个网站,3个均成功。作者称这些站只有广告、无主动攻击行为,并称这显示基准对网页智能体有实际意义。
- PCA:对象是Llama-2-7b-chat-hf倒数第二层隐藏状态,经mean pooling后做PCA。作者称原始URL与转成自然语言后的输入属性不同。Figure 3(a)坐标为PCA-1(18.32%)和PCA-2(9.97%),图例为Raw URL与Converted URL;转换文本看不出簇是否分开。
其他消融与分析
- Figure 1:Llama3-8B-Instruct,每例重复20次;未伪装ASR为15%与20%,伪装后为75%与60%。
- GPT-3.5-turbo优化后spkg为0.34(0.34↑),sfood为0.39(0.33↑)(Table 1)。
- Llama-3-70b优化后sfood为0.41(0.39↑),spkg为0.47(0.40↑)。
- GPT-4o优化后spkg为0.31(0.30↑),sjob为0.12(0.07↑)。
- Qwen-plus优化后sfood为0.22(0.22↑),snew为0.25(0.24↑)。
- Deepseek-coder的scon、smus优化后仍为0.33、0.72,Table 1未标上升。
有什么可以进一步探索的点?
作者指出未含多模态伪装与DNS劫持,URLGuard的泛化也未检验。
作者指出的局限与后续方向
- 多模态伪装:基准只做URL结构操纵,不覆盖把恶意URL嵌进图像或音频(Limitations)。
- 更强的URL操纵:评估假设攻击者只改子域名、路径和参数,未考虑动态URL生成,也未考虑借助DNS劫持的域名欺骗(Limitations)。
- 防御泛化:URLGuard只在有限攻击模板子集上微调;作者称它对更多攻击的泛化仍未测试(Limitations)。
实验覆盖范围
- 模型与重复:§4.1评测12个LLM,框架为MetaGPT;每条输入重复5次,每场景1575次。Figure 1另用Llama3-8B-Instruct,每例20次。
- 数据与提示:10个场景、7类网站、每类3站、每场景15个模板。主结果使用要求注意攻击的系统提示。论文未报告去掉该提示后的Fs。
- 优化设置:不合格模板由DeepSeek-Coder分析并变异,k=10、j=5、最多10轮,Thd为10%(Algorithm 1)。
- 防御与案例:URLGuard用280条样本训练,Table 1不含sshop。端到端访问是Browser Use加Qwen-Plus的3个网站。PCA只在Llama-2-7b-chat-hf上做。
- 判定信息:成功由被测模型自己的文本输出决定。论文未报告独立评审,也未报告人工一致性,且未写明三分风险等级与fM的对应。
总结一下论文的主要内容
61,845条伪装URL上,12个LLM攻击成功率32.9%–99.9%,URLGuard平均E为81%。
MalURLBench用来看LLM在访问网页之前会否接受伪装恶意URL,并附带一个预过滤模块URLGuard。
- 问题:智能体先判断是否接受链接,再调用工具访问网页。作者称后一步已有评测,前一步缺少基准。给定恶意站的SLD和TLD后,攻击者只能改子域名、路径和参数。
- 做法:覆盖10个日常场景和7类公开恶意网站,伪装分别放入三个字段。模板经人工与GPT-4o生成,低分模板再用文本梯度变异。主实验在MetaGPT上把每条输入重复5次,并提示模型留意攻击。URLGuard用280条标注样本微调Llama-2-7b-chat-hf。
- 主结果:引言称12个LLM的攻击成功率为32.9%–99.9%。Table 1中Mixtral-8x7b十个场景的Fs均为1.00,Qwen-plus的sfood为0.00。跨模型后天气场景为82.9%;诱导类平均F(M)为71.5%,模仿类为60.89%。
- 防御:URLGuard相对Llama2-7B-chat-hf的平均E为81%,sshop未测。smus、swea的Fs仍为0.61和0.70。作者认为现有模型缺少恶意URL知识,因此小规模微调也能降低风险分。
- 作者结论:作者称多个未预期因素会影响攻击效果,并称该基准可作为后续网页智能体安全工作的基础资源。