蓝屏之囿-终端安全软件开发的困局与破局
创始人
2024-07-25 17:01:37
0

本文是iOA-EDR技术系列主打文章的第二篇

作者:腾讯安全专家工程师 聂子潇

一、星星之火可以燎原

2024年7月19日中午,一台台Windows终端悄然染成蓝色。随即,如“蓝色焰海”一般的IT故障在各个国家蔓延开来,迅速席卷全球。无数航班晚点,银行、医疗、金融等行业的IT系统相继出现异常,受到影响的用户们纷纷在X、脸书、微博等社交媒体上报告求助。

(一位小红书博主在旅途中遇到航司系统宕机,被迫领取了手写登机牌)

起初人们迅速向微软发出问询,但很快就有了进一步进展:事件并非出自系统本身的故障,而是由部分企业安装的一款安全软件功能故障引发。为啥日常电脑上使用的一款软件,竟然有如此的能量和威力去造成这场引起全球关注的IT故障呢?让我们从安全软件的底层工作原理出发,挖掘这次事件背后的“主角”,搞清楚它为什么会有如此广泛的破坏力,以及背后的症结到底是什么。

二、猫鼠游戏诞生记

1971 年,研究员鲍勃·托马斯 (Bob Thomas) 开发出了第一个病毒,称为 Creeper。该病毒通过 ARPANET(第一个计算机网络)传播,感染设备后会显示一条消息:“我是 Creeper,有本事来抓我呀”。随后,电子邮件的发明者雷·汤姆林森 (Ray Tomlinson) 开发了一个名为 Reaper 的程序,试图追踪并消灭 Creeper,这个程序则被视为杀毒软件的起源。

从这个杀软诞生的故事中不难看出,杀毒软件的工作模式本质是一场猫鼠游戏,恶意程序就好比要偷吃的老鼠,而杀毒软件就是看守的猫,双方你追我赶,老鼠为了逃避猫的追捕,会不断演变自身的伪装和隐匿手段,而猫则需要不断提升自己的火眼金睛,透过层层伪装,抓住躲藏的老鼠。

双方从定位上来说是敌人,从进化角度来说却亦师亦友,从对抗中相互促进学习成长,仿佛宿命中的相互纠缠的螺旋不断前进。

三、安全软件的难言之隐

1.来自系统内核层的监视之眼

伴随着攻守双方的不断进化,安全软件发展到今天,早已与操作系统紧密结合。只有掌握操作系统最高权限的尚方宝剑,安全软件才能与手段层出不穷的恶意程序斗争。操作系统一般会对运行权限做层次划分:内核代码一般工作在内核层(Ring0),而我们常说的应用程序工作在应用层(Ring3)。内核层享有最高的执行权限,能够访问操作系统上所有的设备和信息,同时一旦内核层发生异常崩溃,整个系统就无法继续运转,进而会出现经典的蓝屏提示。而应用层则只能访问应用本身的一些常规权限资源,即使出现崩溃也只会影响自身软件进程,对操作系统不会产生影响。

现代的安全软件往往都会在内核层安装自己的安全模块(也有部分低级别的安全软件没有内核模块),从而基于内核层的最高权限,实现“上帝之眼”的效果,监视整个操作系统上每时每刻发生的不同类型的事件。安全软件24小时不间断地分析和比对这些事件,进而过滤出潜在威胁,将事件及时的阻断和扼杀,通过审核模式的工作原理,来实现保卫操作系统的安全。

(操作系统不同层次的运行权限)

2、安全软件的终端架构

一个完整安全软件的终端架构,从核心功能角度来划分,大部分都具备以下一些安全模块:首先,工作在系统最高权限层的内核模块,一般负责与系统内核接口打交道,获取系统第一手的实时日志信息,类似于情报收集部门的职能。

同时,由于该模块在内核层有最高权限,可以在系统执行层面第一时间阻断恶意攻击,因而也会承担一部分阻断恶意攻击的职能,实现恶意攻击的事前阻断能力。

