APP下载

针对美国公部门遭SolarWinds供应链攻击,有资安厂商对于SunBurst后门程式分析,他们研判骇客可能自去年底就开始攻击

消息来源:baojiabao.com 作者: 发布时间:2026-05-26

报价宝综合消息针对美国公部门遭SolarWinds供应链攻击,有资安厂商对于SunBurst后门程式分析,他们研判骇客可能自去年底就开始攻击
图片来源: 

ReversingLabs

近期传出国家级骇客透过供应链攻击,攻击美国财政部与商务部等公部门,据说就是SolarWinds在今年上旬发布的软件更新版本中,出现后门程式。而现在有资安公司提出新的迹证,推测SolarWinds这家专门提供IT管理解决方案的公司,早就在去年10月被渗透,而且,骇客是从该公司的基础程式库(Codebase)植入后门,导致潜伏许久却没有被发现。

最早揭露SolarWinds Orion软件存在后门的资安公司,是针对上述攻击事件积极介入调查的FireEye。他们于12月13日揭露,SolarWinds自今年3月到6月之间,推出的Orion软件存在名为SunBurst的后门,骇客用来于遭感染的系统监控受害组织,同时能够执行任意指令。然而,这个后门程式实际上埋伏得更深、更为底层。威胁情报业者ReversingLabs于16日,在部落格公布他们对于SolarWinds Orion遭骇情况的分析,认为骇客很可能早在2019年10月,就将恶意后门植入到这项IT平台的软件编译流程,以及程式码签章的基础架构之中。

骇客对于SolarWinds的开发环境掌握程度极高,加入的恶意程式码命名符合该公司原则,而难以察觉有异

ReversingLabs比对了特定版本的Orion软件,包含被FireEye公告存在后门的第1个版本(2019.4.5200.9083),以及理应未受影响的旧版本(2019.4.5200.8890),分析当中的元件,结果他们发现,Orion的源代码遭到窜改而存在恶意后门,不仅如此,这个后门感染受害企业的方式,就是透过SolarWinds的软件版本管理系统,随着修补程式一并派送到用户端。

为何ReversingLabs特别点名了更旧版本的Orion软件?原因是他们发现,这个SolarWinds于2019年10月推出的版本(2019.4.5200.8890版),骇客就已经开始对Orion的程式码上下其手,但仅有小幅度修改,加入了后来才用到的.NET类别(OrionImprovementBusinessLayer),而此时并没有植入后门的程式码。

该公司指出,这个阶段的程式码窜改,很明显只是概念性验证攻击(PoC),他们认为,骇客大致的攻击计划,可区分成3个阶段,首先,是骇入开发系统,一旦成功,攻击者接着会注入自己的程式码,最后查核他们签署的软件套件,是否会派送到Orion软件的用户端。

骇客为了要混淆SolarWinds的开发人员,不让攻击行动被察觉,他们故步疑阵,采取了许多几可乱真的做法,来模仿SolarWinds开发方式。例如,在骇客加入Orion程式码的其中一个类别,就刻意命名为OrionImprovementBusinessLayer,而让软件开发者与稽核人员觉得是正常的物件。

不只是模仿物件的命名方式,ReversingLabs进一步指出,骇客还在此类别中,引用了确实存在于Orion程式码的方法(Method)与程式库,而这样的精细手法,同样存在于这些骇客其他植入的方法。由此可见,骇客对于SolarWinds基础程式库的架构极为熟悉。

而对于骇客是从开发的源头就加入后门的依据,ReversingLabs指出,他们分析了后门程式SunBurst的元件(SolarWinds.Orion.Core.BusinessLayer.dll),根据其中继资料(Metadata)的内容发现,其标头(Header)、PDB符号工具,以及签章等,3个时戳记载的时间完全相同。ReversingLabs认为这有2种情况:很可能是SolarWinds程式码控制系统遭骇,或者是骇客在编译电脑上置换了恶意程式码。再加上前述提及,骇客企图让加料的程式码不被SolarWinds察觉,ReversingLabs指出,攻击者不仅骇入这家IT公司的编译架构,软件签章系统也被用于签署SunBurst恶意软件,但目前尚未被用于签署其他恶意软件。而对于SolarWinds的签章已被用于签署SunBurst的情况,ReversingLabs认为,为了防范该签章继续遭到滥用,SolarWinds应该要注销相关的凭证。

成功进入Orion用户环境后,借由双重混淆手法回避资安系统的侦测

这些骇客除了对于SolarWinds的开发环境了如指掌,也考量到后门程式不能被采用Orion的企业或公部门发现的情况,ReversingLabs提到他们在Orion的程式码里,发现了许多Select * From Win32_SystemDriver呼叫字串,这是使用WMI查询电脑里所有驱动程式的指令。而骇客采取了结合压缩与Base64编码的做法,来避免自己加入的程式码,可能会惊动资安防护系统的情况。

他们之所以同时结合2种机制的原因,主要是对于Base64编码的做法,市面上的威胁猎捕规则已累积相当多的侦测规则,若是骇客单纯只使用这样的回避手法,就可能会被企业发现。

在ReversingLabs对于程式码进行逆向工程后,他们发现一组“C07NSU0uUdBScCvKz1UIz8wzNooPriwuSc11KcosSy0CAA==”字串,经过解压缩后,就变成上述的Select * From Win32_SystemDriver指令,这么一来,这组字串就不会被资安系统的威胁猎补规则拦截。

而使用这种字串混淆的手法,在Orion的程式码里不断出现,因此ReversingLabs认为,骇客下了赌注,不仅能够让SolarWinds开发者检视程式码时不被发现,同时还能误导Orion用户的资安系统察觉不出异状,使得未来的资安防护态势变得更加严峻。

2020-12-19 01:52:00

相关文章