0x00 引言


刚重装的系统就中毒了,这是很多网友常常遇到的事,难道是中了引导区木马?甚至bios中毒?其实没那么复杂,很可能是你安装的系统自带了木马。

0x01 “苏拉克”木马简介


“苏拉克”木马是2015下半年来持续爆发的木马,该木马感染了大量的计算机,其主要传播释放是直接在ghost镜像中植入木马,然后将ghost镜像上传到大量网站提供给用户下载,此外,近期也发现该木马的win8、win10版本通过oem激活工具植入用户电脑中。由于该木马的主要模块名为“surak.sys”,且通过分析得知该木马的项目名称即为“surak”,因此将其取名“苏拉克”木马。

0x02 “苏拉克”木马特点


  1. 传播渠道隐蔽,由于该木马被直接植入到ghost镜像中,用户一安装系统就自带该木马,而此时尚未安装任何安全软件,因此木马的传播过程完全不在监控中。
  2. 影响用户多,由于大量网站传播该类ghost镜像,且此类网站投入了大量推广费进行推广,普通用户通过搜索引擎找到的镜像下载站几乎全是带木马的。此类镜像涵盖了“雨林木风”、“深度技术”、“电脑公司”、“萝卜家园”、“番茄花园”等主流ghost。
  3. 难以清除,由于木马进入系统时间比安全软件早,掌握了主动权,对其后安装的安全软件做了大量的功能限制,使其大量功能无法正常使用,如安全防护无法开启、信任列表被恶意操作等,导致难以检测和清除木马。
  4. 对用户电脑安全威胁大,“苏拉克”木马除了锁定浏览器主页获利外,还会实时连接云端获取指令,能够下载其它木马到本地执行,给系统安全造成了极大的威胁。此外,针对64位系统,该木马还会修改系统内核文件,使得64位系统自带的驱动签名校验、内核防钩子等安全机制全部失效。

p1 图1. “苏拉克”木马产业链示意图

0x03 “苏拉克”木马行为分析


“苏拉克”木马的功能主要分为4大模块,即内核Rootkit模块、应用层主体模块、应用层加载器模块、应用层上报模块。模块分工明确,可扩充性强,配置灵活,且所有的通讯都使用高强度加密算法加密(AES & RSA),该木马有xp版、win7版、win8版、win10版,除xp版外其它版本又分为32位版本和64位版本,每个版本功能基本一致,以下以xp版本为例进行分析,其它版本行为类似。

通过各个模块分工协作,该木马完成了主页锁定、云端控制、插件下载、对抗安全软件等功能。

p2

1、启动模块行为(MD5:a3c79b97bdea22acadf951e0d1b06dbf)

qidong32.dll的功能单一,其被注册成系统组件,开机时随系统启动,由Explorer.exe进程加载执行。该文件被加载后首先判断自己是否位于explorer.exe进程或者regsvr32.exe进程中,若是,则启动system32\drivers\UMDF\boot.exe文件。该文件是木马的主体文件,预置在带毒的Ghost系统中。

p3 图3

p4 图4

2、主体模块行为(MD5:bf47d80de3852e7ef6b86ac213e46510)

Boot.exe文件是该木马的主体模块,主要负责定时从云端下载最新的配置信息及负责其它模块的调度、插件下载、数据传递等。

  1. 运行后首先从云端下载http://xp.xitongzhu.com/2.0xpFileList.dl文件,该文件使用AES加密,密钥为“DownloadKey”,顾名思义该配置文件与下载相关,解密后的该文件如图5所示,主要包含要下载的文件列表、文件类型、本地存储路径等。

    p5 图5.解密后的2.0xpFileList.dl

  2. 解析配置文件,并进行相应的下载,下载完成后根据类型进行Load或者Exec。

    p6 图6

  3. 完成以上行为后,将下载成功后的文件路径按一定格式存储,并使用AES加密(密钥:dl_encrypt)存储在C:\Windows\System32\drivers\UMDF\dllist文件中,即插件列表。

    p7 图7. 存储插件列表

  4. 下载http://xp.xitongzhu.com/2.0xpSurakConfig.cfg到内存中,该文件是木马的配置文件,下载后计算配置文件的MD5值,并与C:\Windows\System32\drivers\UMDF\hash\config中存储的值进行比较,以判断配置文件是否更新,如果更新则将其传给surak.sys

    p8 图8. 下载配置文件并比较MD5

  5. 该配置文件分为三部分,分别使用AES进行加密,密钥均为“ConfigEncryptKey”,解密后的单个配置信息结构大致如图9所示。

    p9 图9. 配置信息数据结构

  6. 配置文件对应的木马功能分别如下:

    • 注册表隐藏:阻止列表进程访问指定的注册表路径(图10)
    • 文件隐藏拦截驱动加载:阻止列表进程访问指定文件,拦截指定驱动加载(图11、13)
    • 进程隐藏三部分:当列表进程枚举系统进程列表时隐藏指定进程(图12)

    p10 图10. 注册表相关的配置信息

    p11 图11. 文件操作相关的配置信息

    p12 图12. 进程隐藏相关配置信息

    p13 图13. 阻止驱动加载的相关配置信息

  7. 解密完配置文件后,依次将其加密后传递给内核surak.sys完成相应功能。

    p14 图14. 将配置信息传递给surak.sys

