博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
手脱tElock 0.98b1 -> tE!
阅读量:5124 次
发布时间:2019-06-13

本文共 2613 字,大约阅读时间需要 8 分钟。

声明:

只为纪录自己的脱壳历程,高手勿喷

第一种:两次内存法

注:

①这是在win7x32系统上运行的脱壳,所以可能地址不同②修复的时候用等级三修复,最后修复不了的剪切掉然后转存合一正常运行,已测试

1.载入OEP,一上来就是个达跳转,我也是醉了

004C6BD6 >^\E9 25E4FFFF     jmp 第八九课.004C5000       //入口004C6BDB    0000            add byte ptr ds:[eax],al004C6BDD    006455 61       add byte ptr ss:[ebp+edx*2+0x61],ah004C6BE1    8D1E            lea ebx,dword ptr ds:[esi]004C6BE3    6C              ins byte ptr es:[edi],dx

 

 

2.Ait+M打开内存窗口在0047D000地址下断点,然后shift+F9运行,界面应该停在这个位置上

004C5D25    AC              lods byte ptr ds:[esi]          //落脚点004C5D26    0BC0            or eax,eax004C5D28    02C1            add al,cl004C5D2A    02C1            add al,cl004C5D2C    85FF            test edi,edi                      004C5D2E    0AC9            or cl,cl

 

 

3.接着打开内存窗口在00401000地址下断,然后shift+F9运行,直接到达OEP

0045D4F6    55              push ebp        //这里就是OEP了0045D4F7    8BEC            mov ebp,esp0045D4F9    6A FF           push -0x10045D4FB    68 28704800     push 第八九课.004870280045D500    68 D4024600     push 第八九课.004602D40045D505    64:A1 00000000  mov eax,dword ptr fs:[0]0045D50B    50              push eax                           0045D50C    64:8925 0000000>mov dword ptr fs:[0],esp0045D513    83EC 58         sub esp,0x58

 

 

4.修复脱壳

第二种:最后一次异常法

1.忽略所有异常shift+F916次,来到这个位置

004C6833  ^\73 DC           jnb short 第八九课.004C6811 //入口004C6835    CD20 64678F06   vxdcall 0x68F6764004C683B    0000            add byte ptr ds:[eax],al004C683D    58              pop eax                                 004C683E    61              popad

 

 

2.右下角SE处理句,跟随地址004C6817,来到这个位置

004C6817    8B6424 08       mov esp,dword ptr ss:[esp+0x8]      //落脚点004C681B    EB 1A           jmp short 第八九课.004C6837004C681D    64:67:FF36 0000 push dword ptr fs:[0]004C6823    64:67:8926 0000 mov dword ptr fs:[0],esp004C6829    9C              pushfd

 

 

3.然后在004C6817位置F2,SHIFT+F9,F2

4.然后F8,58次往下跟(注意带数字的call全部F7)一直到这个位置,他是个向上跳转,在这个跳转的下一行F2,shift+F9,F2,

004C68DB  ^\79 BE           jns short 第八九课.004C689B   //下一行F2,SHIFT+F9,F2004C68DD    EB 01           jmp short 第八九课.004C68E0004C68DF    66:C1E8 DF      shr ax,0xDF004C68E3    61              popad004C68E4    F9              stc

 

 

5.然后一直F8,38次就可以到达OEP

0045D4F6    55              push ebp        //OEP位置0045D4F7    8BEC            mov ebp,esp0045D4F9    6A FF           push -0x10045D4FB    68 28704800     push 第八九课.004870280045D500    68 D4024600     push 第八九课.004602D40045D505    64:A1 00000000  mov eax,dword ptr fs:[0]0045D50B    50              push eax0045D50C    64:8925 0000000>mov dword ptr fs:[0],esp0045D513    83EC 58         sub esp,0x58

 

 

6.修复脱壳

转载于:https://www.cnblogs.com/JianXu/p/5158407.html

你可能感兴趣的文章
Linux Linux程序练习七
查看>>
第二次冲刺
查看>>
Swift 将日期转化为字符串,显示上午还是下午
查看>>
Des与3Des加密解密
查看>>
Oracle 数据库中对记录进行分页处理
查看>>
数据库的应用详解三
查看>>
查看网关
查看>>
STM32三种启动模式 boot0 boot1
查看>>
【STM32】IIC的基本原理(实例:普通IO口模拟IIC时序读取24C02)(转载)
查看>>
AlarmManager使用注意事项
查看>>
json
查看>>
怎样学习(3):迭代学习,精益求精
查看>>
使用EFI引导从硬盘(U盘)安装Win7的图文教程
查看>>
运算符的优先级
查看>>
POJ 1189 钉子和小球
查看>>
团队项目冲刺第一阶段03
查看>>
Python之模块与包(下)
查看>>
sql server2005索引
查看>>
O-C相关-08-动态类型与静态类型
查看>>
understand的安装
查看>>