微点交流论坛
» 游客:  注册 | 登录 | 帮助

 

作者:
标题: 【原创】一个映像劫持病毒OSO.exe
蓝色寒冰+
新手上路




积分 35
发帖 33
注册 2007-1-12
来自 广东广州
#1  【原创】一个映像劫持病毒OSO.exe

原文链接请查看蓝色寒冰+的安全地带:http://hi.baidu.com/readon99/blo ... 8c01014c088da1.html


第一部分:案例分析

@echo off  //关闭命令回显
echo 此批处理只作技巧介绍,请勿用于非法活动!       by:风中之渡  //显示echo后的文字
pause  //停止
echo Windows Registry Editor Version 5.00>>ssm.reg
echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\syssafe.EXE] >>ssm.reg
echo "Debugger"="syssafe.EXE" >>ssm.reg  //把echo后的文字导出到SSM.reg中
regedit /s ssm.reg &del /q ssm.reg  //导入ssm.reg并删除
------------------------------------------------------------------------



      相信有不少人见过这样一个批处理吧,当时由风中之渡编写的这个批处理是寒冰第一次跟映像劫持的亲密接触,该批处理用的是使用映像劫持结束SSM的进程,结果奏效了,当然新版本的SSM已经加了了该注册表的保护,已经失效了,可是,从中我们可以得到一个思路,是不是也可以用来对付病毒?

      由此我们可以得出一个杀掉病毒进程厉害的方法,如果在该批处理中改成了病毒的进程,比如威金,自然就是把"Debugger"="syssafe.EXE" 改为"Debugger"="logo_1.exe",这样,病毒就运行不了了 。也许就会出现这样一个出错的画面了:



      

        其实说起映像劫持,具体技术含义寒冰知识也有限,无法理解,不过按照寒冰的理解,就是当系统执行某一个文件时,被映像劫持的系统会自动跳转到另一个程序去,而如果映像为空,也就是没有设置另一个程序,自然,就出现上面的错误提示了,比如:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\svchost.exe项下的"Debugger"="abc.exe" 意思是调用 abc.exe 来调试 svchost.exe,关键就是 abc.exe 可能不是调试器,所以它不会启动 svchost.exe(十分感谢UMU的纠正)。

又HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\logo_1.exe项下的"Debugger"="logo_1.exe" ,这样当Debugger的值等于本身时,就是调用自身来调试自己,结果自己不是调试器,又来一次,递归了,就进入了死循环,也就不能启动了,从而很多威金免疫程序就是用了这个道理(当然,前提是该病毒还没有变种,病毒文件名还没有改变,不然就失效了,所以说,很大程度上,免疫只是相对性的,而且对于一些随机产生病毒文件名的也不见效),当然,也有一些是用同名文件的方式,但感觉用文件免疫的方法不是很有效,但是不推荐这种方法,根据UMU的解释,命令行的长度有限制,递归到一定长度就出错了,所以这样做是不好的,因为浪费了系统资源!


1月31日更新:

刚好看到一个案例,可是作者是谁已经无法考证了,在此只能做一感谢:

现在网上威金与熊猫烧香(尼姆亚)蠕虫病毒肆行,如何防御它们是大家所关心的,现教大家一种方法来给这二个可恶的病毒判死缓!

前提是病毒主体文件名已知,我们可以利用以下方法判其死缓!
首先到[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options],右击该项,新建一个项目 如图1

然后把该项目命名为病毒的主体文件名,并在右边建一个字符串值为Debugger,把值指向的你杀毒软件,如图2

注意:这里之所以说是“死缓”,是指:这样处理后,病毒可以进入系统。然而,一旦它(包括各分区根目录下的setup.exe )企图运行,便被定向到nod32kui.exe(你所设置的程序,见下图),病毒程序本身不会运行。等到你的反病毒程序将其加入病毒库后,此毒即可被杀死。
当然,用户也可自己动手将病毒文件及其启动项删除。

对于其它病毒,只要你知道其主体程序文件名(.exe或.dll类),且病毒主体程序不与系统或应用程序同名,也可仿此处理。


注:如果有谁想利用这个方法来免疫一些病毒,可以去这里网页借用他人成果哦,呵呵

