年少 发表于 2016-4-8 00:22

固定资产软件破解之追码

昨天看到论坛有人发布了这款软件的破解版,其实我也很好奇,也想练手玩玩。。

链接地址:http://www.52pojie.cn/thread-484719-1-1.html

软件官方下载地址:http://www.thrj.net/download/thgdzc2.0.exe有需要的可以下载使用

那么就开始本文的主题:破解之追码(下载软件的时候没想过追码)


环境:
1、WIN7 64
2、PEID V0.95
3、吾爱破解专用版Ollydbg






老样子,还是先查壳。delphi 无壳


载入OD,加载delphi&VB事件断点查找脚本,然后F9让程序运行起来。。

当点击登录的时候 会断下,这里不用理会,直接F9。。。。 直到主界面完全出现


然后选择[帮助]-[软件购买注册]   OD断下,继续F9跑起来。。此时出现软件注册界面

输入任意注册码,点击确定,OD断下

这里直接回车跟进去

这个就是软件注册的事件代码,在这里下断,取消其他的所有断点,F9跑到这里

F8单步往下走

00773AE4   .55            push ebp                                 ;软件注册的事件代码
00773AE5   .8BEC          mov ebp,esp
00773AE7   .B9 10000000   mov ecx,0x10
00773AEC   >6A 00         push 0x0
00773AEE   .6A 00         push 0x0
00773AF0   .49            dec ecx
00773AF1   .^ 75 F9         jnz short thgdzc.00773AEC
00773AF3   .51            push ecx
00773AF4   .53            push ebx
00773AF5   .56            push esi
00773AF6   .57            push edi
00773AF7   .8BF0          mov esi,eax                              ;thgdzc.00773C09
00773AF9   .33C0          xor eax,eax                              ;thgdzc.00773C09
00773AFB   .55            push ebp
00773AFC   .68 33417700   push thgdzc.00774133
00773B01   .64:FF30       push dword ptr fs:
00773B04   .64:8920       mov dword ptr fs:,esp
00773B07   .8D55 F4       lea edx,dword ptr ss:
00773B0A   .8B86 08030000 mov eax,dword ptr ds:
00773B10   .E8 A39BD1FF   call thgdzc.0048D6B8
00773B15   .8B45 F4       mov eax,dword ptr ss:         ;取到注册码
00773B18   .8D55 F8       lea edx,dword ptr ss:
00773B1B   .E8 2093C9FF   call thgdzc.0040CE40
00773B20   .837D F8 00    cmp dword ptr ss:,0x0         ;比较注册码是否为空
00773B24   .75 2B         jnz short thgdzc.00773B51                ;不为空跳转
00773B26   .6A 40         push 0x40
00773B28   .B9 44417700   mov ecx,thgdzc.00774144                  ;揭示
00773B2D   .BA 4C417700   mov edx,thgdzc.0077414C                  ;请输入注册码!
00773B32   .A1 70BC8600   mov eax,dword ptr ds:
00773B37   .8B00          mov eax,dword ptr ds:
00773B39   .E8 82B2D3FF   call thgdzc.004AEDC0
00773B3E   .8B86 08030000 mov eax,dword ptr ds:
00773B44   .8B10          mov edx,dword ptr ds:
00773B46   .FF92 C4000000 call dword ptr ds:
00773B4C   .E9 26050000   jmp thgdzc.00774077
00773B51   >8D55 EC       lea edx,dword ptr ss:
00773B54   .8B86 08030000 mov eax,dword ptr ds:
00773B5A   .E8 599BD1FF   call thgdzc.0048D6B8                     ;返回注册码的长度
00773B5F   .8B45 EC       mov eax,dword ptr ss:
00773B62   .8D55 F0       lea edx,dword ptr ss:
00773B65   .E8 D692C9FF   call thgdzc.0040CE40
00773B6A   .8B45 F0       mov eax,dword ptr ss:
00773B6D   .50            push eax                                 ;注册码
00773B6E   .68 64417700   push thgdzc.00774164                     ;Thgdzc-
00773B73   .8D45 E0       lea eax,dword ptr ss:
00773B76   .50            push eax                                 ;thgdzc.00773C09
00773B77   .8D55 D8       lea edx,dword ptr ss:
00773B7A   .8B86 04030000 mov eax,dword ptr ds:
00773B80   .E8 339BD1FF   call thgdzc.0048D6B8                     ;返回机器码的长度
00773B85   .8B45 D8       mov eax,dword ptr ss:          ;机器码EDC3-0B13-08EA
00773B88   .8D55 DC       lea edx,dword ptr ss:
00773B8B   .E8 B092C9FF   call thgdzc.0040CE40
00773B90   .8B45 DC       mov eax,dword ptr ss:
00773B93   .8B15 78C08600 mov edx,dword ptr ds:          ;thgdzc.00872334
00773B99   .8B12          mov edx,dword ptr ds:
00773B9B   .33C9          xor ecx,ecx                              ;19770427
00773B9D   .E8 D60BFFFF   call thgdzc.00764778
00773BA2   .8B45 E0       mov eax,dword ptr ss:          ;0E0000000000000098CBE05D561B04D158C827596DC2F77C
00773BA5   .8D4D E4       lea ecx,dword ptr ss:
00773BA8   .BA 04000000   mov edx,0x4
00773BAD   .E8 E67FCDFF   call thgdzc.0044BB98                     ;取密文的前4位
00773BB2   .FF75 E4       push dword ptr ss:
00773BB5   .68 74417700   push thgdzc.00774174                     ;-
00773BBA   .8D45 D0       lea eax,dword ptr ss:
00773BBD   .50            push eax                                 ;thgdzc.00773C09
00773BBE   .8D55 C8       lea edx,dword ptr ss:
00773BC1   .8B86 04030000 mov eax,dword ptr ds:
00773BC7   .E8 EC9AD1FF   call thgdzc.0048D6B8
00773BCC   .8B45 C8       mov eax,dword ptr ss:
00773BCF   .8D55 CC       lea edx,dword ptr ss:
00773BD2   .E8 6992C9FF   call thgdzc.0040CE40
00773BD7   .8B45 CC       mov eax,dword ptr ss:
00773BDA   .8B15 78C08600 mov edx,dword ptr ds:          ;thgdzc.00872334
00773BE0   .8B12          mov edx,dword ptr ds:
00773BE2   .33C9          xor ecx,ecx
00773BE4   .E8 8F0BFFFF   call thgdzc.00764778
00773BE9   .8B45 D0       mov eax,dword ptr ss:          ;0E0000000000000098CBE05D561B04D158C827596DC2F77C
00773BEC   .8D4D D4       lea ecx,dword ptr ss:
00773BEF   .BA 04000000   mov edx,0x4
00773BF4   .E8 0F80CDFF   call thgdzc.0044BC08                     ;取密文的后4位
00773BF9   .FF75 D4       push dword ptr ss:
00773BFC   .8D45 E8       lea eax,dword ptr ss:
00773BFF   .BA 04000000   mov edx,0x4
00773C04   .E8 C318C9FF   call thgdzc.004054CC                     ;组合最终的注册码Thgdzc-0E00-F77C
00773C09   .8B55 E8       mov edx,dword ptr ss:          ;软件注册码Thgdzc-0E00-F77C
00773C0C   .58            pop eax                                  ;025F2DE8
00773C0D   .E8 4619C9FF   call thgdzc.00405558
00773C12   .0F85 30040000 jnz thgdzc.00774048


