机器狗专题
1、专题导读
2、原理介绍
3、相关变种
4、专杀介绍
5、总结
一、专题导读
各种公共场合(如学校机房,网吧)上的电脑中几乎都安装有硬件还原卡或还原软件。这些工具在保护计算机系统的正常工作,克制恶意程序方面的确起到了非常重要的作用。但是有了它们的保护就可心高枕无忧了吗?“机器狗病毒”给了我们一个很好的答案。这种掀起“血雨腥风”的恶意程序给那些掉以轻心的网络管理员带来了很大的困扰。它可以穿透“还原技术”来感染计算机系统,下载大量其他恶意程序。巡警团队在捕获该恶意程序后,第一时间发布专杀工具,可以穿透还原追杀“机器狗”。并针对新的变种及时做出了相应修改,发布升级版本。为了让大家更了解相关信息,做以下简要介绍。
二、“穿透还原”相关原理
机器狗的第一版本,通过在IRP_MJ_CREATE中断开DeviceHarddisk0DR0上附加的设备来使使磁盘过滤驱动、文件系统驱动(OS提供的, 但一些杀毒软件也通过此渠道进行文件系统监控)及其上的文件系统过滤驱动无效,然后通过直接访问硬盘(.PhysicalHardDisk0)的的MDR和第一个分区的引导扇区得到分区参数(每簇扇区数),配合1)中得到的信息来定位文件在硬盘上的绝对偏移量,得到偏移量后将病毒直接写入userinit.exe的第一簇来感染文件。后面的几个版本更是使用了一些底层的技术来达到穿透还原的目的,就不多做介绍。
三、相关变种
“机器狗”病毒,经过与反病毒公司和安全爱好者的多次“斗法”。已经衍生出几个版本具有相应特点的变种,每代“机器狗”变种又有不计其数的小变种。在商业利益的驱动下,在网上叫卖的“机器狗”生成器以及各版本作者的频繁升级,更是对“机器狗恶潮”起到“推波助澜”的作用。由于早期出现的可以穿透还原的恶意程序是以“机器狗”为图标,所以尽管各版本并非出自同一作者,网络上一直把大部份的“穿透还原”相关恶意程序称为“机器狗”。
版本一:
穿透还原覆盖磁盘文件:userinit.exe
“机器狗”图标
汇编语言编写
版本二:
穿透还原覆盖磁盘文件:恶意程序指定的系统文件(conime.exe,ctfmon.exe,explorer.exe)
控制台程序图标
C++或delphi语言编写
版本三:
穿透还原覆盖磁盘文件:被复制到系统“启动”目录的恶意程序
控制台程序图标或自定图标
编写语言不定
各种版本都会极尽所能的利用所有已知的技术来对抗杀毒软件,传播恶意程序,达到盗取用户敏感信息及其他不可告人之目的。
代码分析:
以下为恶意程序通过摘除还原软件磁盘过滤设备链,达到绕过还原软件的目的的代码:
.text:0040057C 034 EB 00 jmp short $+2
.text:0040057E 034 8B 40 04 mov eax, [eax+FILE_OBJECT.DeviceObject]
.text:00400581 034 A3 CE 08 40 00 mov g_DR0_DeviceObject, eax
.text:00400586 034 83 78 10 00 cmp [eax+DEVICE_OBJECT.AttachedDevice], 0
.text:0040058A 034 74 0E jz short loc_40059A
.text:0040058C
.text:0040058C ->保存DR0上的附加设备,然后断开附加,等IRP_MJ_CLOSE时恢复附加
.text:0040058C 034 EB 00 jmp short $+2
.text:0040058E 034 8B 48 10 mov ecx, [eax+DEVICE_OBJECT.AttachedDevice]
.text:00400591 034 87 0D D2 08 40+ xchg ecx, g_OldAttachedDeviceOfDR0
.text:00400597 034 89 48 10 mov [eax+DEVICE_OBJECT.AttachedDevice], ecx
.text:0040059A
.text:0040059A loc_40059A: ; CODE XREF: CommonDispatch+72j
.text:0040059A 034 FF 75 F8 push [ebp+FileObject]
.text:0040059D 038 E8 56 02 00 00 call ObDereferenceObject
.text:004005A2 038 8D 45 DC lea eax, [ebp+DRO_DeviceName]
.text:004005A5 038 50 push eax ; UnicodeString
以下为恶意程序通过摘除还原软件磁盘过滤设备链,达到绕过还原软件的目的的代码:
.text:0040057C 034 EB 00 jmp short $+2
.text:0040057E 034 8B 40 04 mov eax, [eax+FILE_OBJECT.DeviceObject]
.text:00400581 034 A3 CE 08 40 00 mov g_DR0_DeviceObject, eax
.text:00400586 034 83 78 10 00 cmp [eax+DEVICE_OBJECT.AttachedDevice], 0
.text:0040058A 034 74 0E jz short loc_40059A
.text:0040058C
.text:0040058C ->保存DR0上的附加设备,然后断开附加,等IRP_MJ_CLOSE时恢复附加
.text:0040058C 034 EB 00 jmp short $+2
.text:0040058E 034 8B 48 10 mov ecx, [eax+DEVICE_OBJECT.AttachedDevice]
.text:00400591 034 87 0D D2 08 40+ xchg ecx, g_OldAttachedDeviceOfDR0
.text:00400597 034 89 48 10 mov [eax+DEVICE_OBJECT.AttachedDevice], ecx
.text:0040059A
.text:0040059A loc_40059A: ; CODE XREF: CommonDispatch+72j
.text:0040059A 034 FF 75 F8 push [ebp+FileObject]
.text:0040059D 038 E8 56 02 00 00 call ObDereferenceObject
.text:004005A2 038 8D 45 DC lea eax, [ebp+DRO_DeviceName]
.text:004005A5 038 50 push eax ; UnicodeString
四、专杀介绍
超级巡警之机器狗病毒专杀 v1.7
DSWLAB(超级巡警团队) 出品
下载地址:http://a1.sucop.com/RodogKiller.zip
1.6/1.7更新:
1,支持对新变种的查杀
1.5更新:
1,增加对最新变种的查杀及免疫
1.4更新:
1,穿透冰点
2,修正部分用户修复文件失败的BUG
1.3更新:
1.支持对最近几个新变种的查杀
1.2更新:
1.支持对新变种的查杀
2.更换界面,更美观
3.修正一处BUG
1.1更新:
解决几个BUG。
解决几个BUG。
本工具可检测并查杀机器狗病毒,可穿透机器狗所能穿透的还原系统来修复被感染的文件。本工具还具有免疫的功能,针对已知机器狗变种进行免疫,防止再次感染。另外,可使用命令行方式进行杀毒,便于自动化操作,建议网吧等场所设置为开机自动杀毒,减少重复作业。
在使用本专杀后,强烈建议安装超级巡警最新版,用以即时监控机器狗病毒,防止重复感染!
命令行参数(建议使用“>”将结果输出到文件中):
/k 命令行自动杀毒
/i 需要免疫
>result.txt 将结果输出到result.txt文件中(当查杀到病毒时的result.txt文件体积比没有查到毒的result.txt文件体积大)
例子:
RodogKiller.exe /k /i > c:kill_result.txt
关于设置开机自启动的参考文章:http://bbs.sucop.com/thread-14791-1-1.html
五、总结
使用超级巡警系列软件(畅游巡警、U盘巡警等),可以很好的防御,清理及免疫“机器狗”相关病毒。防御机器狗,我们可以利用的超级巡警的系列软件的相关功能:
1、超级巡警的补丁检查,堵住恶意程序进入系统的入口
2、畅游巡警启发预警,有效防止恶意程序通过网页传播
3、U盘巡警时刻监控你的移动存储设备,不让恶意程序有驻留之地
使用亡羊补牢的方法,我们在面对恶意程序时总是处于被动的状态。只有尽量及时修补已知的安全隐患,才能保证我们计算机系统与个人隐私的相对安全。
参考文章:
