<?xml version="1.0" standalone="yes"?>
<?xml-stylesheet type="text/xsl" href="css/rss.xslt"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>MK2-风 之谷 - 免杀资料</title><link>http://www.mk2leo.com/</link><description>大家来学习编程吧 - </description><generator>RainbowSoft Studio Z-Blog 1.8 Arwen Build 90619</generator><language>zh-CN</language><copyright>MK2-风版权所有.</copyright><pubDate>Sat, 04 Sep 2010 21:53:11 +0800</pubDate><item><title>免杀资料教学下载</title><author>mk2leo@qq.com (leoling504)</author><link>http://www.mk2leo.com/post/70.html</link><pubDate>Mon, 01 Dec 2008 21:26:37 +0800</pubDate><guid>http://www.mk2leo.com/post/70.html</guid><description><![CDATA[<p><span class="tpc_content">第11课;灵活运用花指令<br /><a href="http://vip1.sec520.com/ms/11.rar" target="_blank">http://vip1.sec520.com/ms/11.rar</a><br /><br />第12课;花指令多重跳转法免杀全免杀的捆绑器<br /><a href="http://vip1.sec520.com/ms/12.rar" target="_blank">http://vip1.sec520.com/ms/12.rar</a><br /><br />第13课;SEH异常结合花指令免杀一批杀软<br /><a href="http://vip1.sec520.com/ms/13.rar" target="_blank">http://vip1.sec520.com/ms/13.rar</a><br /><br />第14课;特征码定位工具MYccl的实战应用(上)<br /><a href="http://vip1.sec520.com/ms/14.rar" target="_blank">http://vip1.sec520.com/ms/14.rar</a><br /><br />第15课;特征码定位工具MYccl的实战应用(下)<br /><a href="http://vip1.sec520.com/ms/15.rar" target="_blank">http://vip1.sec520.com/ms/15.rar</a><br /><br />第16课;上兴远程瑞星表面特证码修改<br /><a href="http://vip1.sec520.com/ms/16.rar" target="_blank">http://vip1.sec520.com/ms/16.rar</a><br /><br />第17课;上兴内存特证码定位及免杀<br /><a href="http://vip1.sec520.com/ms/17.rar" target="_blank">http://vip1.sec520.com/ms/17.rar</a><br /><br />第18课;MYccl主动防御定位讲解<br /><a href="http://vip1.sec520.com/ms/18.rar" target="_blank">http://vip1.sec520.com/ms/18.rar</a><br /><br />第19课;灰鸽子主动防御特征码修改免杀<br /><a href="http://vip1.sec520.com/ms/19.rar" target="_blank">http://vip1.sec520.com/ms/19.rar</a><br /><br />第20课;MYCLL和multiCCL的使用方法和区别<br /><a href="http://vip1.sec520.com/ms/20.rar" target="_blank">http://vip1.sec520.com/ms/20.rar</a><br /><br />第21课;C32Asm修改字符串大小写与中文替换法讲解<br /><a href="http://vip1.sec520.com/ms/21.rar" target="_blank">http://vip1.sec520.com/ms/21.rar</a></span><br />&nbsp;</p>]]></description><category>免杀资料</category><comments>http://www.mk2leo.com/post/70.html#comment</comments><wfw:comment>http://www.mk2leo.com/</wfw:comment><wfw:commentRss>http://www.mk2leo.com/feed.asp?cmt=70</wfw:commentRss><trackback:ping>http://www.mk2leo.com/cmd.asp?act=tb&amp;id=70&amp;key=54c3d492</trackback:ping></item><item><title>木马免杀之汇编花指令技巧</title><author>mk2leo@qq.com (leoling504)</author><link>http://www.mk2leo.com/post/69.html</link><pubDate>Mon, 01 Dec 2008 20:40:19 +0800</pubDate><guid>http://www.mk2leo.com/post/69.html</guid><description><![CDATA[<p><span class="tpc_content">木马免杀之汇编花指令技巧<br /><br />作者： 逆流风<br /><br />（发表于《黑客X档案》07.07，转载注明出处）<br /><br />相信很多朋友都做过木马免杀，早期的免杀都是加壳和改特征码，现在免杀技术已经发展到花指令免杀，改壳之类的，而这些需要一定的汇编知识，但是汇编却不是一块容易啃的骨头，所以我写了这篇菜鸟版的免杀汇编教程，帮助小菜们快速入门，掌握免杀必备的汇编知识，改花指令，改特征码的技巧和编写自己的花指令。<br /><br />一、免杀必备的汇编知识<br /><br />push 压栈，栈是一种数据结构，记住四个字：先进后出。压栈就是把数据放如栈中，从栈顶放如，出栈的时候也是从栈顶取出，所以会有先进后出的特点！先进后出我们可以这样理解，例如：一个乒乓球筒，我们放入乒乓球，然后取出乒乓球，取出的都是就后放进的球。就如我们放入球的顺序是球1、2、3、4，取出的顺序是球4、3、2、1。<br />pop 出栈，与push相对应。<br />mov a,b 把b的值送给a，把它看作编程中的赋值语句就是b赋值给a，这时a的值就是b了。<br />nop 无作用，就是什么也没做。<br />retn 从堆栈取得返回地址并跳到该地址执行。<br /><br />下面是一些算术运算指令：<br /><br />ADD 加法<br />sub 减法<br />inc 加1<br />dec 减1<br /><br />最后是跳转指令：<br /><br />jmp 无条件跳<br />je 或jz 若相等则跳<br />jne或jnz 若不相等则跳<br />jb 若小于则跳<br />jl 若小于则跳<br />ja 若大于则跳<br />jg 若大于则跳<br />jle 若小于等于则跳<br />jge 若大于等于则跳<br /><br />这些就是我们需要掌握的，怎么样不多吧，一些指令可能看不明白，看了后面的就会清楚了。对了，忘了讲寄存器了，寄存器是中央处理器内的其中组成部份。寄存器是有限存贮容量的高速存贮部件，它们可用来暂存指令、数据和位址。我们需要了解的是8个通用寄存器:EAX,EBX,ECX,EDX,ESI,EDI,EBP,ESP<br /><br />二、特征码和花指令的修改<br /><br />特征码我就不多说了，大家都知道的，现在杀毒软件查杀都用特征码查杀，改了木马的特征码，杀毒软件就查不出我们的木马，这样就达到免杀的效果。而花指令是程序中的无用代码，程序多它没影响，少了它也能正常运行。加花指令后，杀毒软件对木马静态反汇编使，木马的代码就不会正常显示出来，加大杀毒软件的查杀难度。花指令的原理是堆栈平衡。前面介绍push说了，堆栈平衡可以这样理解，有进有出，不管花指令怎么写，我们要达到的目的是加花后，堆栈与未加之前一样。<br /><br />网上的花指令因为是公布出来的，所以免杀周期不长，一般公布出来不久就会被杀毒软件查杀，但是我们只要简简单单的修改一两句就可以达到免杀了。下面我们来看看5种修改方法。（也适用于特征码修改）<br /><br />我们先看看木马彩衣(金色鱼锦衣)花指令<br /><br />1、push ebp<br />2、mov ebp,esp<br />3、add esp,-0C<br />4、add esp,0C<br />5、mov eax,原入口<br />6、push eax<br />7、retn<br /><br />1、2、在大部分程序开头可以经常看到。push ebp是将寄存器ebp压入堆栈，mov ebp,esp是将寄存器esp的值送给寄存器ebp。3、4、使用了add指令，add esp,-0C是寄存器esp加上-0C，add esp,0C是寄存器esp加上0C，3、4、加起来就是什么也没做，达到堆栈平衡。5、6、7、完成了跳转到入口点的功能，我们一句句来看看mov eax,原入口，将入口点送入寄存器eax，push eax将寄存器eax压入堆栈，retn我们知道是从堆栈取得返回地址并跳到该地址执行。这样就回到入口点了。<br /><br />我们看看实例，以木马彩衣免杀为例，先侦壳，用peid载入，显示Microsoft Visual Basic 5.0 / 6.0，（如图1）很好，免去了脱壳的麻烦，复制木马彩衣后再粘贴，得到复件 木马彩衣.exe，我们用木马彩衣对复件 木马彩衣.exe加花，加金色鱼锦衣，（如图2）然后用Ollydbg.exe载入，我们就可以看到看到金色鱼锦衣的花指令了。（如图3）用卡巴扫描，被卡巴认出来了。（如图4）这是因为金色鱼锦衣公布比较久，用的人多了，对杀毒软件就无效了。<br /><br /><br /><br /><br /><br /><br />1、替换法<br /><br />我们用替换法来修改金色鱼锦衣，修改结果如下：<br /><br />1、push ebp<br />2、mov ebp,esp<br />3、add esp,1<br />4、add esp,-1<br />5、mov eax,原入口<br />6、push eax<br />7、retn<br /><br />将原来3、4、句add esp,-0C和add esp,0C改成add esp,1和add esp,-1这两句也能达到堆栈平衡，（如图5）右键选中add esp,-0C，点击汇编，将add esp,-0C改成add esp,1，将add esp,0C改成add esp,-1。选中修改部分，右键单击&rarr;复制到可执行文件&rarr;选择部分，弹出窗口，右键保存文件。这里我保存成&ldquo;替换法.exe&rdquo;用卡巴查杀，免杀了。（如图6）<br /><br /><br /><br />2、移位法<br /><br />1、push ebp<br />2、mov ebp,esp<br />3、nop<br />4、nop<br />5、add esp,-0C<br />6、add esp,0C<br />7、mov eax,原入口<br />8、push eax<br />9、retn<br /><br />将原来的3、4、5、6、7、几个语句向下移动2行，修改后保存为&ldquo;移位法.exe&rdquo;。<br /><br />3、添加法<br /><br />1、push ebp<br />2、mov ebp,esp<br />3、push edx<br />4、pop edx<br />5、add esp,-0C<br />6、add esp,0C<br />7、mov eax,原入口<br />8、push eax<br />9、retn<br /><br />在金色鱼锦衣中加入push edx和pop edx，这两句是将寄存器edx压入和弹出堆栈，一样达到堆栈平衡。修改后保存成&ldquo;添加法.exe&rdquo;。<br /><br />4、去除法<br /><br />1、push ebp<br />2、mov ebp,esp<br />3、mov eax,原入口<br />4、push eax<br />5、retn<br /><br />删除add esp,-0C和add esp,0C，修改后保存成&ldquo;去除法.exe&rdquo;。<br /><br />5、跳转法<br /><br />push ebp<br />mov ebp,esp<br />jmp 跳出到add esp,-0C的地址<br />mov eax,复件_木?0040109C<br />push eax<br />retn<br />add esp,-0C<br />add esp,0C<br />jmp 跳回mov eax,复件_木?0040109C的地址<br /><br />这个可能比较复杂，大家看看截图（图7），修改后保存为&ldquo;跳转法.exe&rdquo;。<br /><br /><br /><br />我们用卡巴试试修改后的效果，（如图8）看看，只有原来的木马彩衣，加了金色鱼锦衣的和去除法的可以查到。去除法是因为金色鱼锦衣的代码比较短，如果花指令长点，效果会比较好。几种修改方法结合使用效果更好，当然，一样可修改特征码，相对跳转法在修改特征码中使用比较多。<br /><br /><br /><br />三、编写自己的花指令<br /><br />通过上面的学习我们可以知道花指令大概结构，一般开始是push ebp和mov ebp,esp，接下来就是一些能保持堆栈平衡的指令，完了就是跳回入口点了。<br /><br />我罗列出一些能保持堆栈平衡的代码<br /><br />push ebp 把基址指针寄存器压入堆栈<br />pop ebp 把基址指针寄存器弹出堆栈<br /><br />push eax 把数据寄存器压入堆栈<br />pop eax 把数据寄存器弹出堆栈<br /><br />nop 无作用，就是什么也没做<br />mov eax,eax 将eax送入eax，等于什么也没做<br /><br />sub eax,1<br />add eax,1 寄存器eax+1和寄存器eax-1，一样等于什么也没做<br /><br />sub eax,2<br />dec eax<br />dec eax 一样很简单的加减运算，先是寄存器eax+2，紧接着连续用dec指令处理寄存器eax两次，就是-1再-1，达到堆栈平衡。<br /><br />很简单，大家参考后可以自己写出N多这样的指令。写完这些就可以写跳转语句了。<br /><br />JMP 入口点 这时最简单的跳转了，无条件跳回入口点，最简单当然效果也最差了<br /><br />mov eax,入口点<br />push eax<br />retn &nbsp; &nbsp; &nbsp; 很眼熟吧，金色鱼锦衣的跳转，解释过，不多说了。<br /><br />mov eax,入口点<br />jmp eax &nbsp; &nbsp; 和金色鱼锦衣的跳转的原理差不多吧，入口点压入寄存器eax，再跳到寄存器eax，就是跳到入口点了。<br /><br />je 入口点<br />jne 入口点 等于则跳和不等于则跳，合起来就是绝对跳咯，像这样的条件跳转语句很多，大家可参考前面跳转指令的知识自己写。<br /><br />上面的指令随便结合相信大家可以写出属于自己的花指令了，这样我这篇文章的目的也就达到了。花指令添加的方法大家可以参照去年第9期的主题乐园。</span><br />&nbsp;</p>]]></description><category>免杀资料</category><comments>http://www.mk2leo.com/post/69.html#comment</comments><wfw:comment>http://www.mk2leo.com/</wfw:comment><wfw:commentRss>http://www.mk2leo.com/feed.asp?cmt=69</wfw:commentRss><trackback:ping>http://www.mk2leo.com/cmd.asp?act=tb&amp;id=69&amp;key=755dd2b4</trackback:ping></item><item><title>PE文件格式</title><author>mk2leo@qq.com (leoling504)</author><link>http://www.mk2leo.com/post/58.html</link><pubDate>Thu, 20 Nov 2008 04:54:13 +0800</pubDate><guid>http://www.mk2leo.com/post/58.html</guid><description><![CDATA[<p><font face="Courier New">【1】PE文件格式<br /><br />PE(Portable Executable)是Win32平台下可执行文件遵守的数据格式。常见的可执行文件(如&quot;*.exe&quot;和&quot;*.dll&quot;文<br /><br />件)都是典型的PE文件。<br /><br />一个可执行文件不光包含了二进制的机器代码，还会自带许多其他信息，如字符串、菜单、图标、位图、字体等。PE文件<br /><br />格式规定了所有的这些信息在可执行文件中如何组织。在程序被执行时，操作系统会按照PE文件格式的约定去相应的地方准<br /><br />确地定位各种类型的资源，并分别装入内存的不同区域。如果没有这种通用的文件格式约定，试想可执行文件装入内存将会<br /><br />变成一件多么困难的事情！<br /><br />PE文件格式把可执行文件分成若干个数据节(section)，不同的资源被存放在不同的节中。一个典型的PE文件中包含的节<br /><br />如下。<br /><br />.text 由编译器产生，存放着二进制的机器代码，也是我们反汇编和调试的对象。<br /><br />.data 初始化的数据块，如宏定义、全局变量、静态变量等。<br /><br />.idata 可执行文件所使用的动态链接库等外来函数与文件的信息。<br /><br />.rsrc 存放程序的资源，如图标、菜单等。<br /><br />除此以外，还可能出现的节包括&ldquo;.reloc&rdquo;、&ldquo;.edata&rdquo;、&ldquo;.tls&rdquo;、&ldquo;.rdata&rdquo;等。<br /><br />提示：如果是正常编译出的标准PE文件，其节信息往往是大致相同的。但这些section的名字只是位了方便人的记忆与使 <br /><br />用，使用Microsoft Visual C++中的编译指示符#pragma data_seg()可以把代码中的任意部分编译到PE的任意节<br /><br />中，节名也可以自己定义。如果可执行文件经过了&ldquo;加壳&rdquo;处理，PE的节信息就会变得非常&ldquo;古怪&rdquo;。在Crack和反病<br /><br />毒分析中需要经常处理这类古怪的PE文件。<br /><br />【2】虚拟内存<br /><br />Windows的内存可以被分为两个层面：物理内存和虚拟内存。其中，物理内存非常复杂，需要进入Windows内核级别<br /><br />Ring0才能看到。通常，在用户模式下，我们用调试器看到的内存地址都是虚拟内存。<br /><br />如(图1)所示，Windows让所有的进程都&ldquo;相信&rdquo;自己拥有独立的4GB内存空间。但是，我们计算机中那根实际的内<br /><br />存条可能只有512MB，怎么可能为所有进程都分配4GB的内存呢？这一切都是通过虚拟内存管理器的映射做到的。<br /><br />虽然每个进程都&ldquo;相信&rdquo;自己拥有4GB的空间，但实际上它们运行时真正用到的空间根本没有那么多。内存管理器只是分<br /><br />给进程了一片&ldquo;假地址&rdquo;，或者说是&ldquo;虚拟地址&rdquo;，让进程们&ldquo;认为&rdquo;这些&ldquo;虚拟地址&rdquo;都是可以访问的。如果进程不使用<br /><br />这些&ldquo;虚拟地址&rdquo;，它们对进程来说就只是一笔&ldquo;无形的数字财富&rdquo;；当需要进行实际的内存操作时，内存管理器才会把<br /><br />&ldquo;虚拟地址&rdquo;和&ldquo;物理地址&rdquo;联系起来。<br /><br />Windows的内存管理机制在很大程度上与日常生活中银行所起的金融作用有一定的相似性，我们可以通过一个形象的比方<br /><br />来理解虚拟内存。<br /><br />进程相当于储户。<br /><br />内存管理器相当于银行。<br /><br />物理内存相当于钞票。<br /><br />虚拟内存相当于存款。<br /><br />进程可能拥有大片的内存，但使用的往往很少；储户拥有大笔的存款，但实际生活中的开销并没有多少。<br /><br />进程不使用虚拟内存时，这些内存只是一些地址，是虚拟存在的，是一笔无形的数字财富。<br /><br />进程使用内存时，内存管理器会为这个虚拟地址映射实际的物理内存地址，虚拟内存地址和最终被映射到的物理内存地址<br /><br />之间没有什么必然联系；储户需要用钱时，银行才会兑现一定的现金给储户，但物理钞票的号码与储户心目中的数字存款之<br /><br />间可能并没有任何联系。<br /><br />操作系统的实际物理内存空间可以远远小于进程的虚拟内存空间之和，仍能正常调度；银行中的现金准备可以远远小于所<br /><br />有储户的储蓄额总和，仍能正常运转，因为很少会出现所有储户同时要取出全部存款的现象；社会上实际流通的钞票也可以<br /><br />远远小于社会的财富总额。<br /><br />提示：实际上，金融学、经济学、管理学中有很多概念和理论与计算机科学中的知识出奇相似。有时将这些知识互相类比一下会获得<br /><br />一种融会贯通的清爽。<br /><br />进程所拥有的4GB虚拟内存中包含了程序运行时所必须的资源，比如代码、栈空间、堆空间、资源区、动态链接库等。<br /><br />注：操作系统原理中也有&ldquo;虚拟内存&rdquo;的概念，那是指当实际的物理内存不够时，有时操作系统会把&ldquo;部分硬盘空间&rdquo;当作<br /><br />内存使用从而使程序得到装载时运行的现象。请不要将用硬盘充当内存的&ldquo;虚拟内存&rdquo;与这里介绍的&ldquo;虚拟内存&rdquo;混淆。此<br /><br />外，教程中所讲到的&ldquo;内存&rdquo;均指Windows用户态内存映射机制下的虚拟内存。<br /><br /><br />【3】PE文件与虚拟内存间的映射<br /><br />在调试漏洞时，可能经常需要做这样两种操作。<br /><br />(1)静态反汇编工具看到的PE文件中某条指令的位置是相当于磁盘文件而言的，即所谓的文件偏移，我们可能还需要知道<br /><br />这条指令在内存中所处的位置，即虚拟内存地址(VA)。<br /><br />(2)反之，在调试时看到的某条指令的地址是虚拟内存地址，我们也经常需要回到PE文件中找到这条指令对应的机器码。<br /><br />为此，我们需要弄清楚PE文件地址和虚拟内存地址之间的映射关系。首先，我们先看几个重要的概念。<br /><br />&lt;1&gt;文件偏移地址(File Offset Address)<br /><br />数据在PE文件中的地址叫文件偏移地址。这是文件在磁盘上存放时相对于文件开头的偏移。<br /><br />&lt;2&gt;装载基址(Image Base)<br /><br />PE装入内存时的基地址。默认情况下，EXE文件在内存中的基地址是0x00400000，DLL文件是0x10000000。这些位置可<br /><br />以通过修改编译选项来更改。<br /><br />&lt;3&gt;虚拟内存地址(Virtual Address，VA)<br /><br />PE文件中的指令被装入内存后的地址。<br /><br />&lt;4&gt;相对虚拟地址(Relative Virtual Address，RVA)<br /><br />相对虚拟地址是内存地址相对于映射基址的偏移量。<br />虚拟内存地址、映射基址、相对虚拟内存地址三者之间有如下关系。(见图2-PE文件与虚拟内存的映射关系) <br /><br />文件偏移是相对于文件开始处0字节的偏移，RVA(相对虚拟地址)则是相对于装载基址0x00400000处的偏移。由于操作系<br /><br />统在进行装载时&ldquo;基本&rdquo;上保持PE中的各种数据结构，所以文件偏移地址和RVA有很大的一致性。<br /><br />之所以说&ldquo;基本&rdquo;上一致是因为还有一些细微的差异。这些差异是由于文件数据的存放单位与内存数据存放单位不同而造<br /><br />成的。<br /><br />(1)PE文件中的数据按照磁盘数据标准存放，以0x200字节为基本单位进行组织。当一个数据节(section)不足0x200字<br /><br />节时，不足的地方将被0x00填充；当一个数据节超过0x200字节时，下一个0x200块将分配给这个节使用。因此PE数据节的大<br /><br />小永远是0x200的整数倍。<br /><br />(2)当代码装入内存后，将按照内存数据标准存放，并以0x1000字节位基本单位进行组织。类似的，不足将被补全，若超<br /><br />出将分配下一个0x1000为其所用。因此，内存中的节总是0x1000的整数倍。<br /><br />(表一)中列出的文件偏移地址和RVA之间的对应关系可以让大家更直接地理解这种&ldquo;细微的差异&rdquo;。<br /><br />由于内存中数据节相对于装载基址的偏移量和文件中数据节的偏移量有上述差异，所以进行文件偏移到虚拟内存地址之间<br /><br />的换算时，还要看所转换的地址位于第几个节内。<br /><br />我们把这种由存储单位差异引起的节基址差称作节偏移，在上例中：<br /><br />.text节偏移=0x1000-0x400=0xc00<br /><br />.rdata节偏移=0x7000-0x6200=0xE00<br /><br />.data节偏移=0x9000-0x7400=0x1C00<br /><br />.rsrc节偏移=0x2D000-0x7800=0x25800</font></p>]]></description><category>免杀资料</category><comments>http://www.mk2leo.com/post/58.html#comment</comments><wfw:comment>http://www.mk2leo.com/</wfw:comment><wfw:commentRss>http://www.mk2leo.com/feed.asp?cmt=58</wfw:commentRss><trackback:ping>http://www.mk2leo.com/cmd.asp?act=tb&amp;id=58&amp;key=1193c0ce</trackback:ping></item><item><title>输入表进行免杀</title><author>mk2leo@qq.com (leoling504)</author><link>http://www.mk2leo.com/post/51.html</link><pubDate>Mon, 17 Nov 2008 11:48:42 +0800</pubDate><guid>http://www.mk2leo.com/post/51.html</guid><description><![CDATA[<p>本文属于原创文章，如转载请表明版权：<a href="http://hi.baidu.com/lupin1314">http://hi.baidu.com/lupin1314</a></p><p>&nbsp;&nbsp;&nbsp; 现在的免杀越来越不好做了，特征码定位得十分刁钻，今天我就来讲一讲如何对输入表进行免杀，用到的工具有WinHex LordPE OC</p><p>&nbsp;&nbsp;&nbsp; 我以PCSHARE的DLL文件为例，这处是热瑞星的特征码 0000D4F4_00000002 用WinHex打开，可以看到定位在了输入表函数上。</p><p>&nbsp;</p><div forimg="1"><p>&nbsp;</p><div forimg="1"><div forimg="1"><div forimg="1"><div forimg="1"><img class="blogimg" alt="" border="0" small="0" src="http://hiphotos.baidu.com/lupin1314/pic/item/7b99d1a4917040e09152ee5b.jpg" /></div></div></div></div><p>我们用LoadPE大开看看，依次打开目录 输入表 找到函数名。</p><p>&nbsp;</p><div forimg="1"><p><img class="blogimg" alt="" border="0" small="0" src="http://hiphotos.baidu.com/lupin1314/pic/item/c70d458fa330ddf9f11f362b.jpg" /></p><p>我们将它复制，向下找到一段空白区，重新写入。</p><p>&nbsp;</p><div forimg="1"><div forimg="1"><p><img class="blogimg" alt="" border="0" small="0" src="http://hiphotos.baidu.com/lupin1314/pic/item/1477b723d190d9459922ed37.jpg" /></p><p>用00将原函数名填充，并记下新函数名的文件偏移地址，也就是0000DCA3,用OC将它转换成内存地址，</p><p>也就是1000ECA3.</p><p>&nbsp;</p><div forimg="1"><p><img class="blogimg" alt="" border="0" small="0" src="http://hiphotos.baidu.com/lupin1314/pic/item/c4cccb291e86a9e998250a3a.jpg" /></p><p>再到LORDPE中看看，函数名没有了。</p><p>&nbsp;</p><div forimg="1"><div forimg="1"><p><img class="blogimg" alt="" border="0" small="0" src="http://hiphotos.baidu.com/lupin1314/pic/item/3e95031f5f742274f724e40d.jpg" /></p><p>接下来给出个公式&nbsp;&nbsp;&nbsp; 内存地址=RAV+RAV基址 ，RAV基地址可以在LORDPE中看到.</p><p>&nbsp;</p><div forimg="1"><p><img class="blogimg" alt="" border="0" small="0" src="http://hiphotos.baidu.com/lupin1314/pic/item/a7c0417ec90f2c2f0dd7da1e.jpg" /></p><p>所以1000ECA3=10000000+RAV ,RAV=0000ECA3,这时还要注意，输入表函数名前有两个空格所以RAV=0000ECA1.我们在LORDPE 中找到刚才的函数名，点右键，编辑，填入0000ECA1,</p><p>&nbsp;</p><div forimg="1"><p><img class="blogimg" alt="" border="0" small="0" src="http://hiphotos.baidu.com/lupin1314/pic/item/e0ec7694c9633409d31b70e8.jpg" /></p><p>点确定，看看函数名恢复了</p><p>&nbsp;</p><div forimg="1"><p><img class="blogimg" alt="" border="0" small="0" src="http://hiphotos.baidu.com/lupin1314/pic/item/65dc28f93c8c294e242df2f6.jpg" /></p><p>保存后用这个生成服务端，正常上线。</p><p>&nbsp;</p><div forimg="1"><div forimg="1"><img class="blogimg" alt="" border="0" small="0" src="http://hiphotos.baidu.com/lupin1314/pic/item/ff3c87095ae5e5b82fddd4da.jpg" /></div></div><p>至此输入表函数免杀完成。</p></div></div></div></div></div></div></div></div></div></div>]]></description><category>免杀资料</category><comments>http://www.mk2leo.com/post/51.html#comment</comments><wfw:comment>http://www.mk2leo.com/</wfw:comment><wfw:commentRss>http://www.mk2leo.com/feed.asp?cmt=51</wfw:commentRss><trackback:ping>http://www.mk2leo.com/cmd.asp?act=tb&amp;id=51&amp;key=3c3d2c4f</trackback:ping></item><item><title>免杀文章</title><author>mk2leo@qq.com (leoling504)</author><link>http://www.mk2leo.com/post/49.html</link><pubDate>Mon, 17 Nov 2008 11:34:44 +0800</pubDate><guid>http://www.mk2leo.com/post/49.html</guid><description><![CDATA[<p>图片： <br /><img alt="" border="0" onload="if(this.width&gt;'780')this.width='780';if(this.height&gt;'1680')this.height='1680';" onclick="if(this.width&gt;=780) window.open('http://bbs.77169.com/1148849603/Mon_0810/166_362969_c03b4a0425aa976.jpg');" src="http://bbs.77169.com/1148849603/Mon_0810/166_362969_c03b4a0425aa976.jpg" /> <br /><br />图片： <br /><img alt="" border="0" onload="if(this.width&gt;'780')this.width='780';if(this.height&gt;'1680')this.height='1680';" onclick="if(this.width&gt;=780) window.open('http://bbs.77169.com/1148849603/Mon_0810/166_362969_c85ceb07f8e2038.jpg');" src="http://bbs.77169.com/1148849603/Mon_0810/166_362969_c85ceb07f8e2038.jpg" /> <br /><br />图片： <br /><img alt="" border="0" onload="if(this.width&gt;'780')this.width='780';if(this.height&gt;'1680')this.height='1680';" onclick="if(this.width&gt;=780) window.open('http://bbs.77169.com/1148849603/Mon_0810/166_362969_03d3f78ebea16d8.jpg');" src="http://bbs.77169.com/1148849603/Mon_0810/166_362969_03d3f78ebea16d8.jpg" /> <br /><br />图片： <br /><img alt="" border="0" onload="if(this.width&gt;'780')this.width='780';if(this.height&gt;'1680')this.height='1680';" onclick="if(this.width&gt;=780) window.open('http://bbs.77169.com/1148849603/Mon_0810/166_362969_cde9133525afac4.jpg');" src="http://bbs.77169.com/1148849603/Mon_0810/166_362969_cde9133525afac4.jpg" /> <br /><br />图片： <br /><img alt="" border="0" onload="if(this.width&gt;'780')this.width='780';if(this.height&gt;'1680')this.height='1680';" onclick="if(this.width&gt;=780) window.open('http://bbs.77169.com/1148849603/Mon_0810/166_362969_4d15ff758d4e67c.jpg');" src="http://bbs.77169.com/1148849603/Mon_0810/166_362969_4d15ff758d4e67c.jpg" /> <br /><br />图片： <br /><img alt="" border="0" onload="if(this.width&gt;'780')this.width='780';if(this.height&gt;'1680')this.height='1680';" onclick="if(this.width&gt;=780) window.open('http://bbs.77169.com/1148849603/Mon_0810/166_362969_80aed261ff9c817.jpg');" src="http://bbs.77169.com/1148849603/Mon_0810/166_362969_80aed261ff9c817.jpg" /> <br /><br />图片： <br /><img alt="" border="0" onload="if(this.width&gt;'780')this.width='780';if(this.height&gt;'1680')this.height='1680';" onclick="if(this.width&gt;=780) window.open('http://bbs.77169.com/1148849603/Mon_0810/166_362969_70235bd26cf0f0a.jpg');" src="http://bbs.77169.com/1148849603/Mon_0810/166_362969_70235bd26cf0f0a.jpg" /> <br /><br />图片： <br /><img alt="" border="0" onload="if(this.width&gt;'780')this.width='780';if(this.height&gt;'1680')this.height='1680';" onclick="if(this.width&gt;=780) window.open('http://bbs.77169.com/1148849603/Mon_0810/166_362969_2d4d4099aaed9a9.jpg');" src="http://bbs.77169.com/1148849603/Mon_0810/166_362969_2d4d4099aaed9a9.jpg" /> <br /><span class="tpc_content">图片是在太多，不方便转载，要看的话请看原文吧。。。。<br /><br />==========================================================<br /><br />出处：<a target="_blank" href="http://a1pass.blog.163.com/">http://a1pass.blog.163.com/</a><br /><br />本文发表于07年第7期《黑客X档案》，与原文有少许出入。<br /><br />转载请注明版权：<a target="_blank" href="http://a1pass.blog.163.com/">http://a1pass.blog.163.com/</a> A1Pass的博客<br /><br />题记：一篇自认为介绍的比较全面的免杀文章，为了完善内容，我还特意写了一篇续，估计08年1月多可能会发表出来与大家分享。<br /><br /><br /><br />最近网上办班学抓肉鸡、木马免杀的异常火暴，使得本来非议不断的黑客又一度成为新闻媒体热门词汇&hellip;&hellip;<br /><br />眼看黑客的精神与价值再一次被践踏，为了抵制网上收费办班的这种行为，今天我A1Pass就倾其所有，为大家彻底揭开免杀的神秘面纱，使菜鸟也成为免杀高手！！<br /><br />自从病毒与杀毒软件的诞生以来，他们之间的战争就从来没有停止过&hellip;&hellip;多套特征码、自动脱壳、内存杀毒、主动防御等等的出现为网络安全做出了一次次的贡献，当然黑客们也毫不逊色，也出现了修改特征码、加双层变态壳、去文件头等新的免杀技术。<br /><br />古人云&ldquo;知己知彼，方能百战不殆！&rdquo;<br /><br />今天，我们就以一个病毒防御工作者的角度来做我们的免杀工作。想不被杀，就要先知道是怎么杀的，还不太懂的朋友赶紧偷偷借机恶补吧。<br /><br /><br /><br />1.杀毒原理<br /><br />通常，一个病毒防御工作者拿到一个截获或上报上来的病毒时，先是分析这个病毒文件执行后的动作，所谓&ldquo;动作&rdquo;，就是指病毒文件执行后会做哪些操作。例如会生成什么新文件、怎样更改注册表、怎样注册服务、打开什么端口等等。<br /><br />搞明白这些后，下一步一般会研究这个病毒的文件结构，然后找出与众不同的地方，将其定义为特征码。而这个特征码定义的高明与否，就要看他定义的位置是否刁钻，例如他如果定义的是病毒文件更改注册表键值那部分代码的话，这显然不会太难！因为只要病毒文件更改键值，99%的情况下这个文件里一定存在被更改键值的字符串，所以找到这段字符串的位置就可以定义特征码了。但是针对这种特征码做免杀是非常容易的，只需找到相应的位置，并更改字母的大小写即可。而如果从文件头找出一段特征码就是非常不容易的事情了&hellip;&hellip;除此之外，所定义的特征码还有一个分支，即内存特征码。所谓内存特征码就是指木马文件运行后释放到内存时所存在的特征，它的原理大体与上面介绍的文件特征码一样。<br /><br />当特征码定义出来之后，就会被提交到另外的一个部门，然后进入病毒定义库，当用户更新后，以后杀毒软件在碰到符合要求的文件时就会将其毫不忧郁的杀掉！也就是说，杀毒软件只认特征码，不认文件。<br /><br />由此可见，病毒防御工作者寻找特征码的方式也不过如此，但这只是定义病毒文件特征码的工作，别的例如修复被感染文件等技术步骤和本文无关，在这也就不介绍了，有兴趣的朋友可以自己研究一下。<br /><br /><br /><br />2.免杀分类<br /><br />免杀的方法有很多，无奈没见哪为朋友综合系统的介绍，也苦了小菜们求学无门，只好掏银子找&ldquo;师傅&rdquo;，所以我就自告奋勇站出来一次，不足之处还请各位高手多多包涵&hellip;&hellip;<br /><br />我个人总结的免杀方法总共分两类，即主动免杀与被动免杀。<br /><br />一、主动免杀<br /><br />1. &nbsp; &nbsp; 修改字符特征：主动查找可能的特征码，包括木马文件修改注册表、生成新文件的名称与路径、注入的进程名等动作，也包括运行过程中可能出现或一定会出现的字符等文件特征。然后找出这些字符，并将其修改。<br /><br />2. &nbsp; &nbsp; 修改输入表：查找此文件的输入表函数名（API Name），并将其移位。<br /><br />3. &nbsp; &nbsp; 打乱文件结构：利用跳转（JMP），打乱文件原有结构。<br /><br />4. &nbsp; &nbsp; 修改入口点：将文件的入口点加1。<br /><br />5. &nbsp; &nbsp; 修改PE段：将PE段移动到空白位置<br /><br />二、被动免杀<br /><br />1. &nbsp; &nbsp; 修改特征码：用一些工具找出特征码并针对特征码做免杀处理。<br /><br />2. &nbsp; &nbsp; 用Vmprotect：使用Vmprotect加密区段。<br /><br />3. &nbsp; &nbsp; 文件加壳：可以用一些比较生僻的壳对木马文件进行保护。<br /><br />有的朋友看到这里有可能蒙了，PE、Vmprotect、入口点&hellip;&hellip;这些都是什么意思啊？不要着急，下面我会一一介绍的，只要你看完这篇文章，就一定会成为免杀高手！怎么样？Go！<br /><br /><br /><br />3.实战演习<br /><br />1.）修改字符特征<br /><br />&nbsp; &nbsp; &nbsp; 好，下面我们依然以一个病毒防御工作者的角度来考虑我们每一步应该做什么，然后在利用逆向思维分而治之。<br /><br />&nbsp; &nbsp; &nbsp; 现在假如我们拿到一个木马样本灰鸽子，首先当然要分析它究竟有什么功能，怎样运行以及怎样保护自己等。其实这一步要求的专业知识是很多的，但考虑到我们的读者，我们暂且用一个比较简单易行的方法&mdash;&mdash;运行木马AND查看此程序的帮助文档。<br /><br />&nbsp; &nbsp; &nbsp; 我们打开RegSnap，新建一个快照，打开RegSnap后，点击[新建快照]按钮（如图1）。<br /><br /><br /><br /><br />在弹出的对话框中选择[生成所有项目的快照]（如图2）。<br /><br /><br /><br />&nbsp; 然后保存快照，现在已经将RegSnap配置好了，下面运行我们的木马程序（提醒：做免杀时，一定要记住养好随时备分的好习惯，以防止修改错误或是实验运行时破坏、删除木马）。<br /><br />木马运行完毕后，我们在按照上面的方法重新做一个快照并保存，然后按快捷键F5，在弹出的&ldquo;比较快照&rdquo;对话框中选择刚才保存的快照，在&ldquo;第一个快照&rdquo;中选择我们刚才第一次保存的快照，而&ldquo;第二个快照&rdquo;选择我们后保存的快照存档，很快结果就出来了（如图3）。<br /><br /><br /><br />有的朋友对于使用RegSnap收集到的信息感到无力分析，抱怨收集到的东西太多，在这里我简单的介绍一下，首先应注意的是生成做对比的两个快照之间的时间要尽可能短，另外要排除带有OpenSaveMRU的注册表键值，还要排除有关*.rsnp文件的创建读写等操作记录。下面我们就将有用的信息提取出来，逐一分析。<br /><br />文件列表于 C:\WINDOWS\*.*<br /><br />新增文件 <br /><br />木马.exe<br /><br /><br /><br />注册表报告<br /><br />新增主键<br /><br />HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\MUICache\C:\Documents and Settings\A1Pass-admin\桌面\huigezi\复件 Server02.exe<br /><br />键值: 字符串: &quot;复件 Server02&quot;<br /><br />HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\Root\LEGACY_*6728*9A6C*670D*52A1\0000\Class<br /><br />键值: 字符串: &quot;LegacyDriver&quot;<br /><br />HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\Root\LEGACY_*6728*9A6C*670D*52A1\0000\ClassGUID<br /><br />键值: 字符串: &quot;{8ECC055D-047F-11D1-A537-0000F8753ED1}&quot;<br /><br />HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\Root\LEGACY_*6728*9A6C*670D*52A1\0000\Control\ActiveService<br /><br />键值: 字符串: &quot;木马服务&quot;<br /><br />HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\木马服务\Description<br /><br />键值: 字符串: &quot;灰鸽子服务端程序。远程监控管理.&quot;<br /><br />&hellip;&hellip;<br /><br /><br /><br />这里我只摘录了部分关键性的木马动作记录，全部记录请见光盘。通过文件列表我们可以知道木马在WINDOW目录下生成了一个新文件，而通过注册表的监控信息我们也知道了木马是怎样将自己注册为系统服务并自动运行的。<br /><br />那么我们回到瑞星的研究分析室，看看那些大哥大姐们会怎么办&hellip;&hellip;<br /><br />瑞星大哥：&ldquo;最近这灰鸽子太猖狂啦！我们是不是应该多定义几套特征码？&rdquo;<br /><br />瑞星大姐：&ldquo;恩，不错！先在注册表那定义一套特征码在说吧。&rdquo;<br /><br />A1Pass：&ldquo;STOP！！&rdquo;（只见画面突然定格，A1Pass将播放器最小化。）<br /><br />通过上面的对话，我们可以知道他们要将注册表的某个字符定义为特征码，从上面RegSnap分析出来的记录来看，他们的选择真的是太多了！那么他们究竟会用到哪些呢？其实，就做为一个黑客来讲，只要不影响服务端正常运行，就应该尽量多的改掉木马的所有字符，当然全部改变是不可能的，除非你自己编写木马。<br /><br />有的朋友要问了，除了注册表别的就不可以改了吗？答案当然是否定的，譬如生成新文件的名称与路径、注入的进程名等动作，这些我们可以利用WINDOWS对字母大小写不敏感的这一特点直接替换字母的大小写，而对于运行过程中可能出现或一定会出现的字符等我们可以直接将其替换成别的内容。<br /><br />下面我为大家演示一下怎样更改注入进程的名称。<br /><br />首先配置服务端，通过图4我们可以看出来灰鸽子的启动运行是需要&ldquo;IEXPLORE.EXE&rdquo;这个进程的，根据注册表的推理，我们可以认为其未加壳的服务端是应该存在&ldquo;IEXPLORE.EXE&rdquo;这一字符串的。既然如此，我们就先请出我们的第一把武器&ldquo;WinHex&rdquo;！<br /><br /><br /><br /><br />WinHex是一款极为出名16进制编辑器。得到 ZDNetSoftwareLibrary 五星级最高评价，拥有强大的系统效用。在这里，我们只用它来编辑文件，其余不做过多讨论。首先我们用WinHex打开我们的木马文件&ldquo;Server.exe&rdquo;，打开后如图5所示。<br /><br /><br /><br />然后我们按[Ctrl]+[F]快捷键调出查找文本对话框，输入IEXPLORE.EXE后点击&ldquo;是&rdquo;（如图6）。<br /><br /><br /><br />结果如图7所示。下面我们就对其进行大小写转换，用鼠标点击要更改的字母（例如I），然后在按键盘上的i，即可完成更改，就象使用WINDOWS的记事本一样。更改完毕后，按[Ctrl]+[S]快捷键保存即可。<br /><br /><br /><br />就这么简单？对！就这么简单！其他的例如注册表、生成新文件的名称与路径等等都可以利用此方法更改。<br /><br />但是不幸的是，经过这样改后，还不足以对付例如金山、江民等品牌杀毒软件，要想对付这些杀毒软件的查杀，我们还需要对我们的木马进行进一步处理。<br /><br />下面，我们开始学习输入表函数（APIName）免杀！<br /><br /><br /><br />2.）修改输入表<br /><br /><br /><br />不知有的朋友是否知道，PE文件的正常运行是离不开其内部输入表函数的，而不同的程序，其内部输入表函数的名称与在文件中的位置是不一样的，所以输入表函数也成了病毒防御工作者制作特征码紧盯的地方之一。在我查出来的关于灰鸽子的特征码来看，&ldquo;瑞星大哥&rdquo;已经将其的一处输入表函数作为特征码了。所以掌握输入表函数免杀技巧对于新入门的朋友来说势在必行！ <br />&nbsp; &nbsp; &nbsp; [PE文件小知识：PE文件是WINDOWS系统中特有的一种文件结构，它包括PE文件头、输入表与相关资源文件等等]<br /><br />&nbsp; &nbsp; 经过我的测试，直接单独修改文件内部的输入表函数会导致程序运行不正常甚至崩溃！那就没有办法了吗？我可没那么容易认输！经过一翻苦战，终于让我在LordPE中找到了解决办法，同时FoBnN的文章也给了我非常大的启发&hellip;&hellip;<br /><br />&nbsp; &nbsp; 我们先打开LordPE，点击[PE编辑器]按钮，在弹出的对话框中选中木马文件，打开后点击[目录]（如图8）。<br /><br /><br /><br />在点击导入表后面的[&hellip;]（如图9）。<br /><br /><br /><br />&nbsp; 在弹出的对话框中我们选择wininet.dll下的InternetOpenUrlA（如图10），有的朋友要问了，为什么非选择InternetOpenUrlA这个输入表函数呢？呵呵！那是因为这个输入表里有特征码哦，关于怎样确定特征码，我在后面会介绍，大家先别着急。<br /><br /><br /><br />&nbsp; &nbsp; &nbsp; 好的，关于LordPE就先停在这，下面我们就用WinHex来查找InternetOpenUrlA这个输入表函数的所在位置，并将其用0填充（操作方法：单击WinHex右面的16进制信息，输入0即可）（如图11、12）。<br /><br /><br /><br /><br /><br /><br /><br />&nbsp; 然后将其写到空白区域（既显示000000的区域），一定要从头开始写入，这样在以后计算地址时不容易出错，除此之外也要注意输入表函数的大小写不要搞错（如图13）。<br /><br /><br /><br />&nbsp; 保存后我们在回到LordPE那里，在需要更改的InternetOpenUrlA输入表函数上单击右键，在弹出的菜单里选择&ldquo;编辑&rdquo;，将Thunk里的信息改成000B9D5E（如图14）即可。<br /><br /><br /><br />&nbsp; 有的朋友要问了，刚才我们不是把那个输入表函数放到000B9D60那里了吗？到这怎么变成000B9D5E了？其实原理很简单，因为每个输入表函数前面都是有一个空格的，我们虽不用真正把那个空格加进去，但填写它的地址时一定要空出来，否则就会出错！而将000B9D60减去一个空格所占的位置，其地址正好为000B9D5E，还不十分明白的朋友在仔细看看图13，下面我们在回到LordPE，看看我们改过的输入表函数变成什么样了（如图15）？<br /><br /><br /><br />&nbsp; 呵呵！那我们该怎么办呢？其实简单的很，只要在重新改一下输入表函数的名称就可以了（如图16）。<br /><br /><br /><br />&nbsp; 有的时候因为我们所填写的地址为比较靠后的，例如我们现在改的这个000B9D5E，后面仅能容纳两个字节，所以更改输入表函数时只能键入两个字，对于这种情况我们可以先把Thunk里的信息改成如000B9D60这样的起始地址，改输入表函数名更改完毕后在将000B9D60改回原来的值（既000B9D5E），保存后即可成功，我们试一下看看（如图17）。<br /><br /><br /><br />&nbsp; 经测验鸽子的各项功能均正常！在用瑞星查一下试试（如图18），结果当然不言而喻&hellip;&hellip;<br /><br /><br /><br /><br /><br />3.）修改特征码<br /><br />&nbsp; &nbsp; &nbsp; 虽然到这我们免杀已经成功，但是为了学到更多的技术，为了让我们免杀的鸽子存活的更久，下面我在为大家介绍一下特征码的查找与修改技巧。<br /><br />&nbsp; &nbsp; 特征码是杀毒软件的心脏，但同样也是我们的心脏！就看谁先找到对方地心脏，并能发出致命一击，谁就是胜利者！<br /><br />&nbsp; &nbsp; &nbsp; 一提到查找特征码，就不得不说说MyCCL与CCL，这两个软件的名字相信留心过免杀技术的朋友不会陌生，但由于软件操作的傻瓜化，很多时候对于CCL的介绍只是一带而过，这可苦了入门的朋友！<br /><br />&nbsp; &nbsp; 这一小节我就先介绍一下MyCCL的用法&hellip;&hellip;<br /><br />&nbsp; &nbsp; 我们先来认识一下MyCCL（如图19），根据这张图我们下面就来大体介绍一下MyCCL的应用方法。首先点击第1处选择文件，然后在第2处输入分块个数，分块个数越多，定位越精确，然而生成的速度同时也就越慢，生成的文件总体积也就越大，就象灰鸽子这么大的服务端，如果分块数为300的话，那么它生成文件的总体积将超过230M！所以在这里不建议填写太大的数字，一般象灰鸽子这样的服务端分块数填400个就足够了。生成完毕后会弹出个对话框提醒你去相应目录杀毒，图中所示为&ldquo;E:\文章\极度免杀\鸽子\OUTPUT&rdquo;文件夹，我们到那个文件夹下开始杀毒，查到病毒就让杀毒软件将其彻底删除，注意，这一点很重要！处理完毕后点击第3处的二次处理，在点击[生成]上面的[特征区间]按钮即可出现右面的对话框。<br /><br /><br /><br />&nbsp; 下面我们在&ldquo;区间设定&rdquo;里右键单击特征码区间，在弹出的菜单中选择&ldquo;复合精确定位此处特征&rdquo;（如图20），然后重复上面的操作，直到你认为[单位长度]已经小到很方便更改的时候，特征码的定位就算结束了。<br /><br /><br /><br />&nbsp; &nbsp; &nbsp; 好了，一口气说了这么多，不知道刚入门的朋友是否懂得一些MyCCL的用法了没有&hellip;&hellip;<br /><br />&nbsp; &nbsp; &nbsp; 但是上面我们定位的是文件特征码，还有内存特征码没有定义，这里我们要用到CCL的内存特征码定位功能，打开CCL后，我们依次选择[文件]&rarr;[特征码验测]&rarr;[内存特征码]（如图21）。<br /><br /><br /><br />&nbsp; 在弹出的对话框中选择我们要进行免杀操作的木马，然后会进入&ldquo;定位范围选择窗口&rdquo;（如图22）。<br /><br /><br /><br />&nbsp; 由图中可知，第一个CODE段的偏移量为00000400，也就是说我们可以用00000400做为起始位置，那么我么就在用户输入区的&ldquo;起始位置&rdquo;处填写00000400，下面的那个验测大小怎么填写呢？看到图22中画线的那个&ldquo;当前文件大小&rdquo;了吗？我们可以用WINDOWS系统自带的计算器进行计算，把计算器的&ldquo;查看&rdquo;菜单设置为科学型、十六进制、四字（如图23）。<br /><br /><br /><br />&nbsp; 然后用当前文件大小的值减去起始值00000400，得到的结果为000B9A00，那么我们就在&ldquo;验测大小&rdquo;后填上000B9A00，然后点击&ldquo;填加区段&rdquo;按钮（如图24）。<br /><br /><br /><br />&nbsp; 最后点击确定，在新弹出的对话框中点击运行，不过需要注意的是，在进行此步操作时一定要打开杀毒软件的所有功能。下面你要做的就是等待&hellip;&hellip;<br /><br />&nbsp; &nbsp; &nbsp; 然而光找特征码是不够的，我们还得学会怎样更改，而关于特征码地更改是非常有学问的！这里为了方便广大读者能学以致用，在此我只介绍部分理论知识，着重介绍实践操作，但是我想请大家注意，免杀的方法象你做完免杀的木马一样，都有生存时间，而过了这个时间，这种免杀方法就变的不在实用，或者免杀效果大打折扣！所以要想真正成为免杀高手，还的打牢基本功，不断创造出新的免杀方法，因为我们是在与杀毒软件厂商的专业技术人员&ldquo;斗法&rdquo;啊！<br /><br />&nbsp; &nbsp; &nbsp; 关于需要注意的问题就先讲的这，下面我带大家先来了解一下目前更改特征码的办法。<br /><br />1. &nbsp; &nbsp; 大小写替换（只适用于文件免杀）<br /><br />适 用 于：出现可识别的英文字母或词组，并且确定其不是相关函数（如输入表函数）。<br /><br />操作方法：如咱们&ldquo;实战演习&rdquo;的第一节讲的一样，只须将大小写替换一下就可以了，例如特征码中出现了A，你只要将其替换为a即可。<br /><br />原 &nbsp; 理：利用WINDOWS系统对大小写不敏感，而杀毒软件却对大小写非常敏感这一特性达到免杀目的。<br /><br />2. &nbsp; &nbsp; 用00填充<br /><br />适 用 于：几乎任何情况，但成功率不是非常高。<br /><br />操作方法：例如我们找到了一处特征码0009EE7F_00000005，那么根据这段特征码信息我们可以知道它的位置在0009EE7F，大小为5个字节，也就是0009EE7F-0009EE83这一段内容（如图25）。<br /><br />&nbsp; &nbsp; &nbsp; <br /><br />&nbsp; &nbsp; &nbsp; 一直跟着文章实践操作的朋友肯定有疑问，你是怎么找到那个地址的呢？而我怎么找不到呢？那是因为WinHex的默认偏移量为decimal模式，我们单击Offset栏将其改为16进制模式即可（如图26）。<br /><br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br /><br />&nbsp; &nbsp; &nbsp; 然后我们有选择的一处处地用00填充（如图27）。<br /><br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br /><br />&nbsp; &nbsp; &nbsp; 记住要多试几次，80%的情况下你都能找到一处既能免杀又不影响程序正常运行的区域。对于定义出的内存特征码，只要将其内存地址用一个叫做《便宜量转换器》的小程序转换成16进制偏移量，然后在进行相应操作即可。<br /><br />原 &nbsp; 理：由于PE文件的特殊格式以及程序编译语言等问题，使得生成目标代码的效率并不高，难免出现一些&ldquo;垃圾信息&rdquo;，而这些信息存在与否对与程序是否能正常运行并不起决定性的作用，而当木马的这部分&ldquo;垃圾信息&rdquo;被定义为特征码时，我们完全可以将其删除，而删除的方法就是用无任何意义的00将其替换。<br /><br />3. &nbsp; &nbsp; 跳到空白区域<br /><br />适 用 于：几乎任何情况，成功率比较高。<br /><br />操作方法：还是以特征码0009EE7F_00000005为例子，假如我们使用00填充的方法失败了那么不要多想，接下来马上试试OllyDbg，关于OllyDbg我就不多介绍了，它是非常棒而且非常专业的一个动态反汇编/调试工具，这里我们只用它来帮助我们进行免杀作业，首先应该做的就是将我们的16进制偏移量0009EE7F转换为内存地址，因为OllyDbg的工作原理是先将程序释放到内存空间里，然后才能进行相关作业&hellip;这里要用到的是一个叫做《便宜量转换器》的小程序，我们用其转换完毕后得到的内存地址为0049FA7F（如图28）。<br /><br />&nbsp; &nbsp; &nbsp; <br /><br />&nbsp; &nbsp; &nbsp; 下面我们用OllyDbg打开我们的木马服务端，首先找到一处空白区，并域记下这的地址004A24A5，然后找到我们刚转换过来的地址0049FA7F，先将以0049FA7F开始以下的这三行数据选定，然后单击右键选则[复制]&rarr;[到接剪贴板]（如图29）。<br /><br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br /><br />&nbsp; &nbsp; &nbsp; 将其复制到本文文档里备用，然后在将这三行代码一一NOP掉（如图30）。<br /><br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br /><br />&nbsp; &nbsp; &nbsp; 最后右键点击0049FA7F，在弹出的对话框中选择汇编，并写入&ldquo;jmp 004A24A5&rdquo;这条汇编指令（如图31）。<br /><br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br /><br />&nbsp; &nbsp; &nbsp; 记住，在点击[汇编]按钮之前一定先把&ldquo;使用 NOP 填充&rdquo;前面的勾去掉。然后我们记下汇编后0049FA7F的下面那个地址0049FA84（仔细观察图31）。好，下面我们回到004A24A5这处刚才找到的空白地址（如图32）。<br /><br />&nbsp; &nbsp; &nbsp; <br /><br />&nbsp; &nbsp; &nbsp; 然后用刚才汇编的方法把在本文文档里备用的信息一句句地汇编进去，然后在将最后一句代码的下一行004A24AA处加入&ldquo;jmp 0049FA84&rdquo;这行代码（如图33）。<br /><br />&nbsp; &nbsp; &nbsp; <br /><br />&nbsp; &nbsp; &nbsp; 然后单击右键&rarr;[复制到可执行文件]&rarr;[所有修改]（如图34）。<br /><br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br /><br />&nbsp; &nbsp; &nbsp; 在弹出的对话框中选择&ldquo;全部复制&rdquo;然后保存即可。而对于内存免杀就省去了内存地址转换这一步了。<br /><br />原 &nbsp; 理：大家先看图35，由图中可知，正象此方法的名字&ldquo;跳到空白区域&rdquo;一样，这种方法的原理就是将原本含有特征码的信息转移到空白区域，并把原先位置的信息全部NOP掉，并在那里加一个跳转指令，让其跳到004A24A5处，也就是我们找到的空白区域，并把原来在0049FA84的信息移到这里，加完信息后在加一条指令让其在跳回去，以使程序连贯起来。<br /><br />&nbsp; &nbsp; &nbsp; <br /><br />4. &nbsp; &nbsp; 上下互换<br /><br />适 用 于：几乎任何情况，成功率比较高。<br /><br />操作方法：先用OllyDbg载入木马程序，假定其特征码为0009EE7F_00000005，我们还是先用《偏移量转换器》将其转换为内存地址，上面我们已经知道0009EE7F对应的内存地址为0049FA7F，然后在OllyDbg中找到相应位置，利用上面&ldquo;跳到空白区域&rdquo;里介绍的修改方法将0049FA7F上下两句代码调换位置即可。而对于内存免杀就省去了内存地址转换这一步了。<br /><br />原 &nbsp; 理：杀毒软件的特征码定位是严格按照相关偏移量于内存地址进行的，而其实我们的应用程序中的机器码执行顺序的先后在一般情况下是没有死规定的，所以我们只需将其上下互换，杀毒软件自然就不认识了。<br /><br />5.ADD与SUB 互换<br /><br />适 用 于：在内存特征码中出现ADD或 SUB指令的，成功率比较高。<br /><br />操作方法：用OllyDbg载入木马程序，假定其特征码所对应的地址中有ADD或SUB指令，例如00018A88：XXXXX 00000088 ADD ECX 10000000 <br /><br />我们可以将ADD ECX 10000000这段机器码改为SUB ECX F0000000，<br /><br />更改完毕后保存为EXE文件即可。<br /><br />原 &nbsp; 理：我们都知道1+1=2，我们也知道1-（-1）=2，上面就是利用了这个原理，其中ADD指令的就是加意思，而SUB则是减的意思。虽然被我们互换了一下，但是最终结果还是一样的，可是换完之后杀毒软件就不认识了。<br /><br />到这里，关于特征码的查找与修改就讲完了，但是除此之外呢？答案是还有许多！！下面我们就一起看看其他免杀方法。<br /><br /><br /><br />4.）其他免杀方法<br /><br />改文件头：<br /><br />&nbsp; &nbsp; &nbsp; 这里所说的改文件头包括加头去头，文件加花。关于加头去头，我们还是用OllyDbg。用OllyDbg载入后，OllyDbg会自动停在入口点（如图36）。<br /><br /><br /><br />&nbsp; 我们将头三行机器码复制保存起来，然后找到空白区域，用汇编的方法一一将其写入（如图37）。<br /><br /><br /><br />然后在后面写入一条JMP指令，让其跳到初始入口点的第四行，相信一直仔细看本文的朋友一定明白其原理，如果忘了的话可以看上面修改特征码的第三种方法，原理与这差不多，修改完毕后如下所示：<br /><br />004A2A73 &nbsp; 0000 &nbsp; &nbsp; &nbsp; add byte ptr ds:[eax],al<br /><br />004A2A75 &nbsp; 0000 &nbsp; &nbsp; &nbsp; add byte ptr ds:[eax],al<br /><br />004A2A77 &nbsp; 55 &nbsp; &nbsp; &nbsp; push ebp<br /><br />004A2A78 &nbsp; 8BEC &nbsp; &nbsp; &nbsp; mov ebp,esp<br /><br />004A2A7A &nbsp; B9 04000000 mov ecx,4<br /><br />004A2A7F ^ E9 CCF3FFFF jmp Server.004A1E50<br /><br />004A2A84 &nbsp; 0000 &nbsp; &nbsp; &nbsp; add byte ptr ds:[eax],al<br /><br />004A2A86 &nbsp; 0000 &nbsp; &nbsp; &nbsp; add byte ptr ds:[eax],al<br /><br />004A2A88 &nbsp; 0000 &nbsp; &nbsp; &nbsp; add byte ptr ds:[eax],al<br /><br />&nbsp; &nbsp; 上面的add byte ptr ds:[eax],al就是所谓的空白区域，我们看到改完后的头文件位于004A2A77，所以我们还要用PEditor改一下入口点，打开PEditor后载入文件，将入口点处的地址改为我们的新文件头地址004A2A77（如图38），保存后即可。<br /><br /><br /><br /><br /><br />入口点加1：<br /><br />&nbsp; &nbsp; 打开PEditor后载入文件，将原来的入口点+1即可，例如我们的入口点为004A2A77，加1后应该是004A2A78（如图39），然后点击&ldquo;应用更改&rdquo;即可完成更改。<br /><br /><br /><br />&nbsp; &nbsp; 用这种简便的免杀方法即可以轻松的对付大部分杀毒软件。<br /><br /><br /><br />用Vmportect加密：<br /><br />&nbsp; &nbsp; &nbsp; Vmportect是新一代的软件保护程序，利用虚拟机保护代码，可以对指定的部分区段进行加密，能让被保护的程序复杂化，最开始他被用于PcShare里的SYS文件免杀，效果值得称道！其实对于普通文件他照样发挥的比较出色！下面我们就用他来加密我们的那个存在特征码以0049FA7F开始的区段。打开Vmportect后载入程序，在&ldquo;转储&rdquo;选项卡下的任意地方单击由键，在弹出的菜单中选择&ldquo;前往地址&rdquo;（如图40）。<br /><br /><br /><br />&nbsp; 然后在弹出的对话框中填入0049FA7F，点击&ldquo;是&rdquo;按钮即可跳到相应位置，然后点击&ldquo;添加地址&rdquo;按钮（如图41）。<br /><br /><br /><br />&nbsp; 并选则是即可，最后点击&ldquo;编辑&rdquo;按钮即可对以0049FA7F开头的区段进行加密（如图42）。<br /><br /><br /><br /><br /><br />移动PE段的位置：<br /><br />&nbsp; &nbsp; 关于这种方法，可是绝学！今天借此机会贡献给各位朋友，希望此方法能在你免杀时助你一臂之力！那么修改PE段究竟能起到什么作用呢？首先当然可以达到长期免杀的目的，其次可以保护我们的免杀文件，其他人无法学走我们的免杀方法（A1Pass：要想真正达到这个目的，除此之外你还不能让别人看到这篇文章，所以这期的X档案赶紧全包了吧！呵呵！）。为什么呢？因为一些反汇编工具无法载入经过修改PE文件头的程序。<br /><br />&nbsp; &nbsp; &nbsp; 我们先来看看PE段，怎么看？先用WinHex载入我们的木马（如图43）。<br /><br /><br /><br />&nbsp; 看到图中PE那两个字了吗？这两个字的P所在位置就是PE段的入口点，我这里是00000100。我们在仔细看看图43，看看PE下一行的第一个16进制是不是E0？好，下面我们用WINDOWS系统自带的计算器计算一下，得到16进制的E0就是十进制的224。这是什么意思呢？它代表的就是PE段的大小，在WinHex中一行能显示16个字符，224个字符正好是14行，我们将这14行内容复制保存起来，并记住PE段的末尾地址，我这里是000001EF，最后将这个PE段用0填充（如图44）。<br /><br /><br /><br />&nbsp; 最后将我们事先保存的PE段上移，但注意不要超过&ldquo;This program must be run under Win32&rdquo;这段内容。由于PE段的上移，其体积必然也就随之增大，而从我们现在PE段所处的00000080到000001EF，总共是368个字节，换成16进制为170，全部更改完毕后如图45所示。<br /><br /><br /><br /><br /><br />针对瑞星：<br /><br />&nbsp; &nbsp; 先用OllyDbg载入文件，只要将其第一条机器码push ebp改为pop ebp即可躲过瑞星的内存杀毒。<br /><br /><br /><br />加壳压缩：<br /><br />&nbsp; 加壳是菜鸟的专利，虽然操作简便，但是免杀效果与&ldquo;报质期&rdquo;都不尽人意，但是做完免杀后在加个压缩壳还是很有必要的。<br /><br />&nbsp; &nbsp; 加壳免杀的第一步就是要找到好壳，大家没事可以到看雪论坛逛逛，他那里经常有好壳出现。但关于加壳的一些操作步骤我在这里就不费笔墨了，大家下去自己一看就会，其实就是个使用软件的过程。<br /><br /><br /><br />&nbsp; 好了，到这里，我们对木马的免杀就做完了，总共用了七大类共计14种方法！恐怕一时理解起来比较困难。下面我就在用&ldquo;苏式教育&rdquo;的方法为各位读者规划一下本文所讲的知识，方便各位读者以后应用与查找。<br /><br /><br /><br />免杀的操作顺序：<br /><br />1. &nbsp; &nbsp; 主动查找可能存在的特征码<br /><br />2. &nbsp; &nbsp; 用CCL等查找特征码，并将其更改<br /><br />3. &nbsp; &nbsp; 尽可能多的更改输入表函数<br /><br />4. &nbsp; &nbsp; 更改文件头<br /><br />5. &nbsp; &nbsp; Vmportect区段加密<br /><br />6. &nbsp; &nbsp; 移动PE段的位置<br /><br />7. &nbsp; &nbsp; 加壳压缩<br /><br /><br /><br />免杀分析：<br /><br />一、主动查找可能的特征码<br /><br />操作时注意：有关注册表、文件路径的信息最好只用大小写替换的方法，不要改成其他内容，那样容易出错。<br /><br />优 &nbsp; &nbsp; 点：可以防范未来将要出现的特征码，并且同时可以体验DIY的乐趣，顺便打造自己的&ldquo;专用木马&rdquo;。<br /><br />不 &nbsp; &nbsp; 足：无法进行有效的免杀，效果不明显。<br /><br />成 功 率：几乎100%，只要不改错地方，一般更改后的程序完全可以正常运行。<br /><br />二、尽量多的更改输入表函数<br /><br />操作时注意：将输入表函数移动到新位置时，函数名的第一个字母最好在本行开头，另外注意地址的填写规律，不要弄错。<br /><br />优 &nbsp; &nbsp; 点：可以防范未来将要出现的特征码，给特征码的定位带来干扰。<br /><br />不 &nbsp; &nbsp; 足：无法进行有效的免杀，效果不明显。<br /><br />成 功 率：只要操作上没问题，基本能保证90%以上！<br /><br /><br /><br />三、用例如CCL等工具查找特征码并将特征码更改<br /><br />操作时注意：此步骤最需要的就是耐心与细心！不能丢三落四，要及时做好备份，以防不测。<br /><br />优 &nbsp; &nbsp; 点：针对性非常强，免杀中最有效的方法之一。<br /><br />不 &nbsp; &nbsp; 足：只能针对一个杀毒软件进行免杀，无法针对多个杀毒软件进行作业，免杀文件的存活期短。另外，此方法也非常耗费时间。<br /><br />成 功 率：理论上100%，主要看你的经验与编程、汇编的底子。不过其实只要有足够的经验与方法，成功率就异常可观了！<br /><br /><br /><br />四、移动PE短位置<br /><br />操作时注意：16近制的转换一定要细心，并且时刻不要忘了开头与结尾的位置。<br /><br />优 &nbsp; &nbsp; 点：可延长免杀期，时对付特征码在PE文件头部的必杀技！同时可以保护我们的免杀文件，其他人无法学走我们的免杀方法。<br /><br />不 &nbsp; &nbsp; 足：除加壳外，就无法在对木马文件做进一步加工了。<br /><br />成 功 率：大约75%左右，不确定的因素太多&hellip;&hellip;<br /><br /><br /><br />五、更改文件头<br /><br />操作时注意：删除部分信息时文件结构的变化。<br /><br />优 &nbsp; &nbsp; 点：比较节省时间，免杀效果也很明显，是免杀中的有效方法之一。<br /><br />不 &nbsp; &nbsp; 足：免杀时间不长。<br /><br />成 功 率：大约80%左右。<br /><br /><br /><br />&nbsp; &nbsp; 好的，到这里本文也快要结束了，不知道大家学会了多少&hellip;&hellip;可以说这篇文章是我下了很大的力气与很大的决心写出来的，里面还是有一些&ldquo;真玩意&rdquo;的，希望大家在享受这份精神食粮的时候能同时为黑客这个领域做些什么，希望我们大家一起努力，为黑客正名！！<br /><br />&nbsp; &nbsp; 另外有什么不懂的问题或您有什么新的免杀方法可到X档案的论坛找我，我的ID是a1pass。<br /><br /><br /><br /><br /><br />后记：由于本文所讲的PE文件头免杀手法操作复杂，成功率比较低，所以HRay朋友为此发表了一篇文章，专门对此方法作出了补充与改进，在此感谢HRay！<br /><br />补充文章请见07年第10期《黑客X档案》补丁铺栏目，《对&quot;木马免杀全攻略&quot;一文的补充》。<br /><br />转载请注明版权：<a target="_blank" href="http://a1pass.blog.163.com/">http://a1pass.blog.163.com/</a> A1Pass的博客</span><br />&nbsp;</p>]]></description><category>免杀资料</category><comments>http://www.mk2leo.com/post/49.html#comment</comments><wfw:comment>http://www.mk2leo.com/</wfw:comment><wfw:commentRss>http://www.mk2leo.com/feed.asp?cmt=49</wfw:commentRss><trackback:ping>http://www.mk2leo.com/cmd.asp?act=tb&amp;id=49&amp;key=1e15a8da</trackback:ping></item><item><title>常用《免杀教程》！！！</title><author>mk2leo@qq.com (leoling504)</author><link>http://www.mk2leo.com/post/47.html</link><pubDate>Wed, 12 Nov 2008 23:32:31 +0800</pubDate><guid>http://www.mk2leo.com/post/47.html</guid><description><![CDATA[<p><table style="table-layout: fixed">    <tbody>        <tr>            <td>            <div class="cnt" id="blog_text">常用《<span style="cursor: pointer; border-bottom: #fa891b 1px solid">免杀</span>教程》！！！<br />            这些教程是俺<span style="cursor: pointer; border-bottom: #fa891b 1px solid">学习</span>免杀时从网上找到的教程和书中带的部分教程！<br />            希望对大家免杀学习中有所帮助！<br />            <span style="color: red">（声明：部分教程由于带有演示用的工具，所以会报毒！）</span><br />            1、MYCCl复合文件<span style="cursor: pointer; border-bottom: #fa891b 1px solid">特征码</span>定位.rar<br />            <a target="_blank" href="http://www.brsbox.com/filebox/down/fc/d2880751dd73dda07fea549f9ee3ab72"><u><font color="#2f5fa1">http://www.brsbox.com/filebox/do ... da07fea549f9ee3ab72</font></u></a><br />            2、multiCCL复合文件特征码定位.rar<br />            <a target="_blank" href="http://www.brsbox.com/filebox/down/fc/d7881cbe259ea85933d4e73b5802cd32"><u><font color="#2f5fa1">http://www.brsbox.com/filebox/do ... 85933d4e73b5802cd32</font></u></a><br />            3、WinHex篇大小写替换法.rar<br />            <a target="_blank" href="http://www.brsbox.com/filebox/down/fc/12c1afca0fb36f219cc5ee3d63ad018c"><u><font color="#2f5fa1">http://www.brsbox.com/filebox/do ... f219cc5ee3d63ad018c</font></u></a><br />            4、WinHex篇字符加1减1法.rar<br />            <a target="_blank" href="http://www.brsbox.com/filebox/down/fc/f95ff33bf03416476d1850259f099b2e"><u><font color="#2f5fa1">http://www.brsbox.com/filebox/do ... 6476d1850259f099b2e</font></u></a><br />            5、WinHex篇输入表函数转移法.rar<br />            <a target="_blank" href="http://www.brsbox.com/filebox/down/fc/05cf0a07887ee2fcb643bd23eb085e43"><u><font color="#2f5fa1">http://www.brsbox.com/filebox/do ... 2fcb643bd23eb085e43</font></u></a><br />            6、Ollydbg篇NOP位移法.rar<br />            <a target="_blank" href="http://www.brsbox.com/filebox/down/fc/2b13bbc4ca74ef8c0230fcfcd934c63f"><u><font color="#2f5fa1">http://www.brsbox.com/filebox/do ... f8c0230fcfcd934c63f</font></u></a><br />            7、Ollydbg篇等值替换法.rar<br />            <a target="_blank" href="http://www.brsbox.com/filebox/down/fc/c14a7db3f50ab326a57a6a336815d6a8"><u><font color="#2f5fa1">http://www.brsbox.com/filebox/do ... 326a57a6a336815d6a8</font></u></a><br />            8、Ollydbg篇顺序调换法.rar<br />            <a target="_blank" href="http://www.brsbox.com/filebox/down/fc/de819a9b8e6d8ff5290a323a0e497f16"><u><font color="#2f5fa1">http://www.brsbox.com/filebox/do ... ff5290a323a0e497f16</font></u></a><br />            9、Ollydbg篇通用跳转法.rar<br />            <a target="_blank" href="http://www.brsbox.com/filebox/down/fc/f929c948d54be1255344567554e6cfd2"><u><font color="#2f5fa1">http://www.brsbox.com/filebox/do ... 1255344567554e6cfd2</font></u></a><br />            10、PEditor修改入口法.rar<br />            <a target="_blank" href="http://www.brsbox.com/filebox/down/fc/af24ea97233960b814e18911f914d168"><u><font color="#2f5fa1">http://www.brsbox.com/filebox/do ... 0b814e18911f914d168</font></u></a><br />            11、PE文件头移位<span style="cursor: pointer; border-bottom: #fa891b 1px solid">修改</span>.rar<br />            <a target="_blank" href="http://www.brsbox.com/filebox/down/fc/2d5babea6ae3effdc2ce7714c383259d"><u><font color="#2f5fa1">http://www.brsbox.com/filebox/do ... ffdc2ce7714c383259d</font></u></a><br />            12、Pcshare杀软定位在字符串上的通用解决方法.rar（如%s%s%s%s\Parameters）<br />            <a target="_blank" href="http://www.brsbox.com/filebox/down/fc/dfc36170de7e708e9bc5f64a3655dbb2"><u><font color="#2f5fa1">http://www.brsbox.com/filebox/do ... 08e9bc5f64a3655dbb2</font></u></a><br />            13、(高级免杀)异或算法<span style="cursor: pointer; border-bottom: #fa891b 1px solid">加密</span>特征码.rar<br />            <a target="_blank" href="http://www.brsbox.com/filebox/down/fc/6ee21c7d7ac400541fd69e8d2137240c"><u><font color="#2f5fa1">http://www.brsbox.com/filebox/do ... 0541fd69e8d2137240c</font></u></a></div>            </td>        </tr>    </tbody></table></p>]]></description><category>免杀资料</category><comments>http://www.mk2leo.com/post/47.html#comment</comments><wfw:comment>http://www.mk2leo.com/</wfw:comment><wfw:commentRss>http://www.mk2leo.com/feed.asp?cmt=47</wfw:commentRss><trackback:ping>http://www.mk2leo.com/cmd.asp?act=tb&amp;id=47&amp;key=5d946d30</trackback:ping></item></channel></rss>