禁止1200多种已知病毒的进程:http://xici.51r.com/user3/xici/archives/2006/239068.shtml








第二部分:查杀方法

用了映像劫持预防病毒的方法,有兴趣的可以用antoruns(可去寒冰的网盘下载,在手工工具目录下,地址:http://readon99.edudisk.cn/)扫描,你应该会在相应注册表目录下发现这样一个情形(后面附上“File not found”):



      既然这个方法这么奇特,要是用在预防上面倒不成问题,可是如果是被利用在病毒上,问题可就麻烦了,那样该有多少手工软件 被干掉啊,而昨天就遇上了这样的一个病毒,朋友求助后,寒冰推荐的sreng,icesowrd全部被干掉,出现了以上“找不到该文件”的错误提示框

而今天,很幸运的在卡卡社区看到了轩辕小聪 的分析文章,在此做一转载,其手段除了没有感染其他文件外,一点也不逊色于熊猫。





第三部分:预防方法

     那么,竟然有病毒利用了他,那有什么方法可以很好的预防呢?

     提供2个方法如下:

1.软件法(Tiny)(baohe斑竹提供): 在tiny防火墙中加入该注册表的保护规则,设置如下:





2.权限法:既然是写入注册表,就应该有禁止写入的方法,最爽快的自然是禁用系统的注册表,不过,呵呵,相信给各位以后的操作会带来太多不便,因此,我们不能这样做。具体作风如下:

找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution 这一项,点击右键,选择权限,然后把拒绝一栏全部钩上,点击确定,呵呵,搞定了。这样,病毒也就无法在该项目进行写入操作了,权限,的确是一把很好用的策略,真的要感谢伟大的mcrosoft提供了一个这么强大的功能。





附录部分:

帖子转载自卡卡社区,作者小聪:http://forum.ikaka.com/topic.asp?board=28&artid=8257332


病毒名:Worm.Pabug.ck

大小:38,132 字节
MD5:2391109c40ccb0f982b86af86cfbc900
加壳方式:FSG2.0
编写语言:Delphi
传播方式:通过移动介质或网页恶意脚本传播




清除方法归结为一句话:“夹缝中求生”


IceSword.exe、SREng.exe均被禁,但只需将文件改名,照样可以运行
autoruns.exe则不在被禁的行列
其他的被禁程序,一步步解禁



查杀具体过程:

结束进程:
%systemroot%\system32\gfosdg.exe
%systemroot%\system32\severe.exe
%systemroot%\system32\drivers\conime.exe
没有发现此病毒禁用任务管理器。也可以用其他工具如procexp等

用autoruns删除以下项目(建议用autoruns,一是没被禁,二是一目了然,注意先选Options-Hide Microsoft Entries):
+ 360Safe.exe c:\windows\system32\drivers\mpnxyl.exe
+ adam.exe c:\windows\system32\drivers\mpnxyl.exe
+ avp.com c:\windows\system32\drivers\mpnxyl.exe
+ avp.exe c:\windows\system32\drivers\mpnxyl.exe
+ IceSword.exe c:\windows\system32\drivers\mpnxyl.exe
+ iparmo.exe c:\windows\system32\drivers\mpnxyl.exe
+ kabaload.exe c:\windows\system32\drivers\mpnxyl.exe
+ KRegEx.exe c:\windows\system32\drivers\mpnxyl.exe
+ KvDetect.exe c:\windows\system32\drivers\mpnxyl.exe
+ KVMonXP.kxp c:\windows\system32\drivers\mpnxyl.exe
+ KvXP.kxp c:\windows\system32\drivers\mpnxyl.exe
+ MagicSet.exe c:\windows\system32\drivers\mpnxyl.exe
+ mmsk.exe c:\windows\system32\drivers\mpnxyl.exe
+ msconfig.com c:\windows\system32\drivers\mpnxyl.exe
+ msconfig.exe c:\windows\system32\drivers\mpnxyl.exe
+ PFW.exe c:\windows\system32\drivers\mpnxyl.exe
+ PFWLiveUpdate.exe c:\windows\system32\drivers\mpnxyl.exe
+ QQDoctor.exe c:\windows\system32\drivers\mpnxyl.exe
+ Ras.exe c:\windows\system32\drivers\mpnxyl.exe
+ Rav.exe c:\windows\system32\drivers\mpnxyl.exe
+ RavMon.exe c:\windows\system32\drivers\mpnxyl.exe
+ regedit.com c:\windows\system32\drivers\mpnxyl.exe
+ regedit.exe c:\windows\system32\drivers\mpnxyl.exe
+ runiep.exe c:\windows\system32\drivers\mpnxyl.exe
+ SREng.EXE c:\windows\system32\drivers\mpnxyl.exe
+ TrojDie.kxp c:\windows\system32\drivers\mpnxyl.exe
+ WoptiClean.exe c:\windows\system32\drivers\mpnxyl.exe

这样包括IceSword、SREng、注册表编辑器和系统配置实用程序在内的部分程序不再被禁止

删除或修改启动项:
以用SREng为例
在“启动项目”-“注册表”中删除:
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run]
<mpnxyl><C:\WINDOWS\system32\gfosdg.exe> [N/A]
<gfosdg><C:\WINDOWS\system32\severe.exe> [N/A]

