写在前面
最近可能是事情比较多,拖更的风险越来越大。从前面几期提前一两周到几天准备好,到最近几期,提前一天才完成,甚至是当天才完成。今天更过分,已经晚上7点15分了,我才想起来还要更这个系列。没法子,时间不多,不写科普文了,这次吃个CS的瓜吧。
今日主题
BSOD!微软又蓝屏了?
上周最大的新闻大约就是Windows的蓝屏事件了。Blue Screen of Death(BSOD)几乎是陪伴着Windows的成长与发展,尽管蓝色逐渐变得柔和,但BSOD依然是每一个Windows用户最不想看到的事件之一(我相信这个列表里的事件肯定不止一个,Windows自动更新一定也有一个位置)。
不过随着事件的进展,大家都明白了蓝屏的原因,CrowdStrike家的股价就是很好的说明。虽然微软说只有1%的Windows受到了影响,事实上蓝屏的影响却出乎意料的大——当然主要是在北美地区。据说Delta航空到现在仍然没有从事件中恢复,依然有大量的航班被取消。
因为网上的信息比较混乱,我只从CrowdStrike官方给出的信息[1]中整理了一些要点:
•影响范围:只有运行了Falcon sensor for Windows 7.11及更高版本的Windows,并且在北京时间7月19日(周五)12点09分到13点27分在线的设备才会受到影响。官方甚至给出了如果发现存在一个C-00000291*.sys文件的时间是晚于北京时间7月19日(周五)13点27分的,就不用担心有问题的说法。[2]•技术细节: •编号为291的Channel File(Falcon的一种配置文件,推测包含的是各种威胁特征信息),更新了一些新的特征(一些新发现的恶意Name Pipe利用); •导致问题的是特征文件不是Kernel文件; •更新的特征则诱发了逻辑错误,导致了此次蓝屏•根本原因:还在研究……
没了,真正有用的细节就这么多,然而还是有些好玩的地方:
1.这件事件影响范围确实限制很多,虽然现在计算机几乎都是24小时在线,但给出时间窗口还是很有意思,也就是说CS在不到一个半小时的时间内就意识到了问题出在哪里2.同样是时间窗口的问题,这几乎是在暗示Falcon是24小时都在与CS的服务进行交互,并随时更新的(就好像如Onedrive之类的各种云盘一样)3.网上纷纷猜测特征文件未经过测试,我想如果是像云盘模式一样更新特征文件,其根本目的就是为了快速应对新的威胁,可能从一开始的设计中,特征文件就是不需要测试的4.导致BSOD说明特征文件的内容被加载入内核,这就和上一点的出发点矛盾了,快速更新的内容保持在用户态才是合理的。无责任猜测可能是为了避免从内核态到用户态的内容复制(代价较高,可能会影响性能)才将特征(可能是部分,比如这种记录namepipe的特征的文件)加载入内核态);但,加载特征文件之前的可能没做特征文件的检查,或者检查不严格。
瓜吃到这里。说几点感受吧:
1.以前有人说过,安全的关键就是“不添乱”,也有人说好的安全产品就是让用户感受不到,但是事实并非如此。就如同楼宇门禁一样,始终在上下班的的过程中增加了一道手续,必然会影响用户的感受。这道手续复杂了,就会有用户不接受了;这道手续再出点故障,那就是添乱了——比如这次的事件。2.可能扯得有点远,但安全圈现在很拧巴,一方面技术上期待各种解耦,商务上有想要全面融入。于是,很多安全公司都活在到底是做产品还是做项目的纠结中。3.CS这家公司给我的印象一直不加,至于为什么就不在这里细说了,这段时间网上有不少八卦其黑历史的。4.在终端设备上加载安全应用(Agent),从防护能力上绝对是最优的,但是也是最容易出问题的。这次事件就是一个很好的例子。5.隔离网还是很有必要的。如果Delta航空的设备是在隔离网中,大概率就可以笑看其他航空公司的BSOD而不是依然在取消航班了。
References
[1]
https://www.crowdstrike.com/blog/falcon-update-for-windows-hosts-technical-details/[2]
https://www.crowdstrike.com/falcon-content-update-remediation-and-guidance-hub/