【3.A.S.T】网络安全爱好者's Archiver

黑客学习

柔肠寸断 发表于 2009-7-6 11:50

大家跟我学免杀,小菜免杀高手进阶

大家好,这次我带来的是免杀步步高,教大家最好的免杀方法来让自己的马儿骗过杀毒软件。瑞星是我国的知名主流杀毒软件,大家一定不陌生吧?它的木马监控功能在国内市场内很有特色,而对木马查杀最起作用的就是文件监控、内存监控和注册表监控。所以,我们只要让我们的木马通过这三个监控就可以实现完美免杀了,目前网络上流行着很多的加壳,加花工具,当使用这些工具给我们的木马动过手术后,虽然可以躲过文件监控,可是却无法通过内存监控。

先给大家补充一点基础知识,做好铺垫后,我们才好顺利的进行讲解。为什么加壳也不能过内存监控呢?加壳,其实也就是一种压缩,当打开这个加过壳的木马后,会先进行解压缩再执行文件。所以不管加没加过壳,执行后在内存中执行的代码还是相同的。要真正做到木马的免杀,就要靠自己了,有的牛人做的免杀版,是他们自己改的内存代码,确实有效一段时间,流传过后特征码就被杀毒软件的特征码库给收录了。毛主席说过:“自己动手,丰衣足食。”下面我就开始讲解吧:

先前准备:生成一个木马客户端,这个就不用我多讲了吧,大家应该都会的吧?但是,注意一点,在配置客户端的时候,千万不要选中“写入注册表选项”(如图1)
[img]http://www.hx95.com/Images/hxhack/002/1.jpg[/img]
至于这么做的原因后面我会进行说明。

(一)文件监控

要过文件监控,这个就比较简单了,加个稍微厉害点的壳就OK啦,就用不着修改文件的特征码这么麻烦了。不过,这一步最好还是等到内存免杀完成后再进行,否则可能会对我们修改内存特征码造成未知的影响。我给大家推荐两个很好用的工具,一个是“Private exe protect”这个加壳软件(如图2)
[img]http://www.hx95.com/Images/hxhack/002/2.jpg[/img]
它的技术相当成熟,还有一个是“超级加花器[牧马游民专用]”(如图3),
[img]http://www.hx95.com/Images/hxhack/002/3.jpg[/img]可以给加好壳的木马加上花指令,这样能迷惑杀毒软件的视线。

小提示:“Private exe protect”其实并不能算是一个真正意义上的加壳软件,它其实是一个注册软件作者用来保护自己的作品的东东,却被我们用来“保护”木马了^_^。为了获得更好的免杀效果,可以在“保护选项”中尽行适当的设置(如图4)。
[img]http://www.hx95.com/Images/hxhack/002/4.jpg[/img]

他们的操作我就不多说了,比较傻瓜化,下面来阐述本文的重点——“空白跳转交叉法”内存免杀。

(二)内存监控

①追出特征码

第一步:打开TKLoader,将我们做好的客户端载入。TKLoader这个软件可以把我们的木马放到内存中,是非常好用的一个东东。双击一下软件界面上的路径输入框,选择一个目录,再选择其中的木马程序,右击,点选“载入到内存”(如图5)。
[img]http://www.hx95.com/Images/hxhack/002/5.jpg[/img]
这样我们的木马便虚拟地被执行,内存中就有了木马的代码。打开瑞星2008主程序,进行内存扫描,发现了病毒(如图6)。
[img]http://www.hx95.com/Images/hxhack/002/6.jpg[/img]
这只不过是个试探而已,发现病毒才是应该的嘛,现在我们要来定位muma.exe的特征码。

第二步:运行MyCCL特征码******,将这个木马客户端muma.exe分块,这些知识在以前的网友世界上已经有过相关的介绍了,我这里再稍稍给大家温习一下好了。将程序界面中“带后缀”后面的勾打上,分块数设置为100,写好生成分块文件的存放目录,最后点击“<生成>”按钮(如图7、图8)。
[img]http://www.hx95.com/Images/hxhack/002/7.jpg[/img]
[img]http://www.hx95.com/Images/hxhack/002/8.jpg[/img]

小提示:分块文件的防止目录要设置好,不要和已有的目录重名,否则会出现丢失数据的情况。

第三步:再次打开TKLoader,选择分块文件的存放目录,将这100个exe文件全部载入到内存中。用瑞星查杀一下内存,发现居然没有查出毒来,说明分块个数太多,这次分成30块好了。再试下,查出来了,是0012_000B8982_0000A409.exe这个文件(如图9)。
[img]http://www.hx95.com/Images/hxhack/002/9.jpg[/img]

第四步:将0012_000B8982_0000A409.exe这个文件删掉,再在MyCCL中点击“二次处理”,再接着生成40个文件,仍然用瑞星查杀……  直到查不出来后,再最后点一下“二次处理”,特征区间就出来了啦。右击这个区间,选择“复合定位此处特征”(如图10)。
[img]http://www.hx95.com/Images/hxhack/002/10.jpg[/img]
MyCCL默认会生成替换2个字节的文件,又会生成许多分块,按照刚才的方法再来一遍,找出准确的特征码位置。

小提示:复合特征码,是因为发现的特征码区间过大,不够精确,如果你认为你找到的特征区间够窄,那么此步便可以跳过。

