Asprotect 1.2x加壳的Advanced PDF Password Recovery Pro 1.70脱壳
crack by fwnl
软件说明:可以帮你恢复PDF的加密文件。密码恢复的速度相当快,使用上也相当简单。可以帮你解开多达32位的密码。
软件下载:http://extend.hk.hi.cn/~czy/dl/apprp10.zip
破解工具:loader,trw2000, superbpm,Import REConstructor v1.4.2+ winhex
首先要谢谢电神大哥的指点(电神真是大好人,呵呵),没有他的指点,我现在还在拿着这个软件晕 :)
这个软件比较怪,用loader找到的入口是
jmp xxxxxxxx,开始我还以为找错了,后来脱出后用peid看是Watcom C/C++编写的软件,可能与vc++不一样吧.
一.找入口点
感谢fs0给我们带来loader这么个一个超cool的工具,用loader载入apdfprp.exe轻易找到入口
41a964.
二.用trw2000初步脱壳
下面要在入口处脱壳,打开SuperBPM,点erase,用trw载入apdfprp.exe,下g
41a964. 接着下pedump脱出程序.
三.修复import table
我脱这个程序的难点就在这里,因为用Import
REConstructor v1.4.2+,在oep那里填0001a964,点IAI AutoSearch,结果说无效 :( 后来问电神大哥说oep那里要填00001000(至于为什么我就不清楚了,那位知
道的能不能告诉我一下,是不是Watcom C/C++的原因??)
打开原加壳程序,在Import REConstructor
v1.4.2+ 的 Attach to an Active Process 窗口中选取apdfprp.exe的进程,然后在下方的oep处填入00001000,点IAI
AutoSearch,再点Get Imports 然后点Show Invalid,在Imported Functions Found窗口里的无效地址上点鼠标右键,选Trace
Leve11(disasm),再点show invaids,发现还有几个没有修复,再次在那几个没有修复的地址上点鼠标右键.
选中Plugin
Tracer(Asprotect 1.2X Emul),再点show invaids应发现所有的dll显示 valid:Yes了。
因为真正的入口是41a964,所以这时在oep那里填入0001a964,再点Fix
Dump,选中你用trw2000 pedump出的文件修复.
四.程序除错
运行脱后的程序报 API not found, please
contect technical support
用trw2000载入下断点 bpx messageboxexa ,F5返回,程序被中断,按F10可看出
出错对话框地址是
00409518
0167:004094FB A3F0084500
MOV [004508F0],EAX
0167:00409500 85C0
TEST EAX,EAX
0167:00409502 7526
JNZ 0040952A //只要这里改成jmp
409552(7526改EB4E)就可以了
0167:00409504 6A10
PUSH BYTE +10
0167:00409506 68F9424400
PUSH DWORD 004442F9
0167:0040950B 6804434400
PUSH DWORD 00444304
0167:00409510 2EFF15FC254400 CALL
NEAR [CS:004425FC]
0167:00409517 50
PUSH EAX
0167:00409518 2EFF1554264400 CALL
NEAR [CS:00442654] //这里报API not found, please contect technical support
0167:0040951F 6A00 PUSH
BYTE +00
0167:00409521 2EFF15F8264400 CALL NEAR
[CS:004426F8]
0167:00409528 EB28
JMP SHORT 00409552
0167:0040952A 6A10
PUSH BYTE +10
0167:0040952C 57
PUSH EDI
0167:0040952D FF15F0084500
CALL NEAR [004508F0] //这里弹出警告
0167:00409533 85C0
TEST EAX,EAX
0167:00409535
751B JNZ 00409552
//关键
0167:00409537 6A10
PUSH BYTE +10
0167:00409539 6835434400
PUSH DWORD 00444335
0167:0040953E 683A434400
PUSH DWORD 0044433A
0167:00409543 2EFF15FC254400 CALL
NEAR [CS:004425FC]
0167:0040954A 50
PUSH EAX
0167:0040954B 2EFF1554264400 CALL
NEAR [CS:00442654]
最好还是要谢谢电神大哥,没有他的指点,我是怎么也脱不了这个壳的, :)
fwnl
2002.5.1
长沙
- 标 题:Asprotect 1.2x加壳的Advanced PDF Password Recovery Pro 1.70脱壳 (3千字)
- 作 者:fwnl
- 时 间:2002-5-1 14:49:45
- 链 接:http://bbs.pediy.com