| 免杀花指令编写手册】-基础篇 | ★★★ |
| 免杀花指令编写手册】-基础篇 | ||
| 作者:佚名 文章来源:本站原创 更新时间:2007-4-15 16:58:20 【字体:小 大】 | ||
一.花指令概念: 花指令是一堆汇编指令组成,对于程序来说,是一堆废话,加不加花指令都 不影响程序的正常运行.编写的花指令要终始保持堆栈的平衡. 二.写花指令的原则: 写花指令的基本原则就是要保持堆栈的平衡. 写花指令细细品味下面一段比喻: 我们把一段花指令比喻成一道数学运算题,把汇编指令(push pop等)比喻成加减 三.解释一些指令含意 push ebp ----把基址指针寄存器压入堆栈 pop ebp ----把基址指针寄存器弹出堆栈
pop eax ----把数据寄存器弹出堆栈 nop -----不执行 add esp,1-----指针寄存器加1 sub esp,1-----指针寄存器减1 inc ecx -----计数器加1 dec ecx -----计数器减1 sub esp,1 ----指针寄存器加1 sub esp,-1----指针寄存器加-1 jmp 入口地址----跳到程序入口地址 push 入口地址---把入口地址压入堆栈 retn ------ 反回到入口地址,效果与jmp 入口地址一样. mov eax,入口地址 ------把入口地址转送到数据寄存器中. jmp eax ----- 跳到程序入口地址 jb 入口地址 jnb 入口地址 ------效果和jmp 入口地址一样,直接跳到程序入口地址. 四.免杀花指令编写手册: 注:以后编写花指令,都可以参考本手册,灵活组合,快速写出自己的花指令. ******************************************************************* pop ebp push eax pop eax push esp pop esp push 0 push 0 push 10 -------其中数字可以任意,注意与下面对应 push -10 nop -----------可任意在中间添加 move edi,edi ----效果与nop一样 add esp,1 -------其中数字可以任意,注意以下面对应 add esp,-1 add esp,1 --------其中数字可以任意,注意以下面对应 sub esp,1 inc ecx dec ecx sub eax, -2 ----------其中数字可任意,与inc的个数对应 inc eax inc eax add eax -2 ----------其中数字可任意,与inc的个数对应 inc eax inc eax jmp 下一个jmp地址 jmp 下一个地址 push ebp mov ebp,esp -------可做为花指令的开头句 jmp 入口地址 ------跳到程序入口地址 与它效果一样的还有(以下三个): push 入口地址 retn jb 入口地址 jnb 入口地址 mov eax,入口地址 jmp eax ******************************************************************** push eax nop pop eax pop eax sub eax,1 inc eax push 入口地址 retn |
||
|
||
| 文章录入:coldness 责任编辑:coldness | ||
您现在的位置: