光盘资料管家婆爆破分析
【破文标题】光盘资料管家婆爆破【破文作者】knife
【作者邮箱】
【作者主页】http://hi.biadu.com/devilknife
【破解工具】PEiD,C32ASM,UC32,OD
【破解平台】Windows XP
【软件名称】光盘资料管家婆
【软件大小】
【原版下载】http://www1.skycn.com/soft/33988.html
【保护方式】加壳
【软件简介】 光盘资料管家婆,是一款专门管理光盘资料的软件工具。您手头的光盘是不是越来越多了?是不是很多光盘你都不记得里面有些什么内容?你尝试过为找一个软件,而把自己所有的光盘一张张的放进光驱去察看吗?是不是很多时候,你知道自己所有的光盘里面就是有你想要的文件或者资料,但你缺偏偏记不得是放在哪张光盘上?
几乎每个使用电脑的朋友都会遇上这些小问题,问题虽小,但遇上了还真的很麻烦,不断去察看每张光盘还真是让你的工作效率下降不少。
光盘资料管家婆,她能记住你所有光盘里面的文件信息,当你要查找某个文件或者资料时,你只需要在管家婆这里查找,就知道有没有这个文件,以及这个文件存放在哪张光盘上面。你也可以通过光盘资料管家婆来浏览你所有的光盘文件信息,就比如你有10张光盘都是mp3的歌曲,你要找一首“真心英雄”的歌曲,你可能不记得放在哪张光盘上了,有了光盘资料管家婆,你就不必去每张光盘察看了,你只需直接在管家婆的界面上浏览,就知道在哪张光盘上有这歌曲,...
【破解声明】我是一只小菜鸟,偶得一点心得,愿与大家分享:)
------------------------------------------------------------------------
一、PEID查壳
先用PEID查壳发现是:
ASPack 2.12 -> Alexey Solodovnikov
二、OD手动脱壳
加载程序,入口点停在如下位置:
008A0001 >60 PUSHAD//程序入口点
008A0002 E8 03000000 CALL CDManage.008A000A//ESP定律
008A0007- E9 EB045D45 JMP 45E704F7
008A000C 55 PUSH EBP
008A000D C3 RETN
008A000E E8 01000000 CALL CDManage.008A0014
008A0013 EB 5D JMP SHORT CDManage.008A0072
008A0015 BB EDFFFFFF MOV EBX,-13
008A001A 03DD ADD EBX,EBP
..........
ESP定律一步搞定,Borland C++ 1999 写的,不用修复的:)
三、爆破
脱壳后的程序载入后停在这里:
00401798 > $ /EB 10 JMP SHORT 11.004017AA ;(初始 cpu 选择)
0040179A |66 DB 66 ;CHAR 'f'
0040179B |62 DB 62 ;CHAR 'b'
0040179C |3A DB 3A ;CHAR ':'
0040179D |43 DB 43 ;CHAR 'C'
0040179E |2B DB 2B ;CHAR '+'
0040179F |2B DB 2B ;CHAR '+'
004017A0 |48 DB 48 ;CHAR 'H'
004017A1 |4F DB 4F ;CHAR 'O'
004017A2 |4F DB 4F ;CHAR 'O'
004017A3 |4B DB 4B ;CHAR 'K'
004017A4 |90 NOP
004017A5 |E9 DB E9
004017A6 . |98 CWDE
004017A7 . |3058 00 XOR BYTE PTR DS:,BL
004017AA > \A1 8B305800 MOV EAX,DWORD PTR DS:
004017AF .C1E0 02 SHL EAX,2
004017B2 .A3 8F305800 MOV DWORD PTR DS:,EAX
004017B7 .52 PUSH EDX
004017B8 .6A 00 PUSH 0 ; /pModule = NULL
004017BA .E8 CF001800 CALL <JMP.&kernel32.GetModuleHandleA> ; \GetModuleHandleA
004017BF .8BD0 MOV EDX,EAX
004017C1 .E8 EE451700 CALL 11.00575DB4
004017C6 .5A POP EDX
004017C7 .E8 4C451700 CALL 11.00575D18
004017CC .E8 23461700 CALL 11.00575DF4
004017D1 .6A 00 PUSH 0 ; /Arg1 = 00000000
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
004142C1|.66:C785 C4FEF>MOV WORD PTR SS:,8
004142CA|.8D4D B0 LEA ECX,DWORD PTR SS:
004142CD|.51 PUSH ECX ; /Arg1
004142CE|.E8 B5110000 CALL 11.00415488 ; \11.00415488
004142D3|.59 POP ECX
004142D4|.84C0 TEST AL,AL
004142D6|.74 12 JE SHORT 11.004142EA
004142D8|.8D45 B0 LEA EAX,DWORD PTR SS:
004142DB|.50 PUSH EAX ; /Arg1
004142DC|.E8 A7120000 CALL 11.00415588 //关键CALL ; \11.00415588
004142E1|.59 POP ECX
004142E2|.84C0 TEST AL,AL
004142E4|.0F85 A5000000 JNZ 11.0041438F //关键跳爆破85变84
004142EA|>6A 00 PUSH 0
004142EC|.B9 FA8F5800 MOV ECX,11.00588FFA ;提示
004142F1|.BA ED8F5800 MOV EDX,11.00588FED ;注册码不正确
004142F6|.A1 50745900 MOV EAX,DWORD PTR DS:
004142FB|.8B00 MOV EAX,DWORD PTR DS:
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
跟进关键CALL来到如下代码段:
00415488/$55 PUSH EBP
00415489|.8BEC MOV EBP,ESP
0041548B|.51 PUSH ECX
0041548C|.FF75 08 PUSH DWORD PTR SS://试练码
0041548F|.E8 C00E1600 CALL 11.00576354
00415494|.59 POP ECX
00415495|.83F8 10 CMP EAX,10
00415498|.74 13 JE SHORT 11.004154AD
0041549A|.FF75 08 PUSH DWORD PTR SS://试练码
0041549D|.E8 B20E1600 CALL 11.00576354
004154A2|.59 POP ECX
004154A3|.83F8 13 CMP EAX,13
004154A6|.74 05 JE SHORT 11.004154AD
004154A8|.33C0 XOR EAX,EAX
004154AA|.59 POP ECX
004154AB|.5D POP EBP
004154AC|.C3 RETN
004154AD|>8B55 08 MOV EDX,DWORD PTR SS:
004154B0|.0FBE42 1E MOVSX EAX,BYTE PTR DS:
004154B4|.83C0 11 ADD EAX,11
004154B7|.B9 19000000 MOV ECX,19
004154BC|.99 CDQ
004154BD|.F7F9 IDIV ECX
004154BF|.80C2 42 ADD DL,42
004154C2|.8855 FF MOV BYTE PTR SS:,DL
004154C5|.8A45 FF MOV AL,BYTE PTR SS:
004154C8|.8B55 08 MOV EDX,DWORD PTR SS:
004154CB|.3A42 28 CMP AL,BYTE PTR DS:
004154CE|.75 28 JNZ SHORT 11.004154F8
004154D0|.8B4D 08 MOV ECX,DWORD PTR SS:
004154D3|.0FBE41 02 MOVSX EAX,BYTE PTR DS:
004154D7|.83C0 2B ADD EAX,2B
004154DA|.B9 19000000 MOV ECX,19
004154DF|.99 CDQ
004154E0|.F7F9 IDIV ECX
004154E2|.80C2 42 ADD DL,42
004154E5|.8855 FF MOV BYTE PTR SS:,DL
004154E8|.8A45 FF MOV AL,BYTE PTR SS:
004154EB|.8B55 08 MOV EDX,DWORD PTR SS:
004154EE|.3A42 2A CMP AL,BYTE PTR DS:
004154F1|.75 05 JNZ SHORT 11.004154F8
004154F3|.B0 01 MOV AL,1
004154F5|.59 POP ECX
004154F6|.5D POP EBP
004154F7|.C3 RETN
004154F8|>FF75 08 PUSH DWORD PTR SS: ; /Arg1
.......
四、爆破
我只是爆破成功了,跟进关键CALL也没有找到程序的注册码,希望找到注册码的朋友指点一下。
------------------------------------------------------------------------
最近工作一直很忙,没时间搞,现在只能够爆破了,希望大家多多指点。
------------------------------------------------------------------------
【版权声明】本破文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢!
[ 本帖最后由 knife 于 2007-2-28 17:31 编辑 ] 有两个关键CALL
第一个004142CE CALL 1798.00415488============================
00415488/$55 PUSH EBP
00415489|.8BEC MOV EBP,ESP
0041548B|.51 PUSH ECX
0041548C|.FF75 08 PUSH DWORD PTR SS:
0041548F|.E8 C00E1600 CALL 1798.00576354
00415494|.59 POP ECX
00415495|.83F8 10 CMP EAX,10 ;注册码为0x10位
00415498|.74 13 JE SHORT 1798.004154AD
0041549A|.FF75 08 PUSH DWORD PTR SS:
0041549D|.E8 B20E1600 CALL 1798.00576354
004154A2|.59 POP ECX
004154A3|.83F8 13 CMP EAX,13
004154A6|.74 05 JE SHORT 1798.004154AD
004154A8|.33C0 XOR EAX,EAX
004154AA|.59 POP ECX
004154AB|.5D POP EBP
004154AC|.C3 RETN
004154AD|>8B55 08 MOV EDX,DWORD PTR SS:
004154B0|.0FBE42 1E MOVSX EAX,BYTE PTR DS: ;第一位ASC
004154B4|.83C0 11 ADD EAX,11 ;加0x11
004154B7|.B9 19000000 MOV ECX,19
004154BC|.99 CDQ
004154BD|.F7F9 IDIV ECX ;除以0x19
004154BF|.80C2 42 ADD DL,42 ;余数加0x42
004154C2|.8855 FF MOV BYTE PTR SS:,DL
004154C5|.8A45 FF MOV AL,BYTE PTR SS:
004154C8|.8B55 08 MOV EDX,DWORD PTR SS:
004154CB|.3A42 28 CMP AL,BYTE PTR DS: ;与第5位ASC比较
004154CE|.75 28 JNZ SHORT 1798.004154F8 ;要相等
004154D0|.8B4D 08 MOV ECX,DWORD PTR SS:
004154D3|.0FBE41 02 MOVSX EAX,BYTE PTR DS: ;第三位ASC
004154D7|.83C0 2B ADD EAX,2B ;加0x2B
004154DA|.B9 19000000 MOV ECX,19
004154DF|.99 CDQ
004154E0|.F7F9 IDIV ECX ;除以0x19
004154E2|.80C2 42 ADD DL,42 ;余数加0x42
004154E5|.8855 FF MOV BYTE PTR SS:,DL
004154E8|.8A45 FF MOV AL,BYTE PTR SS:
004154EB|.8B55 08 MOV EDX,DWORD PTR SS:
004154EE|.3A42 2A CMP AL,BYTE PTR DS: ;与第7位ASC比较
004154F1|.75 05 JNZ SHORT 1798.004154F8 ;要相等
004154F3|.B0 01 MOV AL,1
004154F5|.59 POP ECX
004154F6|.5D POP EBP
004154F7|.C3 RETN
第二个004142DC CALL 1798.00415588============================
00415588/$55 PUSH EBP
00415589|.8BEC MOV EBP,ESP
0041558B|.51 PUSH ECX
0041558C|.FF75 08 PUSH DWORD PTR SS:
0041558F|.E8 C00D1600 CALL 1798.00576354
00415594|.59 POP ECX
00415595|.83F8 10 CMP EAX,10 ;0x10位
00415598|.74 13 JE SHORT 1798.004155AD
0041559A|.FF75 08 PUSH DWORD PTR SS:
0041559D|.E8 B20D1600 CALL 1798.00576354
004155A2|.59 POP ECX
004155A3|.83F8 13 CMP EAX,13
004155A6|.74 05 JE SHORT 1798.004155AD
004155A8|.33C0 XOR EAX,EAX
004155AA|.59 POP ECX
004155AB|.5D POP EBP
004155AC|.C3 RETN
004155AD|>8B55 08 MOV EDX,DWORD PTR SS:
004155B0|.0FBE42 1E MOVSX EAX,BYTE PTR DS:
004155B4|.83C0 11 ADD EAX,11
004155B7|.B9 19000000 MOV ECX,19
004155BC|.99 CDQ
004155BD|.F7F9 IDIV ECX
004155BF|.80C2 42 ADD DL,42
004155C2|.8855 FF MOV BYTE PTR SS:,DL
004155C5|.8A45 FF MOV AL,BYTE PTR SS:
004155C8|.8B55 08 MOV EDX,DWORD PTR SS:
004155CB|.3A42 28 CMP AL,BYTE PTR DS: ;这里和第一个关键CALL一样
004155CE|.75 28 JNZ SHORT 1798.004155F8
004155D0|.8B4D 08 MOV ECX,DWORD PTR SS:
004155D3|.0FBE41 03 MOVSX EAX,BYTE PTR DS: ;第4位ASC
004155D7|.83C0 38 ADD EAX,38 ;加0x38
004155DA|.B9 19000000 MOV ECX,19
004155DF|.99 CDQ
004155E0|.F7F9 IDIV ECX ;除以0x19
004155E2|.80C2 42 ADD DL,42 ;余数加0x42
004155E5|.8855 FF MOV BYTE PTR SS:,DL
004155E8|.8A45 FF MOV AL,BYTE PTR SS:
004155EB|.8B55 08 MOV EDX,DWORD PTR SS:
004155EE|.3A42 2B CMP AL,BYTE PTR DS: ;与第8位要相等
004155F1|.75 05 JNZ SHORT 1798.004155F8
004155F3|.B0 01 MOV AL,1
004155F5|.59 POP ECX
004155F6|.5D POP EBP
004155F7|.C3 RETN
注册码16位
第5位ASC=(第1位ASC+17)%25+66
第7位ASC=(第3位ASC+43)%25+66
第8位ASC=(第4位ASC+56)%25+66
几组可用注册码
41ewU!UBzAi42m}N
\K{YKwRV`0!U/Vsi
43;CUjDYh%Z@$1;%
有点问题...
[ 本帖最后由 极速暴龙 于 2007-2-28 20:00 编辑 ] 注册成功信息会写入disc.dat文件里
Search for differences
1. : 139,544 bytes
2. : 139,544 bytes
Offsets: hexadec.
8155: FE 0E
8156: 30 6F
8157: 50 F3
8158: 39 7A
8159: 5B 5A
8355: FE 0E
8356: 30 6F
8357: 50 F3
8358: 39 7A
8359: 5B 5A
894D: C3 CA
894E: D8 B7
894F: 47 00
8950: 39 A1
8951: 5B 59
8955: FE 0E
8956: 30 6F
8957: 50 F3
8958: 39 7A
8959: 5B 5A
8B4D: C3 CA
8B4E: D8 B7
8B4F: 47 00
8B50: 39 A1
8B51: 5B 59
8B55: FE 0E
8B56: 30 6F
8B57: 50 F3
8B58: 39 7A
8B59: 5B 5A
1C11C: 5F 7E
1C11D: 51 79
1C11E: 94 FA
1C11F: 7A 28
1C24F: 13 12
1C250: 13 12
1C46A: 31 45
1C46B: 32 72
1C46C: 33 72
1C46D: 34 6F
1C46E: 52 72
1C46F: 35 20
1C470: 55 43
1C471: 4A 6F
1C472: 36 64
1C473: 37 65
1C474: 38 00
1C475: 39 33
1C476: 61 48
1C477: 62 36
1C478: 63 2D
1C479: 64 38
1C47A: 00 41
1C484: 01 00
2011C: 1B 1A
20138: 13 12
56 difference(s) found. 不要光爆破,还要去除功能限制的!!! 同意楼上的,一定要仔细一点心 不错不错。。。这应该支持啊 i不错,楼主,我来支持了.希望以后有更多好东西.我观注你哦. 这应该支持啊~~~~~加油 希望以后有更多好东西/:06 我来支持了.希望以后有更多好东西
页:
[1]
2