首页
社区
课程
招聘
PEBundle 2.0x - 2.4x脱壳教程加如何修复的问题
发表于: 2005-12-25 16:35 7038

PEBundle 2.0x - 2.4x脱壳教程加如何修复的问题

2005-12-25 16:35
7038
PEBundle 2.0x - 2.4x脱壳后提示错误!
用ImportREC V1.6F 汉化版修复出现2个错误的指针!

请问如何修复!谢谢了

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (10)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
附上脱壳教程:
如有错误还希望高手指正!
1:调试选项
  选择SFX----字节方式跟踪真正入口(速度非常慢)
  忽略所有异常!
2:打开文件
  入口到了
0047A200  60             PUSHAD======F8单击
0047A201  BE 00F04400    MOV ESI,leke.0044F000
0047A206  8DBE 0020FBFF  LEA EDI,DWORD PTR DS:[ESI+FFFB2000]
0047A20C  57             PUSH EDI
0047A20D  83CD FF        OR EBP,FFFFFFFF=======这里ESP突现
0047A210  EB 10          JMP SHORT leke.0047A222

下面命令写入
HR 0012FFA0 确定按F9
来到这里
0047A2F3  89F7           MOV EDI,ESI 断到这里!
0047A2F5  B9 16110000    MOV ECX,1116
0047A2FA  8A09           MOV AL,BYTE PTR DS:[EDI]
......一直F8单击跟下去!来到下面这里!
0047A35C  48             DEC EAX
0047A35D  F2:AE          REPNE SCAS BYTE PTR ES:[EDI]
0047A35F  55             PUSH EBP
0047A360  FF96 58B00700  CALL DWORD PTR DS:[ESI+7B058]
0047A366  09C0           OR EAX,EAX
0047A368  74 07          JE SHORT leke.0047A371
0047A36A  8903           MOV DWORD PTR DS:[EBX],EAX
0047A36C  83C3 04        ADD EBX,4
0047A36F  EB D8          JMP SHORT leke.0047A349
0047A371  FF96 5CB00700  CALL DWORD PTR DS:[ESI+7B05C]
0047A377  61             POPAD=====关键提示
0047A378  E9 73E3F9FF    JMP leke.004186F0====跟进去
0047A37D  0000           ADD BYTE PTR DS:[EAX],AL
0047A37F  0098 A34700A0  ADD BYTE PTR DS:[EAX+A00047A3],BL
0047A385  A3 470094F6    MOV DWORD PTR DS:[F6940047],EAX
0047A38A  42             INC EDX
注意:到了
0047A35F  55             PUSH EBP
这里在
0047A378  E9 73E3F9FF    JMP leke.004186F0
直接下F2然后F9!就到了
0047A378  E9 73E3F9FF    JMP leke.004186F0
F8单击跟进去就到了!
004186F0  55             PUSH EBP
004186F1  8BEC           MOV EBP,ESP
004186F3  6A FF          PUSH -1
................
我是在
004186F0  55             PUSH EBP
这里直接脱壳!然后不会修复了!


请大家仔细看看!有错误吗?
没有的话该如何修复了?
谢谢了!
2005-12-25 16:39
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
没人知道吗?
2005-12-25 17:27
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
61个人看了没一个人说话????
大大们给点提示啊!
2005-12-27 00:43
0
雪    币: 817
活跃值: (1927)
能力值: ( LV12,RANK:2670 )
在线值:
发帖
回帖
粉丝
5
最初由 lekejiy 发布
附上脱壳教程:
如有错误还希望高手指正!
1:调试选项
选择SFX----字节方式跟踪真正入口(速度非常慢)
忽略所有异常!
........


打开ImportREC找到相对的进程,装载后,在OEP内填:000186F0,自动搜索IAT,获得输入表,剪切无效指针,抓取修复脱壳文件!
2005-12-27 02:06
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
KuNgBiM
对不起!
我就是剪切了也不行啊!
剪切了我在抓取修复也不行!
所以我才发上来问问大家的
2005-12-28 22:36
0
雪    币: 898
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
7
PEBundle一般没有加密输入表
看看哪些无效,调试一下
另外,注意PEBundle是否捆绑了其他文件
2005-12-28 22:56
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
fly
你所说的调试是如何调试?
我不懂...底子差,正在学习中!
还有你说的捆绑其他文件是不是说的调用同一文件夹的DLL文件啊!
同一文件夹的DLL文件有几个!
2005-12-29 00:06
0
雪    币: 303
活跃值: (461)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
最初由 fly 发布
PEBundle一般没有加密输入表
看看哪些无效,调试一下
另外,注意PEBundle是否捆绑了其他文件

如果捆绑了其他文件怎么办?注意什么?
我最近也是遇到这个问题,他已经捆绑了其他文件,IAT修复不成功!
多谢
2006-1-9 11:01
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
对于PEBundle 2.0x - 2.4x加的壳,PEiD0.94可以直接脱。用OD手脱的方法是下硬件写断点(HW 12FFC0),F9运行后会中断几次,这时要注意地址的变化,如果有一个大的跳跃就在OEP附近了,看看我脱的壳是:
0040E8F4    68 2C744100     push    0041742C ;这就是OEP
0040E8F9  E8 EEFFFFFF call 0040E8EC ; jmp 到 MSVBVM60.ThunRTMain停在这个地方
0040E8FE    0000            add     [eax], al
0040E900    0000            add     [eax], al
0040E902    0000            add     [eax], al
0040E904    3000            xor     [eax], al
0040E906    0000            add     [eax], al
0040E908    3800            cmp     [eax], al
0040E90A    0000            add     [eax], al
0040E90C    0000            add     [eax], al
0040E90E    0000            add     [eax], al
0040E910    1099 CC03F177   adc     [ecx+77F103CC], bl
0040E916    E8 4CAED53B     call    3C169767
这个的入口在硬件中断的前一个地址上,即OEP为0040E8F4。在这个地址上下硬件断点,断下来后就可以DUMP了,很容易修复的。也许你的入口地址没有找对吧。
2006-4-7 10:30
0
雪    币: 253
活跃值: (25)
能力值: ( LV9,RANK:290 )
在线值:
发帖
回帖
粉丝
11
http://bbs.pediy.com/showthread.php?threadid=17249
2006-6-5 08:49
0
游客
登录 | 注册 方可回帖
返回
//