其中那一串48位的字符串,我不知道是怎么来的,所以只跟出来了注册码,没办法写注册机。

密文:0E0000000000000098CBE05D561B04D158C827596DC2F77C
取密文的前4位和密文的后4位
Thgdzc-0E00-F77C

你也可以尝试动手试试,最后输入注册码,提示软件已注册。




年少 发表于 2016-4-9 21:52

本帖最后由 年少 于 2016-4-9 22:05 编辑

新人组的新 发表于 2016-4-9 20:30
刚才找到了一个方法
OD载入后,单击鼠标右键,选择"查找",然后是"所有命令",在弹出的输入框里,写入特征代 ...
程序载入OD时,应该不在程序的领空,需要按一次F9,然后会断在程序的领空,如图 载入时


到达程序领空看OD的标题栏进行区分。   方法:1、右键运行脚本 2、如果没有找到这个脚本 你也可以右键 [查找] -[二进制字符串]--输入"740E8BD38B83????????FF93????????"(其实脚本也是查找特征码,直接查找也是可以的。) Ctrl+L,查找下一处,会有多处,都设置断点。
按上面的步骤 你就下好了断点,接下来就是找到注册按钮的事件代码先F9运行程序 然后点击[确定]登录系统,因为这个确定是按钮,所以也会断下。要找的是注册按钮,所以直接F9继续运行程序

一直到程序整个界面都运行起来了,然后点击[帮助]-[软件购买注册] 这里也会断下,直接F9运行,然后这里会弹出软件注册的界面,输入任意注册码,点击[确定]

点击[确定]以后OD断在这里,按回车就进入

来到按钮事件代码,F8一直往下走,会跟到注册码的


以上步骤 应该比较细了。。 希望你成功。

新人组的新 发表于 2016-4-9 20:30

年少 发表于 2016-4-9 18:00
先用事件断点脚本处理一下,然后输入错误注册码 会断下的。至于脚本 论坛就有的。

刚才找到了一个方法
OD载入后,单击鼠标右键,选择"查找",然后是"所有命令",在弹出的输入框里,写入特征代码"sub eax,0a",确定后,就来到下面的窗口,在下面的sub eax,0A处,双击进去吧:,来找这里后,在下面的je处跟随过去,跟随来到的这个CALL,就是了,F2下断吧。

但是,但是:
根据这个方法,找到了je下面的call,也进行了下断,但是程序依然运行,输入错误注册码依然重启。是不是这个断点下得不对。

weihua168 发表于 2016-4-8 00:53

mohao 发表于 2016-4-8 07:11

请高手说说怎么做内存注册机

manbajie 发表于 2016-4-8 15:12

来学习一下

mingxuan0216 发表于 2016-4-8 18:35

爆破搞定, 注册机比较高级

zdfs520 发表于 2016-4-8 21:36

3yu3 发表于 2016-4-8 23:33

本帖最后由 3yu3 于 2016-4-8 23:35 编辑

追码没用,注册后有暗桩。。数据超过一定限制会被删除。

新人组的新 发表于 2016-4-9 08:15

大神,软件在输入错误注册码以后,没有任何提示就重启了,这种情况如何下断呢。

年少 发表于 2016-4-9 17:59

3yu3 发表于 2016-4-8 23:33
追码没用,注册后有暗桩。。数据超过一定限制会被删除。

追码没用,那这个软件注册是以什么方式的呢???

应该是说爆破没用吧! 爆破不完美的话 会有暗桩,随机删除数据吧。

年少 发表于 2016-4-9 18:00

新人组的新 发表于 2016-4-9 08:15
大神,软件在输入错误注册码以后,没有任何提示就重启了,这种情况如何下断呢。

先用事件断点脚本处理一下,然后输入错误注册码 会断下的。至于脚本 论坛就有的。
页: [1] 2 3
查看完整版本: 固定资产软件破解之追码