《黑客×档案》2007年第10期摘录:图5码相混淆,分不清界限,当然
-
如发现有乱码,
请直接从这里浏览原文
正文摘录:图5码相混淆,分不清界限,当然你也可以记下刚才还原的代码的开始地址和结尾地址,不过随着特征码的增多,记录的地址也会越来越多,注意别搞混淆了就行。n0p一部分后查杀(注意记录下你n0p的代码的起始地址),如果有毒,说明特征码不在我们nop的代码里面,反之,就把没nop的代码全部nop掉(避免干扰),把nop的代码全部还原后重复操作。我们看结果.有毒,说明有特征码在下面的代码里。可以暂时不管上面nop的代码中有没有特征码,图6先找到一处再说,因为程序比较大,代码多了很容易混淆,而且一次也不可能把所有的特征码全部找出图7来,一处一处的找。继续,无毒,说明特征码被n0p了,我们把下面没有特征码的代码n0p掉,避免干扰。把刚才查杀的代码还原。查杀后发现了病毒,没n0p的代码中有特征码,继续往下面nop,如图8。图8继续这个过程,直到找到特征码为止,如图9。我找到的第一处特征码是0042F50c,把这个地址记录下来,关闭OD,将服务端重新载人,把刚才找到的特征码nop后保存,生成一个少了一处特征码的服务端,然后使用它来找后面的特征码。这样可以避免找到重复的特征码而浪费时间。图9整理一下思路,免得菜鸟们看晕了。先nop所有的代码,还原一部分后查杀,无毒则继续还原代码,并把已经还原的代码n0p掉避免干扰,有毒的话则还原的代码中有特征码,然后再n0p一部分还原的代码杀毒,重复以上操作,直到找到特征码。还有,一定要记得你每次n0p或者还原的代码的起始地址,不然前功尽弃。另外,定位的时候一定要高度集中精神,不然很容易搞混淆。方法和步骤就是这样了,虽然比myccl麻烦了点,但可以精确的定位出特征码。另外给大家说个技巧,在选取代码的时候,最好不要通过拖动滚动条的办法来选取,因为程序比较大,在按滚动条的时候很容易按到其它地方去。最好的办法是通过按住左键不放往下拉,这样很方便.也比较精确。使用OD定位的多了,自己就掌握规律了。还有,大家不要被传统的“经典”教程所误导。经本人测试,没有做文件免杀,一样可以使用OD来定位灰鸽子内存特征码。(本文所涉及到的0]IyJcE已收录到光盘中)墨
阅读此文(图):
在线翻阅