易语言 特征码的8种修改方法
2016-07-11 16:18
423 查看
点击阅读原文
1.NOP法 (常常检测自己是否定位正确)
2.加1法 (很牛B,很简单,但是不一定实用于每个特征码)
3.大小写替换(很好,很强大,修改后100%可以用! 注意:PE头 函数 不能修改)
4.add ecx,2 可以改为 sub ecx,-2
(加ecx内存器+2 减ecx内存器-2 - -2得=2)
(特征码:0046B897)
0046B897: 83C4 F0 ADD ESP,-10 sub ESP,10
5.push 变 pop
(特征码:0046B96D)
PUSH EBP—POP EBP
PUSH EDX—POP EDX
POP EDX—PUSH EDX
6.je 变 jnz
(特征码:004230F6)
LOOPD SHORT *.*—JNZ SHORT *
意思:
JE——若ZF=1,则跳转
JMP——无条件跳转
JNZ——若ZF=0,则跳转搜索
PUSH——压栈
7.add 变 sub
8.call跳转
call A (原地址)
修改 call B (0区域)
B的位置写 call A
4000
(原地址)
00423210: E8 3B1DFFFF CALL 00414F50 (原地址)
0049575C: 0000 ADD [EAX],AL (0区域)
add=adc sbb=sub jmp=call jp=je
1.NOP法 (常常检测自己是否定位正确)
2.加1法 (很牛B,很简单,但是不一定实用于每个特征码)
3.大小写替换(很好,很强大,修改后100%可以用! 注意:PE头 函数 不能修改)
4.add ecx,2 可以改为 sub ecx,-2
(加ecx内存器+2 减ecx内存器-2 - -2得=2)
(特征码:0046B897)
0046B897: 83C4 F0 ADD ESP,-10 sub ESP,10
5.push 变 pop
(特征码:0046B96D)
PUSH EBP—POP EBP
PUSH EDX—POP EDX
POP EDX—PUSH EDX
6.je 变 jnz
(特征码:004230F6)
LOOPD SHORT *.*—JNZ SHORT *
意思:
JE——若ZF=1,则跳转
JMP——无条件跳转
JNZ——若ZF=0,则跳转搜索
PUSH——压栈
7.add 变 sub
8.call跳转
call A (原地址)
修改 call B (0区域)
B的位置写 call A
4000
(原地址)
00423210: E8 3B1DFFFF CALL 00414F50 (原地址)
0049575C: 0000 ADD [EAX],AL (0区域)
add=adc sbb=sub jmp=call jp=je
相关文章推荐
- eclipse启动tomcat后localhost:8080无法访问问题
- Hive 启动报错 ClassNotFoundException: org.apache.hadoop.hive.service.HiveServer
- iOS之scrollView分页无限滚动框架
- flex弹性布局
- samba服务器的配置
- 易语言免杀360QVM人工智能
- ETL数据清洗工具总结
- angular 嵌套实现树结构 ng-repeat ng-include
- 餐饮项目开发遇到的问题和解决方法
- Android ContentProvider query参数
- windows与centos-mysql主从同步
- ObjectOutputStream和ObjectInputStream
- 【树】判断树是否为BST + 求BST的第k个结点 + 判断一个数组是否为BST的后序遍历
- SQLite模糊查询
- POJ 3237 树链剖分
- 素数计算---改良版埃氏筛选和欧拉筛选
- 每日一练——矩阵中的最大递增路径
- mysql主从复制
- CPP环境【VIJOS1686】极品飞车
- 2016长乐夏令营Day1