双击以下项目,把“值”中Explorer.exe后面的内容删除
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon]
<shell><Explorer.exe C:\WINDOWS\system32\drivers\conime.exe> [N/A]

删除文件:
由于非系统盘即便右键打开也会有危险,应该采用其他方法,推荐用IceSword或WINRAR来做
删除:
%systemroot%\system32\gfosdg.exe
%systemroot%\system32\gfosdg.dll
%systemroot%\system32\severe.exe
%systemroot%\system32\drivers\mpnxyl.exe
%systemroot%\system32\drivers\conime.exe
%systemroot%\system32\hx1.bat
%systemroot%\system32\noruns.reg
X:\OSO.exe
X:\autorun.inf

系统修复与清理:

在注册表展开
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL]
建议将原CheckedValue键删除,再新建正常的键值:
"CheckedValue"=dword:00000001

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
NoDriveTypeAutoRun键的值,是否要改,要改为什么,视乎各人所需,一般默认为91(十六进制的)
此键的含义,请搜索网上资料,在此不再赘述

HOSTS文件的清理
可以用记事本打开%systemroot%\system32\drivers\etc\hosts,清除被病毒加入的内容
也可以用SREng在“系统修复”-“HOSTS文件”中点“重置”,然后点“保存”

最后修复一下服务被破坏的杀毒软件。

小结:
从拿到样本到方法写完,历时整整五小时。之所以要说得如此详细,是因为这个病毒相当的典型,尤其是它对付安全软件的几种方法。右键菜单没变化,也是比较“隐蔽”而且给清除带来麻烦的一个特征。对付这个病毒,也要在“知己知彼”的基础上,灵活运用方法和工具。

※ ※ ※ 本文纯属【蓝色寒冰+】个人意见,与【 微点交流论坛 】立场无关※ ※ ※

犹如证券市场的上市公司,微点三年苦练终究上市,脱颖而出,祝福!我们也多投资心水哦
2007-2-4 08:10
查看资料  发送邮件  访问主页  发短消息   编辑帖子
Paxson
高级用户





积分 593
发帖 591
注册 2006-5-11
来自 China CD
#2  

嗯 技术性文章 厉害

※ ※ ※ 本文纯属【Paxson】个人意见,与【 微点交流论坛 】立场无关※ ※ ※

东方微点“反病毒技术交流”群:630086、1471553 、16998902
论坛:http://bbs.micropoint.com.cn/
2007-2-4 09:00
查看资料  发短消息  QQ   编辑帖子
lp0329
新手上路





积分 2
发帖 2
注册 2007-2-5
#3  

看晕了。。这个病毒我最后用光盘引导杀了。。

※ ※ ※ 本文纯属【lp0329】个人意见,与【 微点交流论坛 】立场无关※ ※ ※
2007-2-5 23:09
查看资料  发送邮件  发短消息   编辑帖子



论坛跳转:

可打印版本 | 推荐 | 订阅 | 收藏


[ 联系我们 - 东方微点 ]


北京东方微点信息技术有限责任公司 福建东方微点信息安全有限责任公司

闽ICP备05030815号