微软蓝屏导致全球电脑瘫痪我的一些看法和思考
这两天,微软发生了全球的宕机事件,微软旗下的很多应用和服务出现了无法访问的情况,很多微软的电脑出现了蓝屏死机,成了全球热搜。有很多网友调侃说感谢微软提前放假,但实际上这是一个非常严重的数字安全事故。关于这一事件,我想聊聊我的一些看法和思考。
01
微软蓝屏导致全球电脑瘫痪
背后究竟发生了什么?
微软造成的这次故障,波及的范围之大,影响的行业之广,影响的后果之深,远超想象,真的是一场全球的大瘫痪。
目前全球取消航班数超过了3万个,美国航空、达美航空、美联航、边疆航空、土耳其航空等均受到影响。
医院也受到巨大的影响,很多电子病历系统崩溃了,很多医院不能接待病人,自助结账终端、自动提款机、电视机等设备都显示错误的信息。
银行系统也受到了巨大的影响,很多客户无法访问自己的资金账号,欧洲最大的伦敦证券交易所服务也受到了干扰。
零售业同样受到影响,麦当劳因为收银机POS机故障关闭了在日本一些门店。网络安全让你吃不上饭,竟然也能变成现实。英国的连锁超市贴出手写通知,顾客只能用现金支付。
美国阿拉斯加州的警察局也报告他们的911服务暂时无法使用。
英国广播公司Skynews也短暂停播。
马斯克也是连连表态:史上最大it事故,没有之一已经在公司系统中删除了CrowdStrike软件,微软CEO纳德拉赶快出来说我们意识到这个问题,并且正在与大家合作,安全的让系统重新上线,但是纳德拉的推文立即迎来了马斯克的怼怼怼,说这对汽车供应链带来了困境,所以连智能汽车生产都受到了影响。
这犹如一场全球突袭而来的网络战,一下子就让全球的很多基础设施出现了瘫痪,那么是什么导致了这场全球的危机呢?
其实是一家叫CrowdStrike的杀毒软件,发布了版本更新,他们新的版本和微软的系统底层出现了冲突,导致微软系统的应急机制启动,进而导致蓝屏死机。
这个全球最大的网络安全公司在发布一个软件的时候出了问题,他们本来是说要保护客户免受黑客的攻击,但结果却造成了比黑客攻击还要严重的后果。这次故障可能是历史上最大的一次全球信息技术事故,所以我们是不是有见证历史的这种感觉,是不是感觉世界就是一个巨大的草台班子。
这件事怎么修复?有的计算机能够自动完成,但是大量的计算机需要IT人员手动重启,删除错误的更新文件,因为错误的更新文件导致机器死机,机器死机又无法联网无法更新,CrowdStrike说他们正在给解决的方法,目前比较常见的方法是说手动进入安全模式,删除升级文件之后重启电脑,但是大公司统一管理的电脑无法用这种方式来解决,这次会涉及到上百万台电脑,所以故障并没有彻底消除。
这些年我们每个人都在享受数字化的先进、方便和自动化,但是当全球所有的基础设施都跑在软件之上、都运行在网络和数据之上,一个小小的bug,一个安全软件小小的冲突,就能让全球业务停摆,再次证明人类目前在数字安全在数字化的方面,整个世界极度脆弱。
02
为何中国独有免疫力?
国产安全软件立大功
这次全球因为CrowdStrike软件出错和微软发生冲突导致蓝屏,进而导致全世界的很多基础设施出问题,为什么中国基本上没有发生呢?
因为中国90%的电脑上,绝大多数的企业杀毒软件都用的是360杀毒和360安全卫士,我们有很大的优势。360做了20多年,覆盖全球200多个国家、15亿终端,在各类Windows系统上稳定运行超过15年,服务了1万多家政企客户及将近2百万家中小微企业。而且360有一个自动化的蓝屏修复技术,在出现蓝屏的时候只需要重启系统便可以快速恢复,不会影响到用户的正常使用。
我们的安全软件也常年在网络安全斗争的一线,和各国的网军勒索攻击组织挖矿木马病毒实战对抗,在安全能力和稳定性上绝对是经得起检验的。目前还没有出过一起类似的事故。
所以360不仅仅是在捍卫每个人的电脑安全,实际上我们又在捍卫着中国各大央国企、金融机构、机场、高铁等,很多关键信息基础设施的安全,未来随着人工智能的流行,各种AI控制的系统会日益流行,这里边一旦再出现类似的业务瘫痪或者网络安全问题,后果就更不堪设想。
今天,在捍卫我们国家国土网络各个城市的基础设施,各个城市网络、各个国家级的数字化的基础设施上,360扮演了重要的国家队的角色。我们通过稳定可靠的能力和服务,使得中国能够避免出现类似这次全球大瘫痪的这种灾难。
这次事故也给我们敲响了警钟,假设将来有一天大国在博弈的时候,某家公司假装升级出错,导致你的系统出现蓝屏,这就不是电脑死机不上班的问题,而是机场不能工作,航班不能起飞,高铁不能准时到达,银行不能取钱,餐厅不能点餐,网约车也叫不到,想想这个情景都无比的可怕。所以我说安全无小事,要360度无死角的保护,少一度都不是全方位的,这次出事的是一家企业级杀毒软件,那么大家以后在选择杀毒软件的时候,一定要选择可靠、稳定、能力强的国产安全软件。
所以,我们国家的电脑网络安全必须要掌握在自己的手里,我们国家电脑的杀毒软件一定要是国产品牌,这样才能保证在数字化、智能化的时代,不会因为一个小小的bug,不会因为一个小小的更新或者一次小小的攻击,导致整个社会、整个国家陷入停摆。
这场风波也给了我们一些警示。
第一,无论在国内还是国际企业,对网络安全、数字安全的重视程度都不能放松。随着数字化进程的加速,单一的安全防护手段可能难以抵御日益复杂的威胁。
第二,对很多在做数字化方案的公司也敲响了一个警钟,大家需要重新评估一下风险管理和防护措施。特别是这次看到,国外的很多公司严重依赖微软的服务,他们只用微软的一家云,我觉得未来企业应该采用混合云的策略,不要把鸡蛋放在一个篮子里。
第三,政府和监管机构也需要加强网络安全法规的制定和执行,确保企业能够在全球化的复杂安全环境里,能够保护好自己的业务。中国的航空、金融、医疗等行业在这个事件中的表现并非偶然,而是长期实现安全国产化的结果,但是我们一样的要吸取教训,继续提升安全防护的水平,面对未来的安全挑战。
03
这场史上最大IT事故带给我们什么启发?
这次事件,我认为有三个启发。
第一,看起来是CrowdStrike的软件和微软系统发生了冲突,但这个冲突导致很多微软的服务器出现死机,就导致微软的很多云服务出现宕机,这样就形成一个雪崩效应,越来越多的电脑宕机之后,导致越来越多的服务不能正常进行,可能就会引起更多周边系统的崩溃,所以这就像南美洲一只蝴蝶扇扇翅膀,可以引起太平洋上的一场风暴一样,实际上是一个混沌系统的连锁效应。
第二,尽管这次可能是因为一个错误,但是它充分说明了在现在数字化的世界里面,我们这个世界不管是不是草台班子,但整个世界会因为数字化变得极其脆弱,一旦发生这种雪崩的效应,其危害的行业之广、影响之深都超出我们的想象。
比如说未来如果有一天我们都开着无人驾驶汽车,如果这些车厂的电脑崩溃了,可能很多自动驾驶汽车就会行为错乱,趴在路上算是好的,横冲直撞,也有可能变成一场巨大的交通事故。
第三,某公司曾经做过一个测试,倒不是蓝屏,而是让中国的电脑都黑屏,通过黑屏,某公司在警告中国人说你不要用盗版的操作系统,我是有能力让你的屏幕变黑,那也就意味着我有能力让你的屏幕变蓝。如果在特殊时期,某公司通过一个更新,让中国的电脑都突然不能工作或者出现故障,对整个国家和社会的影响是什么?俄乌冲突中,双方在网络上已经利用类似的攻击方法大打出手。
这次确实让我们见证了其整个的市场占有率之高,覆盖面之广和它的系统崩溃带来的威力,这个不亚于在数字世界里丢下100万颗原子弹。
04
从这次全球瘫痪学到什么教训?
有没有快速恢复重启的应急响应能力很重要
这次全球IT最大的事故,导致西方国家的社会服务秩序、航空公司机场瘫痪等后果,我们需要去反思一下。
第一,超级安全软件成为反面教材。CrowdStrike本来应该是帮助企业把守电脑,防止黑客入侵,结果自己却出了差错,这样的保镖不能请,就像请来的保镖给了你自己一枪。
第二,技术是个双刃剑。因为这种安全软件权限太高,可以深入系统底层,这也是安全软件必须要具备的能力。但一出错就会殃及池鱼,整个系统说挂就挂,一个小错误也能变成大灾难,所以做安全软件对编程的水平,对测试的能力要提出更高的要求。
第三,实际上是数字蝴蝶效应。这是微软的服务器,微软的系统出了问题就导致微软云出了问题,那影响的就不是微软一家企业,而是波及到整个产业行业,银行航空公司全都躺枪,这就好比在数字世界里,微软打了一个喷嚏,结果整个世界都感冒了。
这次事件无疑是一次痛苦的教训,但也是一次学习的机会。我有几个建议。
第一,要加大系统的冗余和容错设计,要确保单点故障不会带来整个系统的崩溃,必要的时候可以考虑多云的策略。不要把鸡蛋放在一个篮子里,也不要只用Windows系统,可以跟Linux系统混合使用。
第二,提升内部安全和应急响应能力。虽然说有微软和CrowdStrike这样的服务商,但是服务商出错了,企业就束手无策,这样是不对的,企业自身要有应急预案,要有应急团队。出现类似的突发事件的时候,企业自己能够比如说重启电脑,重置网络服务,断开网络,保证系统重新运行。
有什么破局之道?一是加强云服务供应商的选择和评估,要确保他们有足够的技术能力和可靠的服务保障。二是分布式架构和多云策略,避免单一云服务的依赖,用多云的策略分散风险。三是定期安全演练和漏洞测试,模拟各种可能的故障场景,及时发现修补漏洞,提升整个系统的强壮性。
总之这是微软云的滑铁卢,给所有依赖云服务的企业敲响了警钟,希望各大企业从中吸取教训,未雨绸缪,提升自己的安全响应能力,避免类似事情的重演。
我们有一个金句叫没有攻不破的系统,今天应该再加上没有不会崩溃的系统,没有不会宕机的系统,系统一定会宕机,一定会崩溃,这个在所难免,但一旦出现的时候,我们有没有能力快速的恢复,快速的重启,这是我们所有网络安全专家应该思考的问题。
05
猜想一:
究竟是事故还是一场网络攻击?
我们的技术人员经过仔细的分析,我觉得这个事儿跟原来想的不一样,不是一个草台班子带来的问题,更像是一次供应链攻击。
这个事儿非常的蹊跷,表面现象是说CrowdStrike的一个升级出了bug, bug导致微软的系统蓝屏,那么CrowdStrike也是一家做了10年以上的公司,被称为美国版的360,因为它的模式是跟360学的,就是通过终端装上杀毒软件,但是在云端进行分析,这样通过云端大数据的汇集,可以发现比较隐秘的国家级攻击和高级威胁。
蹊跷在哪呢?
第一,通过发一个软件更新而造成Windows蓝屏,实际上不太容易。因为Windows今天系统的容错能力非常强,一定是在底层,在Windows的驱动层内核层出了错误,才会导致Windows蓝屏,也就是说一般程序出错,这个程序自己就会宕掉或者被Windows杀死,你可以用进程管理器把它干掉。
能够在系统底层工作,代码的权限非常高,事实上安全软件的大部分代码都达不到这样的权限,只有最深层的驱动才能达到,但是在内核工作的核心驱动程序,应该讲是各个安全公司最重要的、保密的、也是最核心的代码,代码数量不大,但是影响非常大,一般情况下不轻易做更新。
第二,网上传言说是一个刚入职的小哥,第一天就改了这个代码,改出错了,这完全不符合逻辑。因为刚入职一天的人是不可能让他接触到如此核心的代码,在各个公司都不会。这种核心的代码,重要性太敏感,就像可口可乐的秘密配方一样,都是公司里最资深的,工作时间最久的员工,而且是高水平的员工,就那么几个人才能够接触,所以这个版本我觉得是一个站不住脚的解释。
第三,像我们发布更新都有一套流程,首先是要做测试,这次的情况看起来因为Windows的环境比较复杂,如果在有的电脑上不会蓝屏,有的电脑上会蓝屏,那么这个bug可能就是测试不完备,也许就不太可能被发现,但这次从全球有数百万台电脑蓝屏来看,这个蓝屏的比例还是相当的高,很容易再现。那么我就想问CrowdStrike发布之前难道没有测试吗?这是不可能的。
CrowdStrike也不是一家新公司,应该有一套比较完整的测试发布的流程。像我们有一个内部测试集,我们大概在几千台不同配置环境上的操作系统上要进行一个广泛的测试,如果发布一个更新,测试的时间周期,就长达一两个月甚至更长时间,因为只有在各种环境下经过复杂的测试,都保证稳定的代码,才能够往外更新出去。CrowdStrike这次稍微加点测试,就能够复现蓝屏的错误,他就不应该会往外更新这个代码,这又是一个可疑的点。
第四,我们更新一段代码时,即使经过了完整的测试,但因为像中国的电脑有上亿台,每台的配置不一样,每台的软件设置也不一样,装满了软件,鬼知道你会和哪个软件发生冲突,两个软件装上之后起到化学反应就都崩溃了,所以我们发布更新并不会在一夜之间更新传送到所有电脑上,即使有能力、有巨大的流量支持也不会这么做,而是批量更新,比如说先给一部分电脑更新,看看用户的反馈和反应,这批电脑没有问题再更新。
所以像这种核心代码更新的周期应该是在一两个月,至少在一个月里面把所有需要打补丁的电脑都给打上补丁,那么这个过程中不断的要监控用户在社区里的反馈,比如说一旦在更新过程中,用户举报的蓝屏或者是软件故障的反馈增多,马上就应该停止更新,然后去追查用户反映的情况,这样的话即使有bug也能随时叫停。但是CrowdStrike这一次好像完全无视行业里的这种规范和规则,所以我认为这件事在逻辑上是无法自洽的。
我个人觉得它与其说是一场事故,应该说是一次模拟成软件更新事故的网络战攻击。为什么说它是供应链攻击?我觉得应该是有某些黑客组织,也不排除是某些国家背景的黑客组织,它直接攻击微软、CrowdStrike比较难,那他就派员工,比如说花一年半年的时间入职CrowdStrike,在内部表现良好,混到业务主管或者核心成员的位置,然后来改动代码,跳过一些必要的流程,使得更新造成了全球大规模的瘫痪。
类似的攻击还发生在另外一家公司——太阳风。这是一家硬件防火墙公司,很多美国军方包括网络安全公司都用这个防火墙,相当于门卫,结果俄罗斯黑客派人打入了SolarWinds太阳风这家公司,然后也是混了半年到一年之后,有机会接触到核心代码,在太阳风防火墙的核心代码内部加了一个后门,然后把这个代码更新到太阳风所有硬件的设备里面。
那就相当于使用太阳风防火墙做防御门锁的美国军方、网安公司、政府部门,所有的门锁里面被人植入了一个后门,那么对黑客来说就门户大开,大概有一年的时间都没有被发现,导致美国的这些机构丢失了很多重要的数据,包括安全软件的源代码、政府的很多内部数据等,这种供应链攻击非常的隐秘。
这一次CrowdStrike这个供应链攻击,我没想清楚为什么最后要造成一场事故,难道是对美国或者对微软的一个警告,如果有机会能混入CrowdStrike,那么在CrowdStrike这个产品里植入一个后门,不就意味着全球很多大企业的门户就洞开了吗?所以这是我现在没有想明白的事情。而且这个系统还有一个蹊跷的,蓝屏之后恢复起来很慢,好像CrowdStrike也缺乏一支应急团队,所以我还是觉得非常的蹊跷。
06
猜想二:
脑洞大开不负责任猜测全球蓝屏的一种阴谋论可能
进一步猜想,除非潜入的黑客是CrowdStrike的CTO或者CEO,否则他怎么可能要求团队跳过原来的测试流程和分发流程,我觉得很难解释,所以从阴谋论的角度,我还设想了一种可能。
大家可能不知道的是CrowdStrike最大的竞争对手是谁?是某M公司,我就不说名字了,因为某M公司现在也借鉴了360的模式,做了一个免费杀毒,捆绑在操作系统里,然后把杀毒软件放的到处都是。杀毒软件实际上是一个传感器,像一个探针,任何在电脑里发生了不安全的事件、一些软件的异常行为都会被检测到,这些行为数据、安全事件被汇集到云端,就能够整个看见全球的网络安全态势。
这样人想发动网络攻击,都会在这么多传感器的数据监控下暴露的一览无遗,所以M公司已经不仅是全球最大的云服务公司,摇身一变变成了全球最大的网络安全公司,网络安全业务全球遥遥领先。
原来它只是一个操作系统公司,像和CrowdStrike这些第三方安全公司本来是不竞争的,但现在变成了直接竞争对手,M公司又扮演裁判,又扮演运动员,最近CrowdStrike的CEO好像已经多次公开的抱怨和批评M公司。
我在想有没有这样一种可能,姑妄听之,就是M公司早就看C公司不顺眼了,但是如果搞个2选1,直接不让C公司的程序运行,肯定是过不了反垄断法的。技术上是能做到,但是舆论上可能过不去,所以是不是可以挖个坑让C公司跳进去。
这样一想可能有些逻辑就能解释了,比如说C公司在测试的时候,在M公司的操作系统上是没有问题的,测试完毕C公司就开始放心的分发更新,往下分发更新的过程也很顺利,因为没有什么不良报告,所以分发速度会很快,但是等到分发到一定程度的时候,M公司可能启动了自己软件内部的一个什么功能,这些功能在云端直接被唤起,这个软件单独用也没有任何问题,但是和C公司的软件底层就发生了冲突,从而引发了这一次蓝屏死机。
可能M公司也没有想到波及面会这么广,而且由于大量的蓝屏死机之后,导致M公司的很多云服务也不能正常进行,所以可能两家公司的暗战才引发了这一次全球的IT系统大瘫痪。
有没有这种可能?我觉得也很难说。
但是经过这一次之后,C公司会面临着无数客户的诉讼赔偿,另外很多客户可能就会由此而抛弃C公司。
C公司吃了哑巴亏有苦说不出来,因为操作系统是人家的,平台是人家的,你跟操作系统冲突的时候,一般大家不会说操作系统有bug,因为其他软件都工作正常嘛。但我们真的搞软件的人都明白,操作系统如果想害一个软件实际上是非常容易的,可以让一个特定的软件在操作系统运行起来不正常。
事实上当年M公司就用过类似的手段,他们当年和一个叫Lotus公司竞争。Lotus公司有类似Word和Excel的软件叫Lotus1-2-3,然后M公司又做应用软件又做操作系统,当年他们就在操作系统里面做了手脚,使得Lotus公司的产品工作不稳定,然后Lotus公司吃了这种哑巴亏有苦说不出来。因为太技术化了,你给公众说公众也听不懂,反正俩程序不兼容,都是应用软件自己去改。
操作系统处在一个统治者、裁判员的地位,你怎么跟操作系统去说理去?
这都已经是30多年前的陈年旧事了,所以这次C公司吃了一大亏,我觉得以后至少C公司的CEO肯定不敢再公开批评M公司了,而且它的市场份额肯定会急剧的下降。
M公司现在的免费杀毒和云端分析功能也在做企业级的业务,可能会把很多客户给抢过来,只是两个公司如果这么竞争,一个公司给另外一个公司挖坑,这坑未免有点大,导致全球都瘫痪了。
唯一比较幸运的是中国虽然用的也是M公司的操作系统,但上面应用软件是360,我们一直都很小心翼翼,不会掉到别人挖的坑里面去。
我们国家在推自己的操作系统,这件事还是非常重要。除了有自己的操作系统,还得有自己的安全软件,这两层要相互配合,要结合得很好,才能保证中国网络的安全,进而保护到整个国家安全。
07
微软指责欧盟暴露其狼子野心
这会让中国网络安全彻底失守
某个公司的狼子野心暴露出来了。
星期二微软发言人在接受媒体采访时表示,欧盟应该为这起全球最大的IT系统故障负责。为什么呢?发言人说欧盟有一个反垄断的限制措施,导致微软无法锁定Windows,这是导致本次故障的最重要原因。
微软所说的这个措施是2009年微软与欧盟达成的协议,其中微软承诺给予所有安全软件与微软自身软件相同的Windows内核访问权限。因为安全软件必须要有操作系统的授权,才能进行底层操作,如果安全软件没有底层操作的能力,安全软件就形同虚设,不仅发现不了病毒,杀不了毒,甚至都自身难保。
微软的意思就是说,像这次惹麻烦的CrowdStrike这种第三方安全软件开发商,可以和微软的软件一样,访问微软的操作系统的内部,进行极其复杂的底层操作,这降低了Windows的安全性。蓝屏死机就是这一政策的后果和代价。
把微软发言人的外交语言解释一下,就是说微软希望摆脱掉微欧盟这个束缚。这可以达到什么效果呢?
微软不再给任何第三方安全软件访问系统底层的权限,看起来好像是第三方软件犯错就不会影响Windows,但是直接的后果,就是所有的第三方的安全公司都会死掉。因为没有对Windows底层权限的这种防御操作,安全软件就是一个聋子的耳朵,是一个摆设,所以微软这一次借这个事故,重新提起这个话的由头,其目的还是想垄断操作系统底层安全软件的权利。
假设没有欧盟这个限制,那就意味着微软只要垄断其操作系统,就不会有任何第三方独立的安全软件存在,这个会导致一个什么严重的结果?—— 微软就垄断了整个安全软件市场,这一点对中国意味着国家安全的灾难。
为什么?因为今天世界其他各国的网络攻击者、黑客、勒索软件在我们的电脑里干点什么,通过像360这样的第三方安全软件,还是可以侦测到蛛丝马迹,进而进行追踪溯源、分析发现,从而进一步抵御攻击。
如果第三方安全软件都被微软取消了防访问系统底层的权利,那么在中国的电脑里发生什么,只有微软才能知道。而微软是不可能把某些国家情报机构或者网军攻击告诉中国政府的。那就意味着中国失去了对整个网络安全态势的感知和把握能力,也就意味着其他国家的网络攻击者可以在中国继续大行其道,形成单向透明的优势。
这就又回到10年前的情况,在我们的网络里,谁来了不知道,谁走了不知道,是敌是友不知道,干了什么不知道,这将会是中国网络安全彻底的失守、失败。
再深想一步,如果中国大部分电脑依然还在用Windows操作系统,那么在这些系统里面,某些国家的攻击软件在被掩护下,就可以想干什么就干什么,这对于我们整个国家的网络安全、信息基础设施,包括城市基础设施,都会形成重大的威胁。
所以这一次微软蓝屏,IT大故障,表面上很多人把它当成一个笑话来看,但我们要透过现象看到本质,看到这背后关于网络安全、数据分析能力的争夺,和对国家网络安全主权的争夺。
微软这次指责欧盟实际上是暴露了他的真实想法,就是他希望把系统垄断起来,消灭掉所有像CrowdStrike这样第三方安全软件厂商,这样微软就变成全球最厉害的网络安全公司。因为谁在电脑里干了什么,微软都必然知道。但告不告诉你,那就是微软的权利了。
所以这件事儿不是一个小事情,它事关到整个国家网络安全,不是一个简单的商业竞争和反垄断的问题。
你怎么看这件事?请在评论区留言。