>  安全资讯  > 微软全球蓝屏事件,破案了!

微软全球蓝屏事件,破案了!

2024-07-26

7月19日,一场突如其来的微软“蓝屏风波”如同一场没有硝烟的战争,悄然在全球科技舞台上上演。

多个国家和地区的银行、航空、铁路、广播媒体、酒店、零售商等企业受到影响,个别地区甚至波及医疗、应急等关乎民众生命安全的行业!

据微软初步估计,大约有850 万台 Windows PC 受到波及。虽然这一数字只占到全球 Windows 设备的不到 1%,但实际带来的损失远比我们看到得要多得多。

随着对该事件的深入调查,众人也发现所谓的“微软蓝屏”事件并非由微软所引发,而是由独立网络安全公司 CrowdStrike发布的软件更新导致的“灾难”。目前,这款软件被全球许多关键基础设施企业广泛用于 Windows PC 和服务器的安全保护。

据了解,在此故障发生了3天后的今天,全球仍有不少 IT 系统处于瘫痪状态。

今天,我们就聊聊这波堪称有史以来最严重的 IT 故障——“蓝屏死机”事件究竟是怎么回事?该如何预防或减少此类事件的发生?有何启示?

逻辑错误,触发全球大崩溃

在本次蓝屏事件发生的第一时间,便有不少工程师逐层排查,直接将问题归咎在了CrowdStrike 发布软件更新中的 csagent.sys 文件上,并向大家发出警告——停止所有CrowdStrike更新!停止所有CrowdStrike更新!

其实更具体一点来说,这次全球蓝屏的始作俑者是CrowdStrike的旗舰产品Falcon。

Falcon是一个用云的方式将多个安全解决方案集成到一起的平台,包括防病毒功能、端点保护、威胁检测和实时监控等等。

在事情严重发酵之后,Falcon和CrowdStrike CEO George Kurtz对此做出了进一步的解释说明。

一言蔽之:全球蓝屏是由Windows主机的Falcon内容更新bug引起的。

这是一个针对Windows系统的传感器配置更新,是Falcon平台保护机制的一部分。

但触发了一个逻辑错误,导致受影响的系统出现系统崩溃和蓝屏。

George Kurtz强调说“这不是安全事件或网络攻击,我们已经发现并且隔离了这个bug,还部署了修复程序”。

好巧不巧,他还补刀了一句:Mac和Linux不受影响。

然后微软这边,CEO纳德拉也赶忙出来说明:我们意识到了这个问题,并正在与CrowdStrike和整个行业密切合作,安全地让他们的系统重新上线。

CrowdStrike 方面还表示,问题已经确定,修复方案也已到位,只是设备的修复流程对 IT 管理员们来说比较麻烦。其根本原因似乎是 CrowdStrike 用于保护 Windows 机器的内核级驱动程序未能正确更新。虽然 CrowdStrike 在“Windows 主机上广泛报告蓝屏死机”后确定了问题所在并恢复了错误更新,但对于已经受到影响的设备似乎并不奏效。

很快,CrowdStrike在调查之后,紧急发布了公告,揭晓了根本原因。

2024年7月19日04:09 UTC,CrowdStrike在持续运营中向Windows系统发布了一次传感器配置更新,这也是Falcon平台保护机制的一部分。

这次配置更新触发了一个逻辑错误,导致受影响的系统出现崩溃和蓝屏(BSOD)。

导致系统崩溃的更新已于2024年7月19日05:27 UTC得到修复。

从声明中来看,受此次影响的系统包括运行Windows 7.11及更高版本,并且在北京时间7月19日12:09-13:27期间下载更新了Falcon传感器配置的。

但这个配置的更新频率吧……按照官方的说法是,每天都会更新几次……

其中技术细节如下——

在Windows系统中,通道文件位于以下目录:C:\Windows\System32\drivers\CrowdStrike\,并且文件名以「C-」开头。每个通道文件都有一个唯一编号作为标识。

此次事件中受影响的通道文件为291,文件名以「C-00000291-」开头,以.sys扩展名结尾。

而这次出了大bug的文件,则是通道文件“291”,文件名以“ C-00000291- ”开头,以 .sys 扩展名结尾。

也正是因为Mac和Linux系统中不使用“291”通道文件,因此完美避开了这次的大宕机。

周五的更新,本意是针对网络攻击中常见的C2框架中所使用的新发现的恶意命名管道,但实际上却触发了系统的逻辑错误,导致崩溃。

