木马免杀全攻略和特征码替换大全
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
木马免杀全攻略和特征码替换
简而告之……
1.杀毒原理
通常,一个病毒防御工作者拿到一个截获或上报上来的病毒时,先是分析这个病毒文件执行后的动作,所谓“动作”,就是指病毒文件执行后会做哪些操作。例如会生成什么新文件、怎样更改注册表、怎样注册服务、打开什么端口等等。
搞明白这些后,下一步一般会研究这个病毒的文件结构,然后找出与众不同的地方,将其定义为特征码。而这个特征码定义的高明与否,就要看他定义的位置是否刁钻,例如他如果定义的是病毒文件更改注册表键值那部分代码的话,这显然不会太难!因为只要病毒文件更改键值,99%的情况下这个文件里一定存在被更改键值的字符串,所以找到这段字符串的位置就可以定义特征码了。但是针对这种特征码做免杀是非常容易的,只需找到相应的位置,并更改字母的大小写即可。而如果从文件头找出一段特征码就是非常不容易的事情了……除此之外,所定义的特征码还有一个分支,即内存特征码。所谓内存特征码就是指木马文件运行后释放到内存时所存在的特征,它的原理大体与上面介绍的文件特征码一样。
当特征码定义出来之后,就会被提交到另外的一个部门,然后进入
病毒定义库,当用户更新后,以后杀毒软件在碰到符合要求的文件时就会将其毫不忧郁的杀掉!也就是说,杀毒软件只认特征码,不认文件。
由此可见,病毒防御工作者寻找特征码的方式也不过如此,但这只是定义病毒文件特征码的工作,别的例如修复被感染文件等技术步骤和本文无关,在这也就不介绍了,有兴趣的朋友可以自己研究一下。
2.免杀分类
免杀的方法有很多,无奈没见哪为朋友综合系统的介绍,也苦了小菜们求学无门,只好掏银子找“师傅”,所以我就自告奋勇站出来一次,不足之处还请各位高手多多包涵……
我个人总结的免杀方法总共分两类,即主动免杀与被动免杀。
一、主动免杀
1.修改字符特征:主动查找可能的特征码,包括木马文件修改注册表、生成新文件的名称与路径、注入的进程名等动作,也包括运行过程中可能出现或一定会出现的字符等文件特征。然后找出这些字符,并将其修改。
2.修改输入表:查找此文件的输入表函数名(API Name),并将其移位。
3.打乱文件结构:利用跳转(JMP),打乱文件原有结构。
4.修改入口点:将文件的入口点加1。
5.修改PE段:将PE段移动到空白位置
二、被动免杀
1.修改特征码:用一些工具找出特征码并针对特征码做免杀处理。
2.用Vmprotect:使用Vmprotect加密区段。
3.文件加壳:可以用一些比较生僻的壳对木马文件进行保护。
有的朋友看到这里有可能蒙了,PE、Vmprotect、入口点……这些都是什么意思啊?不要着急,下面我会一一介绍的,只要你看完这篇文章,就一定会成为免杀高手!怎么样?Go!
3.实战演习
1.)修改字符特征
好,下面我们依然以一个病毒防御工作者的角度来考虑我们每一步应该做什么,然后在利用逆向思维分而治之。
现在假如我们拿到一个木马样本灰鸽子,首先当然要分析它究竟有什么功能,怎样运行以及怎样保护自己等。其实这一步要求的专业知识是很多的,但考虑到我们的读者,我们暂且用一个比较简单易行的方法——运行木马AND查看此程序的帮助文档。
我们打开RegSnap,新建一个快照,打开RegSnap后,点击[新建快照]按钮(如图1),在弹出的对话框中选择[生成所有项目的快照](如图2)。
然后保存快照,现在已经将RegSnap配置好了,下面运行我们的木
马程序(提醒:做免杀时,一定要记住养好随时备分的好习惯,以防止修改错误或是实验运行时破坏、删除木马)。
木马运行完毕后,我们在按照上面的方法重新做一个快照并保存,然后按快捷键F5,在弹出的“比较快照”对话框中选择刚才保存的快照,在“第一个快照”中选择我们刚才第一次保存的快照,而“第二个快照”选择我们后保存的快照存档,很快结果就出来了(如图3)。
有的朋友对于使用RegSnap收集到的信息感到无力分析,抱怨收集到的东西太多,在这里我简单的介绍一下,首先应注意的是生成做对比的两个快照之间的时间要尽可能短,另外要排除带有OpenSaveMRU的注册表键值,还要排除有关*.rsnp文件的创建读写等操作记录。下面我们就将有用的信息提取出来,逐一分析。
文件列表于C:\WINDOWS\*.*
新增文件
木马.exe
注册表报告
新增主键
HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\ MUICache\C:\Documents and Settings\A1Pass-admin\桌面\huigezi\复件Server02.exe
键值: 字符串: "复件Server02"
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\Root\LEG ACY_*6728*9A6C*670D*52A1\0000\Class
键值: 字符串: "LegacyDriver"
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\Root\LEG ACY_*6728*9A6C*670D*52A1\0000\ClassGUID
键值: 字符串: "{8ECC055D-047F-11D1-A537-0000F8753ED1}" HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\Root\LEG ACY_*6728*9A6C*670D*52A1\0000\Control\ActiveService
键值: 字符串: "木马服务"
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\木马服务\Description
键值: 字符串: "灰鸽子服务端程序。远程监控管理."
……
这里我只摘录了部分关键性的木马动作记录,全部记录请见光盘。通过文件列表我们可以知道木马在WINDOW目录下生成了一个新文件,而通过注册表的监控信息我们也知道了木马是怎样将自己注册为系统服务并自动运行的。
那么我们回到瑞星的研究分析室,看看那些大哥大姐们会怎么办……
瑞星大哥:“最近这灰鸽子太猖狂啦!我们是不是应该多定义几套特征码?”