目标软件:PDF解密器运行平台:win32
下载地址:http://www.onlinedown.net/soft/417854.htm
使用工具:OllyDbg吾爱2016版
这个软件很久以前就分析过,今天无聊写个破文
先看注册
也不知道是不是根据本机机器码算的注册码。
载入od。
有壳。
不管他。f9运行起来
注册之
[Asm] 纯文本查看 复制代码 004FB544 E8 C36AF0FF call <jmp.&MSVBVM60.#595> ; msgbox
这是vb的程序,错误信息框
往下单步
进入了系统领空。
重新载入
那就下按钮事件断点吧
816c24
[Asm] 纯文本查看 复制代码 004E8188 . 816C24 04 FFF>sub dword ptr ss:[esp+0x4],0xFFFF
运行起来,注册
断下了,f8跟踪,跟到了信息提示
[Asm] 纯文本查看 复制代码 004FB4BD . /E9 45010000 jmp PPR.004FB607
004FB4C2 > |C745 FC 13000>mov dword ptr ss:[ebp-0x4],0x13
004FB4C9 . |C785 78FFFFFF>mov dword ptr ss:[ebp-0x88],0x80020004
004FB4D3 . |C785 70FFFFFF>mov dword ptr ss:[ebp-0x90],0xA
004FB4DD . |C745 88 04000>mov dword ptr ss:[ebp-0x78],0x80020004
004FB4E4 . |C745 80 0A000>mov dword ptr ss:[ebp-0x80],0xA
004FB4EB . |C785 58FFFFFF>mov dword ptr ss:[ebp-0xA8],PPR.004EC86C ; 无效
004FB4F5 . |C785 50FFFFFF>mov dword ptr ss:[ebp-0xB0],0x8
004FB4FF . |8D95 50FFFFFF lea edx,dword ptr ss:[ebp-0xB0]
004FB505 . |8D4D 90 lea ecx,dword ptr ss:[ebp-0x70]
004FB508 . |E8 F96AF0FF call <jmp.&MSVBVM60.__vbaVarDup>
004FB50D . |C785 68FFFFFF>mov dword ptr ss:[ebp-0x98],PPR.004EC8D0 ; 错误的注册码.
004FB517 . |C785 60FFFFFF>mov dword ptr ss:[ebp-0xA0],0x8
004FB521 . |8D95 60FFFFFF lea edx,dword ptr ss:[ebp-0xA0]
插进来的跳转让jmp不能跳。跟踪之
[Asm] 纯文本查看 复制代码 004FB142 > \83BD E0FEFFFF>cmp dword ptr ss:[ebp-0x120],0x0
004FB149 .^ 0F85 86FEFFFF jnz PPR.004FAFD5
004FB14F > C745 FC 0A000>mov dword ptr ss:[ebp-0x4],0xA
004FB156 . 66:837D CC FF cmp word ptr ss:[ebp-0x34],0xFFFF
004FB15B . 0F85 61030000 jnz PPR.004FB4C2 ; 跳转
上面的jnz是向上的,那么这个jnz就是关键跳了。
爆破把这个jnz干掉即可
下面追码
在段首下段,运行,注册
[Asm] 纯文本查看 复制代码 004FAE60 > \55 push ebp
004FAE61 . 8BEC mov ebp,esp
004FAE63 . 83EC 18 sub esp,0x18
004FAE66 . 68 E61E4000 push <jmp.&MSVBVM60.__vbaExceptHandler> ; SE 处理程序安装
f8单步跟踪
堆栈出现可疑字符串
继续f8
[Asm] 纯文本查看 复制代码 004FB15B . /0F85 61030000 jnz PPR.004FB4C2 ; 跳转
到跳转了。
[Asm] 纯文本查看 复制代码 004FB50D . C785 68FFFFFF>mov dword ptr ss:[ebp-0x98],PPR.004EC8D0 ; 错误的注册码.
004FB517 . C785 60FFFFFF>mov dword ptr ss:[ebp-0xA0],0x8
004FB521 . 8D95 60FFFFFF lea edx,dword ptr ss:[ebp-0xA0]
004FB527 . 8D4D A0 lea ecx,dword ptr ss:[ebp-0x60]
004FB52A . E8 D76AF0FF call <jmp.&MSVBVM60.__vbaVarDup>
004FB52F . 8D85 70FFFFFF lea eax,dword ptr ss:[ebp-0x90]
004FB535 . 50 push eax
004FB536 . 8D45 80 lea eax,dword ptr ss:[ebp-0x80]
004FB539 . 50 push eax
004FB53A . 8D45 90 lea eax,dword ptr ss:[ebp-0x70]
004FB53D . 50 push eax
004FB53E . 6A 00 push 0x0
004FB540 . 8D45 A0 lea eax,dword ptr ss:[ebp-0x60]
004FB543 . 50 push eax
004FB544 . E8 C36AF0FF call <jmp.&MSVBVM60.#595> ; msgbox
004FB549 . 8D85 70FFFFFF lea eax,dword ptr ss:[ebp-0x90]
提示出现。追码完毕。
fla873416588611047就是真码
注册完成。
应该是根据机器码算出的注册码。但是,我在整个过程中没看见机器码的出现
…………
大家也可做一做…………
好的,就到这。
给点热心呗
|