不过,这与通道文件291或任何其他通道文件中的空字节问题无关。

要想恢复,就必须在安全模式下启动机器,并且以本地管理员身份登录并删除内容——这是不可能自动化的。因此,这次瘫痪的打击面才会这么大,并且难以恢复。

至于大家最关心的问题:啥时候能修好啊?

CrowdStrike的回答是:我们正在进行彻底的根本原因分析。这项工作将持续进行,并会更新原因分析。

而根据《网络安全哲学》书作者Lukasz Olejnik估计,这个大bug可能还需要几天到几周才能解决。

如何预防?多手准备分散风险

蓝屏事件发生后,CrowdStrike美股收跌11%,报每股304.96美元,市值一夜蒸发近百亿美元,创2022年以来最差单日表现。分析机构Marsh & McLennan Companies称,超过75家客户可能会因为CrowdStrike全球性崩溃事件而提出网络故障索赔。

纵然谁也未曾预料到全球性软件的瘫痪,有时只是某家公司的疏忽,而我们身处科技浪潮之中,企业、行业用户又该如何避免或此类事件的发生?

近日,自主可控新鲜事就此事咨询了国内网络安全专家、操作系统厂商骨干企业统信软件等相关负责人。

金山毒霸安全技术专家表示,类似安全事件要做到完全避免还是很难的,在云服务应用系统方面进行分散风险设置,比如服务器可以用不同系统进行支撑,包括Windows、Linux、Mac系统等。

统信软件负责人表示:回顾整个事件,最直接的原因当然是CrowdStrike未经充分测试就将错误的配置推送给了用户,但是对于整个软件系统来说,其健壮性不能依赖某个组件不出问题。在这次事件中,有三个方面是值得改进的:

首先是在操作系统和软件的升级上,生产环境下的关键业务系统中所依赖的系统更新不能像CrowdStrike这次事故中这样任性。对应更新应首先经过严格的测试,再以灰度方式进行小批量、阶梯式部署的方式发布给用户,在上一批用户没问题后,才能逐步分批推送给其他用户。另外,企业也应当通过域管平台等企业级集中管理系统合理配置相关策略,避免软件联网自更新造成不可控的故障。

其次是在操作系统的可恢复性上,尽管Windows提供了还原点、安全模式等功能,但是使用并不方便,需要专业人员进行操作,恢复过程较长。特别是普通用户如果在安全模式下进行文件操作,例如按照网上的指导删除问题文件,稍有差池,甚至可能进一步破坏操作系统。如在更新时出现故障,统信UOS提供了健壮的A/B分区恢复方案用户可以在数十秒内回滚系统,立即恢复业务。

最后就是有争议的系统边界问题。操作系统作为数字时代的基础设施,需要保障其稳定性和兼容性,在其上运行的代码应当是严格测试和验证过的,任何软件均应通过标准接口与操作系统进行交互。特别是安全软件,为了实施安全策略,其往往具备较高权限,因此更应严守边界,做好测试,而不能采取侵入式技术截获系统函数以实现相关功能。统信UOS通过UAPP计划与各安全厂商持续协商建立安全接口机制,划分操作系统和安全软件边界,为用户提供更稳定、更兼容的安全解决方案,共同建设产业的安全生态。

某网络安全专家表示:未来一方面应该进一步明确云基础设施厂家、操作系统、基础软件厂家的责任,要求其提升软件质量,加强测试、发布环节的管理;另一方面是对于各行业客户来说,应事前做好类似各种极端场景的应急预案、条件允许的话,做好测试再部署。

中国毫发无损,但仍不能掉以轻心

BBC称,当全球大多数国家都在与“蓝屏宕机”作斗争时,有一个国家却基本上毫发无损,那就是中国。中国能躲过一劫的原因是:中国政府一直在大力发展本土技术,避免依赖外国系统以加强国家安全。

本土软件产业虽然快速发展,日渐自成体系,帮助中国企业在蓝屏事件中免受冲击,但业内人士提醒对计算机系统风险的防控仍然不能掉以轻心,还需要不断完善和提高。

此次微软蓝屏事件也促使我们深思,需要加快信创步伐,从基础操作系统到顶层应用,构筑完全自主可控的能力!

声明:本文来自自主可控新鲜事,版权归作者所有。文章内容仅代表作者独立观点,不代表沃通CA立场,转载目的在于传递更多信息。如有侵权,请联系删除。