其次,应用层的策略审核模块,类似安全指挥部门,负责审核内核模块采集到的实时日志,将日志上报到云端后台,同时对于一些审核有威胁的日志,按策略配置进行响应处置。

(内核模块与策略审核模块的职能划分)

3、如履薄冰的系统审核员

从上述安全软件的终端架构中,不难看出,安全软件已经演变为操作系统上的一切行为审核员,拥有行为的最终解释权。

但所谓权力越大责任也就越大,安全软件拥有操作系统的核心审核权,一旦权力使用不当就会带来难以预期的后果。例如审核错误阻止了合法的行为,可能导致系统软件异常失败;审核速度过慢,可能导致系统和软件运行卡顿;审核过程中错误修改或影响了合法行为的属性,也可能导致系统异常或软件错误。在此之上,即使审核员的操作完全合规正确,但动作本身如果出现编程错误,还是会造成系统蓝屏的严重风险。如果故障发生在内核启动阶段,还会造成重启后继续蓝屏,也就是我们常说的无限循环蓝屏的更严重问题。

可以说,安全软件借助系统的最高权限来防范攻击,但也因为最高权限的便利性带来了重大的责任风险。安全软件扮演的系统审核员,必须对每一步都要做到战战兢兢,如临深渊,如履薄冰。

4、难以平衡的攻守矛盾

正因为这份如履薄冰的责任,安全软件与恶意程序的对抗才会如此周而复始持续这么多年。安全软件需要恪守不影响系统稳定性的底线,导致在与恶意程序的对抗中畏首畏尾。这也是安全软件无法创造出一个大杀器来彻底结束这场攻防对抗“猫鼠游戏”的核心原因。

其背后的本质,是安全软件既要保证系统上的合法行为不受到影响,又要避免不法威胁行为潜藏在合法行为中偷偷潜入,这是一场解不开的天然矛盾。任何对伪装者的检查和判定,都必然导致对合法行为进行相同的盘问,从而产生产生额外的执行开销。要求安全软件既做到铁面无私(对待恶意攻击),又做到柔情似水(对待合法行为),恰恰是安全软件当前面临最大的难点和矛盾,也是安全软件安身立命的根本。

四、腾讯iOA-EDR实践之路

1.防守之路上三岔口发展到今天,安全类产品百家争鸣,争奇斗艳,但万变不离其宗,延续上面的攻守矛盾观点,安全软件整体的发展犹如一个三岔口。

第一条路是以攻为守,以极客精神的思路主导,崇尚以对抗恶意程序的本职为第一目标,整体架构优先围绕对抗恶意程序来设计。这种架构在海外的安全产品中较为常见,将安全软件的功能模块更多集成到系统的内核层,优势在于能够在第一现场快速响应和对抗恶意攻击,并且整体对抗更加集中和高效、简洁。

第二条路是全面防守,稳字当头的思路主导,整体架构完全不进入内核层,只使用系统本身的安全接口来与恶意程序对抗。这类架构一般出现在辅助采集类的安全产品上,架构的优势很明显,极大降低了对系统稳定性和兼容性的影响,但随之而来的问题是在与恶意程序的对抗上捉襟见肘。

第三条路,是选择一种攻守兼顾的架构,既要保证拥有内核层的核心能力,又尽可能降低对核心层的依赖,让内核层功能纯净简单,把大部分功能逻辑放在应用层模块上。这种架构的优势则比较平衡,既保证安全能力能够对抗恶意程序,又一定程度上兼顾了系统的稳定性和兼容性。如何在三岔口进行权衡,是这个架构最为混沌和复杂的地方。

(三种不同的防御策略)

2、千里之行始于“踩坑”

