脱壳破解之路、、、破软件、f2word.exe V3.0 、 下载地址、、http://www.verypdf.com/pdf2word/、
软件截图、、开始需要注册、、、
今天看见老牛在找一pdf转word的软件、、心想前两天学破解、正好碰见一个、、给老牛发过去了、、不过发了个未破解的、、
于是去官网下了个最新的、、、、pdf2word.exe V3.0的 、、这个转换工具个人感觉很好、大家可以下载下来用一下、、、
以前下载过一些很垃圾的转换器 、、、转换完还是图片、、、
好了废话不说了、、记录一下破解过程、、
这个软件运行之前就让你注册、、不过可以使用100次、、
要破解先脱壳不过也可以不用这里选择先脱壳再破解、、正好拿它练下手、、、
Peid查壳
普通深度核心、、扫描都是UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo
而外部扫描是、UPX 2.90 [LZMA] -> Markus Oberhumer, Laszlo Molnar & John Reiser *
自我认为是upx的一个变形壳、先载入OD、看一下、、
程序停在
0080E480 > 60 PUSHAD
0080E481 BE 00E05500 MOV ESI,pdf2word.0055E000
0080E486 8DBE 0030EAFF LEA EDI,DWORD PTR DS:[ESI+FFEA3000]
使用ESP定律先走一下、、、到这、、
0080E627 . 8D4424 80 LEA EAX,DWORD PTR SS:[ESP-80] 单步、、
0080E62B > 6A 00 PUSH 0
0080E62D . 39C4 CMP ESP,EAX
0080E62F .^ 75 FA JNZ SHORT pdf2word.0080E62B
0080E631 . 83EC 80 SUB ESP,-80 //F4到这里、、、
0080E634 .^ E9 E553D8FF JMP pdf2word.00593A1E ;直接到OEP、、
00593A1E 55 PUSH EBP
00593A1F 8BEC MOV EBP,ESP
00593A21 6A FF PUSH -1
00593A23 68 20675D00 PUSH pdf2word.005D6720
00593A28 68 9C3D5900 PUSH pdf2word.00593D9C
看见入口得知是VC++的程序、、、Dump出来、、、、
Peid查壳发现
普通深度核心、、扫描都是 Microsoft Visual C++ 6.0
外部扫描却是、、、Armadillo v1.71 *、、
不知道是不是误报没有继续研究、因为后边修改指令的时候并没有提示不可以、、、回头再研究这个壳、、、
好了壳脱好了、、现在开始破解、、依然OD载入、、
F9运行输入假码、、点OK、、弹出错误提示、、、
F12堆栈法、、到达这个错误框的调用处向上向下翻找到关键CALL和关键跳、、、、
004066A1 68 F0617F00 PUSH 2.007F61F0 ; ASCII "123456789"
004066A6 E8 95F8FFFF CALL 2.00405F40 //关键CALL
004066AB 83C4 04 ADD ESP,4
004066AE 85C0 TEST EAX,EAX
004066B0 74 44 JE SHORT 2.004066F6 //关键跳
004066B2 6A 40 PUSH 40
004066B4 68 B42A5E00 PUSH 2.005E2AB4 ; ASCII "Thank you."
004066B9 68 882A5E00 PUSH 2.005E2A88 ; ASCII "Thank you registered VeryPDF PDF2Word v3.0."
这个软件不是很难、、去CALL里边将EAX出来是为1即可、、、
或者下边的跳不让他实现也行、、对、、就这样、、破解完后的效果就是、弹出注册框直接点OK即可、、什么也不用输入、、、
破解完想了想、、不让它弹出注册提示不更好吗、、、
OD载入F9运行、、弹出注册框F12堆栈法、、找到弹框地方
0040913C /74 1A JZ SHORT 2.00409158 、想办法使这个跳实现即可、、更改指令、、保存文件 成功、、
激动之余写个内存补丁试试、、、打开注册器编辑器、、
输入要求注意搜索范围是2字节、、、、、生成、、运行即可出现主程序、、
完、、