3、Rootkit模块行为(MD5:8bb5cdc10c017d0c22348d2ada0ec1dc)

  1. 挂钩NtQuerySystemInformation函数,对应隐藏进程功能。在win7等64位系统中,由于“苏拉克”木马patch了系统的内核文件,因此挂钩此函数也不会引起蓝屏。

    p15 图15

  2. 注册LoadImage回调,通过此回调函数,拦截指定sys文件加载,其拦截方式直接将DriverEntry初代码改成返回指令。

    p16 图16

  3. 注册CmpCallback回调,对应注册表隐藏功能。

    p17 图17

  4. 挂钩IofCallDriverIoCreateFileSpecifyDeviceObjectHint,对应文件隐藏功能

    p18 图18

    p19 图19. 在x64版本的系统中,为了能够Hook内核,系统的内核文件被篡改

4、上报模块行为(MD5:595738d7ca9291a3d3322039bb4dc960)

tj.dll文件主要用于上报,其主要功能是收集机器信息、木马版本信息、木马配置信息等,使用RSA做非对称加密,将信息上传到服务端。

p20 图20

5、木马其它模块(插件)行为

  1. ielock32.dll(MD5:fadb57ff6fbfaf5f7f09e83d0de4a2ed)用于锁定浏览器主页。该文件插入到explorer中,并通过挂钩进程创建函数,以添加命令行的方式锁主页。

  2. subooa.sys、suboob.sys、subooc.sys(MD5:e94faf79a7681b33b903cceb1580d7c4)这三个驱动文件都会被加载到内核中,但只是一个空的工程,未见恶意代码。

0x04 传播渠道探索


“苏拉克”直接植入到ghost系统镜像中,其传播渠道主要是通过推广ghost系统传播扩散。从10月份以来,反病毒实验室监控到大量的传播带毒镜像的网站,此类网站一般伪装成“系统之家”网站,并通过搜索推广或者直接刷搜索引擎来使自身排名靠前。此外各大装机相关的论坛,布满了带毒ghost系统的推广帖,吸引大量网友上钩。

p21 图21. 伪装成系统之家的带毒ghost下载站

p22 图22. 通过广告或者刷排名来使自己排名靠前

p23 图23. 通过论坛发帖推广带毒ghost系统

0x05 结语


随着安全软件的普及和防护能力的强化,木马想绕过安全软件的防护深入用户系统变得非常困难,因此黑产从业者们想方设法让自己先于安全软件进入用户的系统,并借先入之机大肆破坏后来安装的安全软件,从而达到霸占用户电脑并利用用户电脑实现盈利的目的。近期,腾讯反病毒实验室对通过国内各大搜索引擎查找“ghost”、“ghost xp”、“ghost win7”等关键词排名前10的ghost镜像全部进行下载安装分析,发现90%以上的ghost镜像都是带有木马的。管家在此建议用户选择正规渠道安装操作系统,通过下载ghost镜像安装系统虽然快速省事,但其安全性,确实很令人担忧。

0x06 附录


目前已经发现通过各种渠道推广的带毒ghost镜像下载站列表,目前管家已拦截相关网站,大家下载相关文件时注意避开这些网站。