








本文五节:修复公开等于图纸公开 → 27 天窗口里挤进五伙人 → AI 把哪一段压短了 → Google 双周周期的回应与局限 → 轮到我们这边,值钱的动作
赶时间直接跳末节拿排查动作;想先看懂“修复了为什么还危险”从第一节按顺序走。
关键词:CVE-2026-85046 | BlueMoon | 补丁差 | patch gap | Chromium | AI 武器化 | CISA KEV
这篇文章回答三个问题:修复代码都已经公开在源码仓库里了,用户为什么反而更危险?AI 在补丁到货前的这段窗口里,到底改变了哪一环?企业防守这边,真正值钱的动作是哪几个?
修复代码合进公开仓库的那一刻,等于给全世界的攻击者同时发了图纸和开工令。我前两天翻 Proofpoint 的 BlueMoon 分析报告,翻到利用页代码里内嵌的开发日期字符串时,人愣在屏幕前:8 月 27 日。往回算,8 月 4 日外部研究员把一个 V8 类型混淆报给 Chromium,8 月 7 日修复 commit 合进公开源码树——第二十天,武器造完了。再往后排:8 月 28 日第一发攻击上线,9 月 3 日到 4 日 Chrome 正式版 152.0.7977.82/.83 才把补丁送到用户机器。9 月 4 日到 9 日,CISA 把这条攻击链上的三个 CVE 全部收进 KEV,联邦机构的修复截止日定在 9 月 18 日。
我一开始以为这是又一份"在野利用"通报,扫到日期对不上才回头细看:攻击比正式版补丁早了六天开打,比修复公开只晚二十一天。顺序是反的,这个反序才是整件事的题眼。补丁差(patch gap)这个词行业里喊了好几年,多数时候它是个抽象的发布工程话题,这一回它有了具体的日期、具体的受害者和前后脚开打的五伙人,值得从头到尾拆一遍。
先回答第一个问题:修复公开了,为什么危险不减反增。答案藏在 Chromium 的发布模型里。它是开源项目,源码仓库实时公开,任何 fix commit 合进主干的那一刻,全世界都能拉到完整 diff。但用户拿补丁走的是另一条路,Stable 渠道按里程碑节奏发版,从源码合入到正式版推送,中间隔着打包、测试、灰度一整圈流程。这一次,8 月 4 日报告进来,8 月 7 日修复进树,分诊和工程都不算慢,慢的是发版:到 9 月 3 日 Stable 版 152.0.7977.82/.83 推送,中间空了 27 天。
把这 27 天切开看更有意思。8 月 4 日到 7 日那三天是响应流程的正常节奏,研究员报告、工程师定位、修复合入,三天走完,放在哪家厂商都算快。8 月 7 日到 9 月 3 日那 27 天,消耗的全是发布工程时间,跟漏洞难度已经无关。两个时间段性质完全不同,防守方要对付的是后一段,攻击者吃的红利也全在后一段。
对攻击者来说,这 27 天是一段完美的真空期。放在平时,挖一个 V8 类型混淆要自己 fuzz、自己逆、自己绕弯路,投入以月计。现在补丁把答案直接标出来了:diff 里被改动的那些类型检查,就是缺陷的确切位置;修复思路反过来读,就是利用的入手点。等于把保险柜的焊缝图纸贴在柜门上,还附赠二十多天的从容工期。修复 commit 公开的那一刻,这处缺陷的性质就变了,从没人知道的洞,变成全世界都知道、用户却还没修的洞,对后一种,攻击者手里的信息优势是压倒性的。
类型混淆这个缺陷类型也得交代一句。V8 引擎里每个对象靠一张 map 描述自己的内存布局,类型混淆就是骗引擎把一块内存按错误的 map 去解读,越界读写顺着就来了。补丁通常补在 map 校验的缺口上,diff 一公开,缺口在哪个函数、哪条对象转换路径上,等于直接点名。逆向一个浏览器引擎是月级别的苦活,读一个点名的 diff 是天级别的活,这就是有图纸和没图纸的区别。
顺着这个逻辑会冒出一个问题:开源项目能不能把修复也保密,等发版了再一起公开。理论上可以,实际上做不到。Chromium 的修复要同步给整个下游生态,Edge、Brave 这些基于它的浏览器都得跟着合,安全研究员社区也需要 diff 来验证修复质量,藏起来的代价是整个生态的协作和信任。这是开源模式的固有代价,窗口只能压缩,没法归零。真正该问的从来不是要不要公开,而是公开之后,发版和防守各自要跑多快。
补丁差也不只 Chromium 一家的事。Linux 内核修了、发行版还没打包;Android 公告发了、OEM 还没推送;都是同一个模式在不同生态里的变体,窗口从几天到几个月不等。Chromium 这次特别直观,因为窗口两头都有精确日期:攻击者开工日、武器完工日、厂商发货日,三条线摆在同一张表上,暴露的规模一目了然。
以前的默认假设是,就算图纸公开,武器化也要几个月:读懂 diff、写利用、绕缓解措施、反复调试到能用,每一步都是熟练工程师的活。Proofpoint 这次给的时间线把这个假设砸了。利用页代码里内嵌的开发日期字符串显示,8 月 27 日到 29 日之间,武器已经完工待命。从 8 月 7 日的 fix commit 算起,二十天出头。8 月 28 日,TA412 的第一发攻击上线,赶在 Chrome 正式版发版之前。换句话说,在任何一个普通用户拿到补丁之前,武器已经造好并且开过火了。
还有个容易被略过的细节:Chromium 是内核,Edge、Brave、Vivaldi 一串浏览器都在同一条船上,各自的 Stable 发版节奏还互不相同。修复公开损害的是整个 Chromium 系的用户群,受益的则是任何一个会读 diff 的攻击者,窗口期内大家共享同一种暴露。图纸公开解释了武器从哪来,但真正让我把这事当成一个事件看的,是接下来的密度:二十多天里,五伙人先后上了膛。
五伙人这个数字,是这份报告里最扎眼的部分。Proofpoint 给这套工具包起了名字,BlueMoon,认出了四个使用团伙;Volexity 9 月 1 日抓到的 UTA0560 针对美国 NGO 的钓鱼,可能是第五个。时间线排开是这样:8 月 28 日 TA412 首个攻击;9 月 1 日,Volexity 抓到 UTA0560 的钓鱼利用页;同一天,Microsoft 侧编号 JungleBamboo 的那路攻击(对应 APT31,Proofpoint 编号同样是 TA412)从另一套基础设施开打,两边用的 shellcode 字节级相同。The Record 采访 Proofpoint 研究员 Mark Kelly,他的原话翻译过来大意是:代码几乎相同,连变量命名和注释都一样,不可能是各自独立开发,就是同一套工具,百分之百。
这句话在攻击面分析里属于重判断。工具互相借鉴常见,借鉴到 shellcode 字节级相同、注释都一致,只剩一种解释:单一来源,直接分发。利用工具在攻击者之间流通也不算新闻,这几年的泄露和转手事件里见过不少,新鲜的是速度,从图纸公开到至少五个使用者上线,前后三周。武器化的瓶颈从来不只是造出来,还有分发,这一环这次也被顺手压缩了。
| 使用者 | 目标 | 手法与载荷特征 |
|---|---|---|
| TA412(Microsoft 称 JungleBamboo,对应 APT31) | 美国航空航天与防务 | ShadowPad 载荷;篡改 Secure Preferences 装伪装扩展做持久化 |
| UNK_LateNight | 美国航空航天与防务 | ShadowPad 载荷 |
| UNK_DoubleCheck | 越南制造商 | 载荷托管在 Cloudflare R2 |
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。