如发现有乱码,
请直接从这里浏览原文
正文摘录:2movebp.esp3moveax,原^口40usheax5retn删除addesp.一OC和add·0P为_『“去除法.exe”。隧翱曩啊OC,修改后保存5.跳转法广1DuskIebo2move的.esD3Jmp躏出到addesD。一OC的地址4tnove州.蠢件一木?004010gC5gushesx6retn7addesD,一OC8eddeso.OC。肿。跳回mov。眠复件一禾;~)40109C的螅址J这个办法町能比较复杂,人家仔州雷看闭7,就会口』{白该力法的原理丁。修。女后保行为“跳转法.图7现在,我们使用#巴检测修改后的程序,只有原来的木马彩衣、加了金色鱼锦衣的和使用去除法的可以被查到(图8)。去除法是因为金色鱼锦衣的代码比较短,如果花指令长些,效果会比较好的。几种修改方法结合使用效果会更好,当然了,一样可以针对修改特征码,相对跳转法在修改特征码中使用比较多。通过li面的学爿我们町以知道花指令的大概结构,一般开始是pushebp和rnovebp.esp,接下来就是一些能保持堆栈平衡的指令,完了就是跳回人口点了。我罗列出‘些能保持堆栈平衡的代码,供大家参考。。‘。一一。^-Ⅻ-………。。_-~…'…’pushebp把基址指针寄存器压八堆栈popebp把基址指针寄存嚣弹出堆栈jpushe&x把数据寄存嚣压八堆栈’lDOge&x把数据寄存器弹出堆栈’jnop无作用,就是什幺也没做’move&x,e&x将ea×送八e&x,等于什幺也没做sube&x√。addeax,1寄存器ea×+1和寄存器e&x一1。同样等于什么也浸做:sUbeax.Zdeceaxdeceax同样很简单的加减运算,先是寄存器Pax+2,紧接着连续用dec指令处理寄存器e&x两挺,就是一1再一l,遗到堆栈平衡。r面则足常川的跳转语句:JMP入口点这是最简单的跳转7八口点,最简单当然效果也是最差的。无条件跳回mov8ax.入口点Dughe&xretn很眼熟吧,金色鱼锦衣的跳转,解释过.不多说7。『110ve&x.入口点jmpeax和金色鱼锦表的跳转原理差不多,人口点压八寄存器eax,再跳到寄存嚣eax,就是跳到八口点7。je八口点Jne入口点等于则跳和不等于则跳,合起来就是绝对跳略,像这样的条件跳转语句很多,走家可参考前面跳转嚣令的知识自己写。上面的指令任意结合使用,相信大家就叮以写出属于自己的花指令了,这样我这篇文章的目的也到了。(本文所涉及到的Olly曲g和文章中的木马彩衣已收录到光盘中)圜一L聃}
阅读此文(图):
在线翻阅