据 X 用户 sekuri(@sekurimrs)介绍,微软研究团队公开 Lazarus 攻击,研究者通过直接改写不到 10 个平时不活跃的神经元,在模型权重中植入定向触发的后门。
该帖称,模型在普通提示下表现正常,也可通过标准评测,隐藏触发条件出现后才输出攻击者预设的命令。触发条件可以与日期相关,例如进入 2027 年。
当模型被接入具备终端或工具权限的 Agent 时,这类定向输出可能进一步进入工具执行流程,利用已经授予代理的权限采取行动。这一风险将模型权重交付环节的来源完整性,与部署后的代理权限联系起来。
原帖留影
我们习惯把模型文件当成“数据”,下载以后跑几个基准,答案正常,就觉得可以接进 Agent。微软研究团队刚公开的 Lazarus 攻击提醒了一件事:模型权重本身也可以像可执行依赖一样藏后门。 研究者没有重新训练模型,只重编程了不到 10 个平时不活跃的神经元。模型在普通提示下表现正常,也能通过标准评测;等隐藏触发条件出现,它才吐出攻击者预设的命令。 触发器甚至可以很普通,比如日期进入 2027 年。一个有终端或工具权限的 Agent 看到触发条件后,可能在正常任务中输出下载并执行代码的命令,然后用你给它的权限继续做事。 这类攻击麻烦的地方,是常规问答评测几乎专门测试“平时表现”,后门却只在极窄的条件下出现。研究里一个神经元可以注入一个 token,多个神经元串起来就能组成更长的载荷。 这不是“开源权重不安全”的简单结论。只要攻击者能改写你最终拿到的 checkpoint,开放还是闭源都不是核心。真正的问题是:你从哪拿到它,中间有没有被替换,部署后给了它多大权限。 防护要分两层。 模型层: 只从可追溯的发布方获取; 核对哈希、签名和版本; 能拿到声明的基础权重时做差异比较; 把模型扫描当成线索,不把“没扫到”当安全证明。 Agent 层: 默认不给任意 shell 和长期密钥; 下载、执行、删除、付款等动作单独审批; 记录工具调用和对外网络请求; 把高风险任务放在隔离环境; 定期用异常日期、奇怪文件名和网页注入做红队测试。 微软也强调,没有扫描能百分之百证明模型安全。来源完整性和运行时最小权限,必须一起做。 以后部署模型,不只是问“它答得准不准”,还得像审查软件供应链一样问一句:我拿到的,真的是发布者交付的那一份吗?@sekurimrs在 X 查看原帖发布于 2026/11/12 16:42(北京时间)