Microsoft 与 Institute of Science Tokyo 在 5 月 18 日披露了 MetaBackdoor —— 一个由输入长度、而不是由内容来触发的 LLM 后门攻击,绕过了所有去找可疑 token 或异常文本的那一整类防御。机制是:能接触到 fine-tuning 数据的攻击者,把「长输入」与「恶意输出」配对去毒化样本。模型学会:只要输入长度跨过一个门槛,就切到攻击模式。仅需 90 条毒化样本,就足以把这个行为植入。在 700+ token 的对话长度下,经由 tool call 做自主数据外传的成功率达 75%;即便经过大规模 retraining,残留率仍然约 40%。

架构上的洞察在于:信号通道选错了。现有防御 —— prompt injection 扫描器、content filter、anomaly detector —— 全都跑在输入的内容上。它们看的是 token 里写了什么。MetaBackdoor 用「输入长度」当触发信号,这意味着面向内容的防御整个看错了轴。writeup 说得直白:「content filter 没东西可滤。anomaly detector 看到的是普通文字。」这不是某个具体防御失效,而是防御类别错位。训练期的攻击,对推理期的内容巡检来说,在结构上就是不可见的。对 builder 而言,推论是:输入的形状(长度、token 类型分布、请求频率)是一个目前防御一直没在仪表化的信号通道。

门槛很关键:700+ token 正好是大多数生产环境里 agent 交互所处的典型对话长度。多轮 chat agent、长上下文code agent、RAG 流水线、tool call 循环 —— 在正常使用下都会越过这个门槛。90 条样本的毒化体量也小到足以悄悄混进 RLHF 外包方的输出、客户反馈数据集、或公开 fine-tuning 语料,而不被察觉。这把 MetaBackdoor 归到 Anthropic 的 sleeper-agent 研究和各种 dataset poisoning 论文同一类威胁里 —— 但它独有的贡献是:触发器不必是攻击者在推理时能控制的某个独特 token 或短语。触发器是输入形状的某种属性,而攻击者只要确保该应用正常使用模式跨过那个门槛就能保证触发。这让这次攻击在模型一旦部署之后,就是「打完就走」的。

周一上手:如果你用任何第三方的数据(RLHF 外包方、客户反馈、公开数据集)去 fine-tune 一个 foundation model,MetaBackdoor 给你的 supply-chain 风险模型加了一个新的威胁向量 —— 你的 foundation model 出处和你的 fine-tuning 数据集出处都需要按 vendor-risk 来处理。red-team 测试上推荐的检查方式是:在不同输入长度下做行为一致性检查 —— 用同一个 prompt 分别在 100、500、1000、2000 token 上问你 fine-tune 完的模型,看输出有没有发散。如果你的栈在用 agentic tool call,700 token 门槛就是你的线:在对话深度超过这个点之后再 fire 的 tool call,要做 human-in-the-loop 确认。更深一层的开放问题是:防御得从内容巡检,扩展到沿整个流水线监控输入形状信号。这跟今天大多数团队手里的安全栈,是相当不同的一套东西。