[翻译] TDSS ROOTKIT引导过程简介
TDSS ROOTKIT,就是那个改写MBR的后门。目前见到的最新变种是TDL4 (TDL5也许在不久后就会问世)
TDSS TDL类的命名貌似是卡巴的。这类后门,赛门铁克称之为Tidserv类后门。今天,在赛门铁克的博客上看到的一篇关于此后门新变种的分析。文章不长,简明扼要,感觉写得不错,因此随手翻译过来,送给观察、测试此毒的网友们。
————————————————————————————————
作者:Piotr Krysiuk
进入32位WINDOWS系统后,Backdoor.Tidserv先检测自身的运行环境(运行在32位系统中,还是运行在64位WINDOWS系统中) ,进而选择一种针对特定系统的方法完成自身安装。在32位WINDOWS系统中,病毒会采用Tidserv老变种的方法获得必要的系统权限,即:在Print Spooler服务中执行自身的代码。接下来,Tidserv将一个32位版本的恶意核心驱动加载到WINDOWS内核中。此驱动一旦加载,即刻完成MBR感染。
然后,此毒将一个后门程序及其配置文件的副本存贮到硬盘尾部若干扇区中。除了MBR部分的42个字节的恶意代码外,此后门程序的其它内容系以加密方式写入硬盘尾部。由于感染后的MBR含有位于硬盘尾部的那个后门程序的引导代码,WINDOWS每次系统启动时,此后门都会运行。因为病毒代码并未写入WINDOWS系统所在分区,所以,中毒后若不重建MBR,即使重新安装WINDOWS,也不可能清除这个后门程序。
在64位WINDOWS系统中,内核驱动须通过签名验证方能加载。因而,在64 位WINDOWS系统中,此毒采用另一种方式完成自身的安装。 由于恶意核心驱动没有有效的签名,此后门不会像在32位系统中那样直接加载;而是在用户态下直接感染MBR,并将后门程序代码直接拷贝到硬盘尾部,然后,强迫系统重启。系统重启时,后门程序即可加载到WINDOWS内核中。
目前, Tidserv的这个新变种在32位和64位系统中以同样的方式加载。系统启动时,MBR中的恶意代码被执行。然后,Tidserv位于硬盘尾部的一个恶意程序ldr16被加载。 ldr16的作用是挂钩BIOS的disk-read 函数,此后的WINDOWS加载过程会使用此函数。
接下来,病毒会加载正常的MBR备份(此备份在感染系统之初已被此毒存贮)并执行这个正常的MBR。WINDOWS系统开始加载时,ldr16钩子还会检查、修改从WINDOWS分区读入的文件 ,以便将后门程序加载到内存。 特别要指出的是:ldr16钩子会修改BCD(boot configuration data,引导配置数据),进而绕过WINDOWS系统的核心驱动签名验证策略。
Backdoor.Tidserv.L采用这种加载方法,其目的是为绕过64位WINDOWS系统的核心驱动签名验证。即使不修改WINBDOWS系统分区的任何文件,此后门也能加载到内存中。这种加载方是并不新鲜,已经流行若干年了,Stoned Bootkit 和 Vbootkit 也采用这种方式加载。不仅如此,Tidserv 后门使用的某些代码段似乎取自互联网上的其它病毒程序。
用户系统信息:Opera/9.80 (Windows NT 6.1; U; en) Presto/2.7.62 Version/11.01