M3Att:无需预知查询即可投毒医疗多模态 RAG
2026 年 5 月的一篇论文在不预先知道用户查询的情况下投毒医疗图文 RAG。难以察觉的图像扰动劫持检索;由临床歧义引导的文本规避模型自我纠错——而预过滤防御几乎无济于事。
这是什么?
2026 年 5 月 11 日,来自清华大学、北京邮电大学、西北工业大学和苏黎世联邦理工学院(ETH Zürich)的研究人员发布了 M3Att(arXiv:2605.10253),这是一个针对**医疗多模态检索增强生成(RAG)**的知识投毒框架——这类流水线将医学影像(X 光、CT、MRI)与文本配对,并把检索到的证据交给大型视觉语言模型(LVLM)来生成报告或回答临床问题。
对防御者而言,真正重要的是其威胁模型,而非某个新的载荷。以往的医疗 RAG 投毒工作都假设攻击者已经知道受害者未来的查询,并能据此优化投毒条目——这一假设在生产环境中很少成立。M3Att 抛弃了它,只假设对知识库分布的有限了解,作者指出这种了解可通过对 RAG 系统的普通黑盒交互估计得到。这使该攻击成为一个贴近现实的红队基准,而非实验室里的奇技。
工作原理
M3Att 将问题分解到 RAG 流水线的两个阶段——检索与生成。此处仅在概念层面描述,不复现任何可操作参数或载荷。
阶段 正常 RAG M3Att 的目标
-------- ------------------------------ --------------------------------
检索 编码查询图像+文本,取最近 k 条 让被投毒条目被从未见过的查询检索到
生成 LVLM 读取检索到的证据,写诊断 让被投毒文本绕过模型的医学知识纠错
第一种机制是分布引导的检索劫持,它利用了医学影像的一个特性:同一解剖区域的检查在嵌入空间中聚集得非常紧密。攻击对该分布建模,挑选代理目标,并对被投毒条目的图像施加难以察觉的扰动,使其充当与查询无关的触发器——在不改变图像临床外观的前提下,对大量未知查询都出现在检索结果集中。
第二种机制是临床歧义引导的投毒,它针对的是从业者常以为可靠的一道防线:训练良好的医疗 LVLM 会纠正明显的错误。M3Att 通过将错误信息注入临床推理中低置信、确实存在歧义的区域来绕过这一点——例如”不能排除恶性”之类的谨慎措辞,把模型推向假阳性的判断。由于注入的论断看似合理而非明显错误,模型不会自我纠错,输出便”在临床上看似合理却是错误的”。
在五个 LVLM 和五个数据集上,检索劫持成功率在投毒比例约 0.08 时接近 ~100%,即使在较低投毒预算下也有明显提升。
为何重要
这是一种针对知识库完整性的攻击,而非提示注入伎俩,因此常见的输入/输出护栏看不到它。当查询到来时,被投毒内容早已位于受信任的语料库之中。
医疗场景让影响变得具体:被污染的 RAG 存储可能把诊断或治疗建议导向一个错误却可信的结论,而”歧义引导”的设计恰恰击破了”模型自身训练会过滤掉错误证据”这一直觉。用 MITRE ATT&CK 的话说,这更接近供应链/数据暂存问题——污染发生在智能体推理的上游,而那里恰是监控最薄弱之处。任何把外部或社区贡献的医学知识纳入检索存储的组织,都应把该存储本身视为一个攻击面。
防御
论文对蓝队最有用的发现是哪些防御失效了:三种检索前的语料过滤——图像聚类、文本聚类以及图文跨模态一致性——使检索成功率”基本不变”,而更强的检索时检查(困惑度过滤、异常检测、基于分数的剪枝,针对 CLIP 检索器)也未能可靠地阻止它。简单的分布启发式不够用。实用加固措施:
- 像管理代码一样治理语料库。 限制对知识库的写入权限,要求每个图文对都有来源与签名,并在外部或社区贡献入库之前而非之后进行审查。
- 先佐证再信任。 对高风险输出,要求多个独立检索来源相互印证,并标记仅依赖单一条目的诊断。
- 临床决策保持人类在环。 把 RAG 输出当作决策支持而非权威;确保由合格临床医生复核证据链,尤其当模型倾向于给出严重结论时。
- 监测分布漂移与过度出现。 留意在不相关查询中被异常频繁检索的条目——与查询无关的触发器会表现为一条”永远相关”的条目。
- 对自己的存储做红队测试。 用 M3Att(代码已公开)等框架对预发布副本进行测试,在攻击者动手之前先衡量自身的真实暴露面。
状态
| 项目 | 参考 | 日期 | 备注 |
|---|---|---|---|
| M3Att 论文 | arXiv:2605.10253v1 [cs.CR] | 2026-05-11 | 清华、北邮、西工大、ETH Zürich |
| 代码 | github.com/ypr17/M3Att | 2026-05 | 公开,用于红队测试 |
| 范围 | 5 个 LVLM × 5 个数据集,4 项医疗任务 | — | 报告生成、医疗问答 |
| 已测防御 | 检索前 + 检索时过滤 | — | 检索 ASR”基本不变” |
这是一项红队研究成果,而非已披露的产品漏洞——没有补丁可打。其启示在于架构层面:在医疗 RAG(以及一切高风险 RAG)中,检索语料库的完整性是一等的安全属性,而模型自身的知识并不是抵御可信错误信息的可靠后盾。
注:本文出于防御目的探讨敏感(医疗健康)主题下的 AI 安全研究,不构成医疗建议。