第五步:准确的特征码定位出来了,是000B8982到000B8987,这个是文件的偏移地址,我们要将他们转换成内存地址。这里需要用到一个小软件——偏移量转换器,使用它可以进行文件偏移地址和内存地址的相互转换(如图11),
[img]http://www.hx95.com/Images/hxhack/002/11.jpg[/img]
转换一下,发现这段特征码的内存地址是008BE583和008BE587之间,用OllyICE载入muma.exe后,我们可以看到这三句代码(如图12)。
[img]http://www.hx95.com/Images/hxhack/002/12.jpg[/img]

②加入空白区段

第一步:打开zeroadd,来给我们的muma.exe中加入一个空白区段,这可是内存免杀的关键哦!按照如图13
[img]http://www.hx95.com/Images/hxhack/002/13.jpg[/img]
的格式,点击“生成新文件”按钮,我就给这个muma.exe加上了一个名字为biweilun,大小为50的空白区段了。

小提示:为什么自己做免杀,效果非常好呢?那是因为每个人加入的空白区段的名称都不相同,所以每个人做出来的免杀木马都不一样,杀毒软件又怎么查的过来呢?

第二步:运行LordPE,来看看我们这个马儿中,新加入的名为biweilun的区段的首文件偏移地址。首先点击主界面中的“PE编辑器”,然后在出现的文件浏览窗口中选择muma.exe,最后再点击“区段”按钮,便可以看到muma.exe中所存在的区段了(如图14),
[img]http://www.hx95.com/Images/hxhack/002/14.jpg[/img]
biweilun这个区段也可以看到哦。记下biweilun这个区段的首文件偏移地址,是00133A00,用偏移量转换器转换一下,对应的内存地址是0093B000。右击OllyICE界面,在右键菜单中选择“转到”→“表达式”,填入0093B000后确定,来到了我们的空白区段(如图15)。
[img]http://www.hx95.com/Images/hxhack/002/15.jpg[/img]

③修改汇编代码

第一步:现在回到特征码那里,我们来吧特征码嫁接到空白区段中,转到008BE583,该处的汇编语句是“sub    al, 0EF”,就将空白区段中的0093B00C处的汇编语句改为“sub    al, 0EF”,然后要把008BE585处的语句“add    ebx, esp”也弄到空白区段中来,就放到0093B022吧。现在这两句特征码就被完全复制到空白区段中了(如图16),
[img]http://www.hx95.com/Images/hxhack/002/16.jpg[/img]
下面该准备写几个跳转语句,让木马执行到008BE583的时候,跳入空白区段来继续执行,然后再跳回去。

第二步:回到008BE583,双击这一行代码,将其改为“jmp 0093B000”,然后双击008BE585这行代码,将它改为NOP,就是什么都不做的意思。可是空白区段的代码执行完毕后,还是要跳回008BE587来的,这样才不会影响木马的运行。

小提示:jmp是一个跳转命令,有的时候用jnz或是其他跳转命令也可以实现跳转。

第三步:转到空白区段的最后一行,往下找,看到地址为0093BFFE,将它的汇编语句改为“jmp 008BE587”,这样空白区段执行好就跳回去了。对木马本身而言,还是按顺序执行了这三句特征码,不影响功能,可是瑞星可就被搞糊涂了。

小提示:为了让大家好理解,我自己特意做了个图片给大家看,让大家明白我们免杀的原理是什么。方框就是区段,木马执行的时候是按顺序向下执行的,遇到跳转就跳,我们让它先跳入空白区段再跳回来。(如图17)
[img]http://www.hx95.com/Images/hxhack/002/17.jpg[/img]


(三)注册表监控
内存免杀做好了,该说一下,为什么我一开始说配置木马的时候千万不要选上“写入注册表”呢?因为muma.exe一旦运行,它就会向注册表中写入自启动项的键值。这样一定会被瑞星的注册表监控拦截下来的,前面的免杀不就功亏一篑了?没关系,我们来不走寻常路。

第一步:我们想让木马释放到肉鸡的C:\Windows\system32中(绝大多人系统都装在C盘),然后把C:\Windows\system32\muma.exe写入启动项,来用WinRAR制作一个自解压缩包就可以实现这一功能了。

第二步:打开记事本,在其中输入如下代码后保存为名为1.reg的一个文件(如图18):
[img]http://www.hx95.com/Images/hxhack/002/18.jpg[/img]
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
"Server"="C:\\windows\\system32\\muma.exe"

第三步:将1.reg和muma.exe添加到一个WinRAR自解压缩包中,切换到“高级”标签,点击“自解压选项”按钮。在“解压路径”下填入C:\Windows\system32,然后在解压后运行下面的输入框中填入“regedit /s 1.reg”(如图19)。
[img]http://www.hx95.com/Images/hxhack/002/19.jpg[/img]

最后,点两次“确定”按钮,把这个自解压缩包做出来就行了。

小提示:为什么这样可以躲过“注册表监控”呢?因为“注册表监控”对于reg文件的导入认为是我们人工允许的,不会阻拦,但是这样加入自启动项和原来的效果却是相同的。


恩,我的文章就到此结束了,通过了这三个监控,你的木马就可以将杀毒软件踩在脚下了。汇编语句可能对小菜们是稍微难了一点,可是学习本来不就是一件苦闷的事情吗?这篇文章也不敢说有多大技术含量,但是那些免杀高手的做法和这也大同小异,只是可能思路不太相同而已。

paomo86 发表于 2009-7-6 13:13

学习了,`老大你的软件好多呀!{::tongue::}

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.