飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 12732|回复: 15

[原创] 光盘资料管家婆爆破分析

[复制链接]

该用户从未签到

发表于 2007-2-28 16:36:25 | 显示全部楼层 |阅读模式
【破文标题】光盘资料管家婆爆破
【破文作者】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:[EAX],BL
004017AA   > \A1 8B305800   MOV EAX,DWORD PTR DS:[58308B]
004017AF   .  C1E0 02       SHL EAX,2
004017B2   .  A3 8F305800   MOV DWORD PTR DS:[58308F],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:[EBP-13C],8
004142CA  |.  8D4D B0       LEA ECX,DWORD PTR SS:[EBP-50]
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:[EBP-50]   
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:[597450]
004142FB  |.  8B00          MOV EAX,DWORD PTR DS:[EAX]

+++++++++++++++++++++++++++++++++++++++++++++++++++++++
跟进关键CALL来到如下代码段:

00415488  /$  55            PUSH EBP
00415489  |.  8BEC          MOV EBP,ESP
0041548B  |.  51            PUSH ECX
0041548C  |.  FF75 08       PUSH DWORD PTR SS:[EBP+8]  //试练码
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:[EBP+8]  //试练码
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:[EBP+8]
004154B0  |.  0FBE42 1E     MOVSX EAX,BYTE PTR DS:[EDX+1E]
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:[EBP-1],DL
004154C5  |.  8A45 FF       MOV AL,BYTE PTR SS:[EBP-1]
004154C8  |.  8B55 08       MOV EDX,DWORD PTR SS:[EBP+8]
004154CB  |.  3A42 28       CMP AL,BYTE PTR DS:[EDX+28]
004154CE  |.  75 28         JNZ SHORT 11.004154F8
004154D0  |.  8B4D 08       MOV ECX,DWORD PTR SS:[EBP+8]
004154D3  |.  0FBE41 02     MOVSX EAX,BYTE PTR DS:[ECX+2]
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:[EBP-1],DL
004154E8  |.  8A45 FF       MOV AL,BYTE PTR SS:[EBP-1]
004154EB  |.  8B55 08       MOV EDX,DWORD PTR SS:[EBP+8]
004154EE  |.  3A42 2A       CMP AL,BYTE PTR DS:[EDX+2A]
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:[EBP+8]                              ; /Arg1
.......

四、爆破

我只是爆破成功了,跟进关键CALL也没有找到程序的注册码,希望找到注册码的朋友指点一下。


------------------------------------------------------------------------
最近工作一直很忙,没时间搞,现在只能够爆破了,希望大家多多指点。
------------------------------------------------------------------------
【版权声明】本破文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢!

[ 本帖最后由 knife 于 2007-2-28 17:31 编辑 ]

成功图片

成功图片

评分

参与人数 1威望 +20 收起 理由
tigerisme + 20 鼓励

查看全部评分

PYG19周年生日快乐!
  • TA的每日心情
    开心
    2019-12-31 12:59
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    发表于 2007-2-28 19:13:44 | 显示全部楼层
    有两个关键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:[EBP+8]
    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:[EBP+8]
    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:[EBP+8]
    004154B0  |.  0FBE42 1E     MOVSX EAX,BYTE PTR DS:[EDX+1E]           ;  第一位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:[EBP-1],DL
    004154C5  |.  8A45 FF       MOV AL,BYTE PTR SS:[EBP-1]
    004154C8  |.  8B55 08       MOV EDX,DWORD PTR SS:[EBP+8]
    004154CB  |.  3A42 28       CMP AL,BYTE PTR DS:[EDX+28]              ;  与第5位ASC比较
    004154CE  |.  75 28         JNZ SHORT 1798.004154F8                  ;  要相等
    004154D0  |.  8B4D 08       MOV ECX,DWORD PTR SS:[EBP+8]
    004154D3  |.  0FBE41 02     MOVSX EAX,BYTE PTR DS:[ECX+2]            ;  第三位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:[EBP-1],DL
    004154E8  |.  8A45 FF       MOV AL,BYTE PTR SS:[EBP-1]
    004154EB  |.  8B55 08       MOV EDX,DWORD PTR SS:[EBP+8]
    004154EE  |.  3A42 2A       CMP AL,BYTE PTR DS:[EDX+2A]              ;  与第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:[EBP+8]
    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:[EBP+8]
    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:[EBP+8]
    004155B0  |.  0FBE42 1E     MOVSX EAX,BYTE PTR DS:[EDX+1E]
    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:[EBP-1],DL
    004155C5  |.  8A45 FF       MOV AL,BYTE PTR SS:[EBP-1]
    004155C8  |.  8B55 08       MOV EDX,DWORD PTR SS:[EBP+8]
    004155CB  |.  3A42 28       CMP AL,BYTE PTR DS:[EDX+28]              ;  这里和第一个关键CALL一样
    004155CE  |.  75 28         JNZ SHORT 1798.004155F8
    004155D0  |.  8B4D 08       MOV ECX,DWORD PTR SS:[EBP+8]
    004155D3  |.  0FBE41 03     MOVSX EAX,BYTE PTR DS:[ECX+3]            ;  第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:[EBP-1],DL
    004155E8  |.  8A45 FF       MOV AL,BYTE PTR SS:[EBP-1]
    004155EB  |.  8B55 08       MOV EDX,DWORD PTR SS:[EBP+8]
    004155EE  |.  3A42 2B       CMP AL,BYTE PTR DS:[EDX+2B]              ;  与第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 编辑 ]
    PYG19周年生日快乐!
  • TA的每日心情
    无聊
    2016-1-18 13:29
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2007-2-28 21:10:41 | 显示全部楼层
    注册成功信息会写入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.
    PYG19周年生日快乐!
  • TA的每日心情
    郁闷
    2015-8-24 20:02
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2007-3-1 03:19:07 | 显示全部楼层
    不要光爆破,还要去除功能限制的!!!
    PYG19周年生日快乐!
  • TA的每日心情
    奋斗
    2022-12-19 19:56
  • 签到天数: 55 天

    [LV.5]常住居民I

    发表于 2007-3-1 09:27:11 | 显示全部楼层
    同意楼上的,一定要仔细一点心
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-3-4 21:46:30 | 显示全部楼层
    不错不错。。。这应该支持啊
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-3-6 12:20:39 | 显示全部楼层
    i不错,楼主,我来支持了.希望以后有更多好东西.我观注你哦.
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-3-31 23:59:54 | 显示全部楼层
    这应该支持啊~~~~~加油
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-4-1 07:24:47 | 显示全部楼层
    希望以后有更多好东西/:06
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-4-2 01:34:53 | 显示全部楼层
    我来支持了.希望以后有更多好东西
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表