学术研究 学术研究
儒学动态
专家观点
项目成果
研讨动态
分中心建设 分中心建设
分中心活动
传播普及 传播普及
交流互鉴 交流互鉴
尼山龙8国际·文明论坛
机关党建 机关党建
廉洁文化建设
龙8国际·文明建设
学术期刊 学术期刊
《孔子研究》
《中国儒学年鉴》
儒学名家 儒学名家

一个逻辑错误损失或超10亿美元,微软蓝屏事件带来哪些教训

来源:龙8国际  更新时间:2024-11-02 06:24:42

 

网络安全公司CrowdStrike造成的个逻微软大规模蓝屏事件的余波仍在持续。

当地时间7月21日,辑错CrowdStrike发表最新声明称,误损微软该公司正在尽快恢复所有受此前技术故障影响的失或事件系统,大约850万台受影响的超亿微软Windows设备中,已有相当数量的美元设备恢复正常运行。CrowdStrike对技术故障造成的蓝屏影响致歉,并称公司正在推动加速修复进程,个逻并将持续提供更新信息。辑错

根据微软此前的误损微软报告,因CrowdStrike公司升级安全软件而引发的失或事件大规模宕机事件影响了全球大约850万台安装微软Windows操作系统的设备,是超亿所有Windows系统设备总数的不到1%。这一数字意味着,美元本次蓝屏事件可能是蓝屏有史以来最大的IT故障。上一次出现这类大规模的个逻全球性事件还是在2017年,当时,被称为“WannaCry”的“蠕虫式”勒索软件影响了总计150个国家内的约30万台计算机。

微软强调,这一事件突显出了CrowdStrike等网络安全公司在发送更新之前对其进行质量控制检查的重要性。微软网络安全主管戴维·韦斯顿(David Weston)表示:“这也提醒我们,对于整个科技生态系统中的所有人来说,利用现有机制优先进行安全部署和灾难恢复是多么重要。”

美国网络安全和基础设施安全局(CISA)局长珍·伊斯特利(Jen Easterly)于20日发表评论,将这起事件称为“一起严重影响全球关键基础设施运行的重大事件”,并称“这是一个严重的错误”。

对于该事故在中国造成的影响范围,网络安全公司奇安信21日发布的分析报告指出,估计国内的CrowdStrike软件装机量在万级,相关单位数在百级,用户主要集中在北上广深等发达地区,受影响的主要是外企、外企在华分支机构及合资企业。

另外,蓝屏事件对于全球航空的影响依然显著。在19日当天,航班追踪网站FlightAware.com发布的数据显示,在本次事件发生后的第三天,截至21日晚间,当天已有超过1500架次美国境内、飞往以及飞离美国的航班被取消,其中达美航空和联合航空被取消的航班最多,还有超过7400架次美国航班遭遇延误。

7月19日,微软(Nasdaq:MSFT)收于每股437.11美元,跌0.74%,总市值3.25万亿美元。CrowdStrike(Nasdaq:CRWD)收于每股304.96美元,跌11.1%,总市值742.2亿美元。

故障起因是一个逻辑错误

在后续复盘中,人们才发现,引发如此大规模IT故障的起因仅是一次杀毒软件常规更新中的一段错误代码。

在故障发生的7月19日,CrowdStrike于晚间发布了修复程序。随后,公司CEO乔治·库尔茨在一份道歉声明中称CrowdStrike已经“运行正常”。不过,尽管有一些受影响的计算机能够自动下载软件更新、运行修复程序,另一些还是需要IT人员手动重启并修复,意味着该故障的完全恢复仍需要一段时间。

奇安信安全专家汪列军对澎湃新闻记者表示,由于CrowdStrike本次更新属于检测规则更新,在驱动启动时就会默认下载,所以用户很难阻止系统崩溃。虽然该问题的修复措施很简单,但比较耗人工:“需要每台机器都进入安全模式,然后把相关的驱动删掉,启动文件名或者目录改名。”

一天后的7月20日,CrowdStrike发布了事故的详细分析报告,称此事是由旗下网安产品Falcon平台更新中一个逻辑错误引起的:“特定的更新旨在检测恶意软件使用的新的恶意命名管道,命名管道是Windows系统中用于进程间通信的通信通道。然而,这次更新无意中含有一个逻辑错误,结果导致操作系统崩溃。”

专门研究操作系统威胁的网络安全研究员Patrick Wardle也指出,电脑病毒特征码中的错误代码或是一切背后的“罪魁祸首”:“对于网络安全产品来说,更新特征码是司空见惯的事。它们会持续监测新的恶意软件,以确保客户免于遭受最新威胁。”

谷歌原高级软件工程师扎克·沃瑞斯(Zach Vorhies)在X平台上给出了更详细的解释。沃瑞斯猜测,这起故障背后的技术细节应该是一个很典型的Null Pointer Dereference,也就是空指针引用故障。在C++语言中,地址0x0通常被用来表示一个无法被访问的空指针Null。而当CrowdStrike的程序试图访问这个地址时,导致了系统崩溃:“C++程序员在传递对象时本应通过‘检查null’来预防这个问题。”

全球损失或超10亿美元

虽然专家普遍认为现在要判断本次事件造成的具体损失还为时尚早,但美国研究机构安德森经济集团(Anderson Economic Group)的首席执行官帕特里克·安德森(Patrick Anderson)表示,这些损失可能轻易超过10亿美元。

安德森指出,今年6月,为美国汽车经销商提供软件的主要供应商CDK Global遭受了持续约三周的黑客攻击,导致数千家汽车经销商的业务陷入停滞,损失已经达到了10亿美元。与之相比,“(微软)这次停运影响了更多的消费者和企业,从暂时不便到严重中断,造成了一些无法轻易弥补的支出”。

安德森补充说,对于航空公司来说,损失可能特别显著,因为航班取消会导致大量收入损失,还有遇到重大延误的航班带来的超额劳动支出和燃料成本。

要弄清楚这些损失由谁来承担,可能需要很长的时间。尽管CrowdStrike在全球网络安全领域占据主导地位,其每年的收入仅略低于40亿美元。有专家指出,CrowdStrike的客户合同中可能会有法律保护条件,以使其免于承担责任。

7月21日,CrowdStrike在官网上线了全新的“修复和指南中心(Remediation and Guidance Hub)”,收集了与本次错误更新相关的详细信息。同时,页面还提供了有关Bitlocker密钥恢复流程的链接,以及来自第三方厂商应对故障的应对指南。

对于本次事件带来的经验教训,汪列军认为,从微软的角度来看,以Windows操作系统的架构,这类故障确实比较难防范,但公司可以做的是加强各种驱动程序的安全性检查,以及增加修复机制:“比如说在几次启动失败后,让机器自动进入安全模式,至少在不加载其他外部驱动的情况下能先启动起来,这个是可以做的。”

而从CrowdStrike的角度来看,本次事件中最大的问题是在于推送更新的方式。汪列军表示,这体现出了灰度测试的重要性:“哪怕是对一个环境或是一类客户先推送,肯定能发现大量崩溃的问题。”