|  
 帖子255 积分678 威望1093  金钱877  在线时间2 小时 
 | 
| 来谈谈 花指令 免杀 用的最多的是花指令
 
 我们就来了解一下
 
 一.花指令概念:
 
 花指令是一堆汇编指令组成,对于程序来说,是一堆废话,加不加花指令都
 
 不影响程序的正常运行.编写的花指令要终始保持堆栈的平衡.
 
 二.写花指令的原则:
 
 写花指令的基本原则就是要保持堆栈的平衡.
 
 
 写花指令细细品味下面一段比喻:
 
 我们把一段花指令比喻成一道数学运算题,把汇编指令(push pop等)比喻成加减
 乘除,把寄存器或数据(eax,ebx,1等)比喻成
 数字(1,2,3等),那么要保持花指令堆栈的平衡,等于保持这道数学题的结果是0 .
 
 三.解释一些指令含意
 
 push ebp ----把基址指针寄存器压入堆栈
 
 pop  ebp ----把基址指针寄存器弹出堆栈
 
 
 push eax ----把数据寄存器压入堆栈
 
 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 入口地址一样,直接跳到程序入口地址.
 
 四.免杀花指令编写手册:
 
 注:以后编写花指令,都可以参考本手册,灵活组合,快速写出自己的花指令.
 
 ************************
 push ebp
 
 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,入口地址
 | 
 
1
评分人数
 |