腾讯EDR以腾讯二十多年的深研发展为基石,经历过C端海量用户,也在B端市场摸爬滚打,踩坑和挨打的经验难能可贵。一个成熟的产品背后往往是无数个填坑的日日夜夜,系统蓝屏、兼容性故障、电脑卡顿、软件异常、抢修大大小小的事故,这些都是安全软件的必修课。我们意识到,安全软件的第一道坎不是安全能力,而是保障用户的使用体验和避免故障。我们不断累积兼容性处理方案库,是因为通杀型解决方案虽然可以极大降低故障的影响范围,但依然需要大量长尾的针对性解决方案,只能靠时间和量级的沉淀来收获最终的稳定。

3、最小化原则架构

安全软件的稳定性保障一直是我们的重中之重。因此,腾讯安全EDR没有采用海外产品偏好的强内核功能架构,而是采取攻守兼顾的架构原则。整体架构的设计原则,是在满足恶意程序对抗的前提下,最小化使用系统底层权限,最大化保证系统的稳定性和兼容性。

整体架构依旧分内核和应用层两层,在内核层中的模块以最小化原则来设计,只做系统底层接口能力的扩展封装,不做逻辑和策略的执行。整个产品功能的策略逻辑的实现,则都放在应用层来指挥,内核层完全融合为系统底层的接口扩展,不承担业务的策略逻辑执行。这样的架构在内核层面极致简洁,不需要因为功能迭代经常变更,更容易打磨稳定后持续提供能力,能够最大限度保障稳定性的要求。而与安全对抗的变更部分都在应用层的策略模块,这样产生故障的时候,不容易出现蓝屏或者系统层面的故障,以及和软件产生兼容性问题。

内核模块层面也尽可能极致降低权限依赖,采取纯异步采集模式(旁路模式),接受到系统通知的第一时间就发送旁路日志消息到工作队列中,后续功能流程即可避免对系统和软件产生影响。该架构准则同样也应用到了应用层的进程注入采集功能上。

另外一种影响安全软件兼容性的功能是进程注入类的采集功能。该功能往往应对一些高级复杂威胁,需要采集系统的API调用序列来识别恶意风险。腾讯EDR在进程注入采集上也是执行的最小化原则,首先范围层面最小化,只注入可疑的入侵进程,不影响系统和常用软件进程。第二采集层面纯异步化,采集数据后第一时间旁路,尽可能降低对原进程的影响。

(腾讯安全EDR和在系统中的设计原则)

4、更进一步智能采集

采用最小化安全架构,腾讯安全EDR从根本上降低了对系统稳定性和兼容性的影响。但架构只是影响稳定性和兼容性的一环,如何采集和执行策略逻辑也会对结果产生关键影响。逻辑的错误或者不适当可能造成CPU持续高企、使用不流畅等系统层问题。

因为终端采集会被动采集系统上所有的行为,一旦系统上某些服务软件在进行极其频繁的操作,就有可能导致安全软件的采集模块突然高频工作,继而诱发一些性能层面的卡顿。这时需要采集的策略模块足够智能和自适应去规避这些场景的发生。

腾讯安全EDR在采集策略层面,使用的是基于行为可疑度过滤方案,即在终端架构中内置了腾讯自研的行为链关联引擎,能够将终端上发生的多个同源行为串成一个执行链。通过对完整的同源执行链进行可疑度判定,依据执行链的来源渠道、文件的云鉴定信息、文件的签名信息,以及是否关联脚本、压缩包信息等等加强判断的准确度。

举个例子,两个行为链,一条是从浏览器下载压缩包,解压释放文件,进而启动脚本进行网络访问,那么该链上的所有文件都会被追踪标记来增强采集策略,而对于系统进程或常用软件进程释放和执行的一些行为链,则减弱采集策略。这样可以极大降低对合法系统和软件的采集力度,降低CPU和性能开销。而当有真正可疑威胁进入的时候,安全软件会开足马力重点监控采集数据,犹如在终端拥有一个经验老道的安全专家做指挥,做到指哪打哪,有的放矢的智能安全架构。

(腾讯安全EDR的智能采集路径与决策)

五、安全行业警钟长鸣

水能载舟亦能覆舟,这场影响全球的IT故障,也给安全行业敲响了警钟:安全软件的基石是与恶意程序对抗。当安全厂商肩负着安全这一至高责任的时候,每一位用户的使用体验才是基石下的土壤。如果盲目追求技术的极致而忽略了体验,那么下一次IT事故的倒计时就会再度开始。

相关内容

热门资讯

格力电器获得实用新型专利授权:... 证券之星消息,根据天眼查APP数据显示格力电器(000651)新获得一项实用新型专利授权,专利名为“...
快手上市以来首次派息:毛利率创... AI正逐渐成为快手增长的“第二曲线”。 8月21日,快手科技发布2025年第二季度业绩,报告期内,快...
REDMI Note 15 P... 想象一下,一部手机在水中浸泡近二十分钟,依然流畅播放着视频;从一米多高的地方跌落数次,却几乎毫发无损...
岚之传承取得一种建筑给排水管道... 金融界2025年8月22日消息,国家知识产权局信息显示,石家庄岚之传承文化传播有限公司取得一项名为“...
胜开尔取得一种流体静态混合器专... 金融界2025年8月22日消息,国家知识产权局信息显示,江苏胜开尔工业技术有限公司取得一项名为“一种...
张一鸣的“小生意”,堵死爱奇艺... 今年二季报,爱奇艺营收再度跌破70亿元,同比下滑11%。亏损1.3亿,同比大幅由盈转亏。 这是一份惨...
“文旅+科技+产业”,湖南湘江... 三湘都市报8月22日讯(通讯员 徐文俊)8月21日,在湖南湘江新区文化和旅游产业协会第一届会员大会上...
剑桥大学团队推出史上最难视觉推... 来源:至顶网 这是一个让人震惊的实验结果:当研究者们把最新的视觉推理测试题摆在全球最先进的20个AI...
果下科技:拟赴港上市,2024... 【“AI+储能”时代开启,果下科技拟赴港上市】2025年2月,工信部等八部门印发《新型储能制造业高质...
修船“半年报”:230亿元背后... 8月18日,大连中远海运重工有限公司对外宣布,近日成功完成对超大型集装箱船“鹿特丹”轮的维修工程。这...
豪鹏科技取得一种极片、极芯及电... 金融界2025年8月22日消息,国家知识产权局信息显示,深圳市豪鹏科技股份有限公司取得一项名为“一种...
原创 R... REDMI Note系列是该品牌独立过后打造的首个产品线,自Note 7系列开始,全新的Note系列...
原创 生... 9日,由刘家成执导,王贺编剧,杨幂、欧豪主演的年代剧《生万物》在央八酷云实时关注度最高破4%,创央八...
互联网金融骗局揭秘!睿盛环球G... 互联网金融机构睿盛环球Golden Link(博瑞通)因涉嫌分红类资金盘骗局而备受关注。据悉,该平台...
国际团队发现富含重元素的超新星 新华社耶路撒冷8月21日电(记者王卓伦 路一凡)以色列魏茨曼科学研究所日前发表声明说,该所和美国西北...
PMA3-34GLN+:高性能... 近日,一款名为PMA3-34GLN+的宽带低噪声MMIC放大器引起了业界的广泛关注。这款基于PHEM...
共进股份获得实用新型专利授权:... 证券之星消息,根据天眼查APP数据显示共进股份(603118)新获得一项实用新型专利授权,专利名为“...
原创 丁... 距离2025年武汉公开赛(冠军奖金14万英镑)开幕仅剩两天,WST宣布,由于健康原因,表现抢眼的火箭...
江苏神通获得实用新型专利授权:... 证券之星消息,根据天眼查APP数据显示江苏神通(002438)新获得一项实用新型专利授权,专利名为“...
桃花电器取得密封性能好的单向阀... 金融界2025年8月21日消息,国家知识产权局信息显示,常州桃花电器有限公司取得一项名为“一种密封性...