如果加星标,可以及时收到推送
这是《安全晓说》第48篇,锐安全总第253篇原创
本文1876字,阅读时长约8分钟
关于CrowdStrike史诗级蓝屏,今天你可以了解以下内容:
【1】CrowdStrike蓝屏影响到底有多大?
【2】CrowdStrike蓝屏跟CIH的有什么区别?
【3】为什么是蓝屏?
【4】蓝屏证明CrowdStrike很烂吗?
【5】CrowdStrike蓝屏事件怎么破?
今日,被曝出由于CrowdStrike公司软件升级,导致全球使用微软Windows10操作系统大面积蓝屏,其中不乏航空公司、医院、商业公司等。
图:市值比较
CrowdStrike公司是全球市值最高的终端安全厂商,类比国内的瑞星杀毒软件与奇安信的天擎杀毒软件。目前市值834亿美元,仅次于派拓网络(Palo Alto Networks)的1049亿美元。
CrowdStrike蓝屏事件全球影响的终端数量目前还没有明确的说法,但是这里提供一个简易的算法。
图:CS的2023年营收
如果咱们按照CrowdStrike 2023年度28亿美元的订阅收入来看的话,咱们就按每终端每年100美元的订阅服务费的话,那么安装CrowdStrike的终端有2800万台,即使CrowdStrike及时关停升级服务,咱们就按30%的影响面,那差不多也有840万终端蓝屏。
所以,这一事件的正确标题应该是:CrowdStrike史诗级蓝屏,影响全球千万终端。
【2】
当提到蓝屏,可能大家会对很久很久以前的CIH病毒造成的蓝屏记忆犹新,这两者有什么不同呢?
CrowdStrike蓝屏是它旗下的产品Falcon的监控程序(Sensor)更新之后,内核驱动文件csagent.sys与操作系统内核冲突造成的。
所以只要把csagent.sys这个驱动文件删除,蓝屏问题就解决了。
而CIH的蓝屏不同,它是利用操作系统内核指令,发作时从硬盘的0磁道开始往后逐磁道格式化硬盘上的数据,当格式化到Windows目录时,导致操作系统自己把自己搞死而产生的系统内核崩溃界面。
【3】
蓝屏的原理其实是这样的,Intel CPU在386芯片时代就推出了一个“保护模式”,传统的就叫“实模式”。保护模式把CPU的权限分成四个环:0环-3环,在不同环的程序拥有不同的内核权限,互相之间不能僭越。
图:CPU工作权限图
DOS操作系统就是工作在实模式下,而Windows系列操作系统就是工作在保护模式下。但是它简化了INTEL的设计,只用了两个环,3环被称为“用户态”,拥有普通权限;0环被称为“内核态”,拥有系统最高权限。0环也被称为“kernel”。
一方面,系统分配给Kernel的空间非常有限;另一方面,当系统内核崩溃时,它根本无法再调用应用层的那些高级函数来打出漂亮的出错对话框。
图:应用层的出错对话框
所以就用了一个蓝屏的出错画面,所以,当出现蓝屏的时候,就意味着Windows操作系统内核崩溃了。
图:内核层的出错对话框
形象一点说,就是大脑死亡了,系统变成了植物人。
【4】
既然知道了蓝屏原理,那么就会有人理所当然地认为,CrowdStrike太烂了,这么一个世界级的公司,怎么就犯这种低级错误?
其实蓝屏恰恰证明CrowdStrike很牛。
懂行的人都知道,CrowdStrike是一个终端检测与响应(EDR)的厂商,EDR就是终端收集行为,然后云端进行分析,最后把分析后的成果再赋能所有终端,这就是所谓的“网络效应”:即使用的终端数量越大,则EDR的威胁发现与处置能力就越强。
工作在终端上的程序被称为“代理(Agent)”,其中负责进行行为采集的被称为“监控(Scanner或Sensor)”,负责进行行为分析的被称为“引擎(Engine)”。
就象前面说的那样,只有进入Windows操作系统的内核,才能拥有最强的终端控制能力,才有可能对终端进行深度的感知和分析。但是,一旦进入Windows操作系统的内核,就意味着你稍有偏差,就会引起内核崩溃。
所以国内大部分EDR的厂商都是轻代理(Agent)模式,即内核驱动里只有少量的功能,比较重的引擎都工作在应用层。
而国外有实力的厂商为了更好的效力,都选择引擎进内核,所谓艺高人胆大。象杀毒时代的赛门铁克和现在EDR时代的CrowdStrike。
当年的江民公司曾经也想把反病毒引擎做到内核态里,努力了一年,也是经常出现蓝屏问题,后来就作罢了。
【5】
实话实说,Windows是一个闭源的操作系统,微软自己的工程师是可以随时查看源码的,即便如此,微软也避免不了蓝屏问题。因此蓝屏问题,不管概率多少,也是无法杜绝的。
那么,既然如此,有没有解决方案呢?
其实有两种机制:一是软件回退机制,二是灰度升级机制。
比如当年的瑞星杀毒软件也出现过类似的蓝屏问题,出现后,瑞星就推出了降级机制,对外称为“升级回退”,即发现重大问题,自动回滚到上一个不出问题的版本。
灰度升级是互联网软件企业创造出来的升级方法,因为如果一次性全部升级,一旦出现这样的重大问题,影响面太大。
于是他们就采取了一种梯度升级的方式,比如当新版本来的时候,先升级10个终端,运行12小时之后,如果没有发现问题再升级100个终端,运行24小时之后,如果没有发现问题再升级1000个终端,以此类推。
如果你是客户,如果发现比如这次的CrowdStrike蓝屏,你可以选择重启电脑进入“安全模式”,找到C:WindowsSystem32driversCrowdStrikecsagent.sys,把这个文件删除,然后重启电脑。
如果CrowdStrike有自动回退机制的话,你的系统就正常了,如果没有,也不会再蓝屏了。
如果你是客户,假如你使用的终端安全软件没有上面提到的自动灰度升级机制,也可以用手动灰度的方式。
即先找一个小分组升级,运行一段时间后如果没有问题,再逐步放量。
后记:
结稿之时,笔者也亲自经历了一次蓝屏:
图:笔者亲历的蓝屏
不过还好,因为没有安装CrowdStrike软件,所以自动重启两次就正常了,祝好运!
恭喜你,又看完了一篇文章。从今天起,和我一起洞察安全本质!这里是锐安全,今天就到这里,咱们下次再见! |
点击文末【阅读原文】,看到一个完整的安全系统
end
如果你对本文有任何建议,
欢迎联系我改进;
如果本文对你有任何帮助,
欢迎分享、点赞和在看
如果心生欢喜,不如做个长期朋友:)
参考资料:
[1]百度股市通.Palo Alto Networks, Inc市值,2024-07-19.https://gushitong.baidu.com/stock/us-PANW?name=Palo%2520Alto%2520Networks%252C%2520Inc
[2]百度股市通.CrowdStrike Holdings, Inc. Class A, Inc市值,2024-07-19.https://gushitong.baidu.com/stock/us-CRWD?name=CrowdStrike%2520Holdings%252C%2520Inc.%2520Class%2520A
[3]百度股市通.CrowdStrike Holdings, Inc. Class A,2024-07-19.https://gushitong.baidu.com/stock/us-CRWD?mainTab=%E8%B4%A2%E5%8A%A1&sheet=%E5%88%A9%E6%B6%A6%E5%88%86%E9%85%8D%E8%A1%A8&reportAnchor=%E6%80%BB%E8%90%A5%E6%94%B6&reportTime=%E5%B9%B4%E6%8A%A5&industrySelect=2023%E5%B9%B4%E6%8A%A5
[4]安全喵喵站.蓝屏!CrowdStrike更新导致Windows出现全球蓝屏死机,大批用户遭受影响,2024年07月19日.https://mp.weixin.qq.com/s/GWfIc8Fd9cV7C4AILYzmwQ
[5]锐安全.写在4.29前夜:还记得22年前的4.26吗?,2021年04月26日.https://mp.weixin.qq.com/s/d-hjaQaSLf1AWN4O0dSsUQ
[6]看雪.Windows内核理论基础学习,https://zhuanlan.zhihu.com/p/680982961
题图:来自互联网
原文始发于微信公众号(锐安全):CrowdStrike史诗级蓝屏,到底怎么破?
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论