332595 发表于 2017-11-10 20:39

怪我学艺不精,已经搞不出来了,恳请老师皮鞭招呼

本帖最后由 332595 于 2017-11-11 08:29 编辑

前几天看了别人的帖子弄考无忧的算法,觉得甚是有意思就自己弄了注册机出来{:6_201:},当然是弄了个全套{:6_208:}。请原谅{:6_223:}我易语言也学了几天而已,原来自学过VB所以学易语言觉得还是有点点基础。

图如下,当然源代码就不贴了,怕丢人{:6_209:}。。


[*]


static/image/hrline/1.gifhttps://www.52hb.com/static/image/hrline/1.gif


然而自己不知道功力深浅,找了个软件也试着看能不能弄弄算法,或者是追到注册码,结果颜面扫地,真想给自己二耳光,没这金刚牙就不要咬铁壳壳嘛,这下弄个前不前后不后的。老师给点思路吧,我已经快睡不着了{:6_221:}。


看看这个软件吧:

名称:QQoffice人事软件
语言:Delphi
加密:Aspack
调试:ODFZ:DEDE+PEexploer
地址:http://www.qqbgsoft.com/CP_HrGz.html

至于怎么脱衣之类的,我想像我们这类菜鸟,当然直接用全自动的脱壳机了,建议在XP下脱,WIN7我试过不行的,其实这点我之前听大神讲过的,所以再怎么换系统我必须要留个XP。

说说这个软件的特点吧:安装完成后分为Server和Client端,试用90次以后必须进行注册,之前我已经想办法跳过这些NBG了,原以为我可以直接使用正版的,但是的但是我才发现作者很是狡猾狡猾的,直接改这些跳转后有些功能会隐藏的,你是看不到的,如图:



当然还有其他地方我没有找出来。。。。

部分记录如下:

00BE3578为用户登陆界面的确定按钮
00CA51E4为清除密码的按钮
0094DC5C为启动的闪屏界面
00D84C68帐套管理的小齿轮图标位置,但是不知道如何显示出来
00D84DFC|.E8 279D69FF   call 逆向强制.0041EB28      这里的CALL决定下面的跳转是否显示该齿轮


以下修改进入到“逆向强制注册窗口,进入到提示提示登陆用户及密码界面”
00DAC55E|.58            pop eax                                  ;0012FF9C
00DAC55F|.E8 F42567FF   call QQoffice.0041EB58
00DAC564      74 48         je short QQoffice.00DAC5AEjle改成je
00DAC566|.8D85 60FFFFFF lea eax,
00DAC56C|.BA 5A000000   mov edx,0x5A
00DAC571|.B1 01         mov cl,0x1
00DAC573|.E8 70DD66FF   call QQoffice.0041A2E8
00DAC578|.8D85 60FFFFFF lea eax,
00DAC57E|.8D55 E0       lea edx,
00DAC581|.E8 2A2567FF   call QQoffice.0041EAB0
00DAC586|.8D85 60FFFFFF lea eax,
00DAC58C|.50            push eax
00DAC58D|.8D85 50FFFFFF lea eax,
00DAC593|.33D2          xor edx,edx
00DAC595|.B1 01         mov cl,0x1
00DAC597|.E8 4CDD66FF   call QQoffice.0041A2E8
00DAC59C|.8D95 50FFFFFF lea edx,
00DAC5A2|.58            pop eax                                  ;0012FF9C
00DAC5A3|.E8 B02567FF   call QQoffice.0041EB58
00DAC5A8      0F8E 5E010000 jle QQoffice.00DAC70Cjg改jle
00DAC5AE|>8D95 48FFFFFF lea edx,

以下地方是我在PEexploer里查看到的,原来未注册很多功能都是不显示的,包括上图中的第6点也是通过改属于显示出来的。
【模块管理】逆向点:
00DC10CB   /75 45         jnz short QQoffice.00DC1112                        je掉不让跳转
00DC10CD|. |8D55 FC       lea edx,
00DC10D0|. |B8 5C11DC00   mov eax,QQoffice.00DC115C                ;HYLKRQL
00DC10D5|. |E8 1E2676FF   call QQoffice.005236F8
00DC10DA|. |8B55 FC       mov edx,
00DC10DD|. |A1 2026E000   mov eax,dword ptr ds:          ;,鬣
00DC10E2|. |8B00          mov eax,dword ptr ds:
00DC10E4|. |E8 B74F64FF   call QQoffice.004060A0
00DC10E9   |75 27         jnz short QQoffice.00DC1112                        je掉不让跳转
00DC10EB|. |8BCB          mov ecx,ebx

【引入模块】逆向点:
00DC0FAB|. /75 45         jnz short QQoffice.00DC0FF2                        je掉不让跳转
00DC0FAD|. |8D55 FC       lea edx,
00DC0FB0|. |B8 3C10DC00   mov eax,QQoffice.00DC103C                ;HYLKRQL
00DC0FB5|. |E8 3E2776FF   call QQoffice.005236F8
00DC0FBA|. |8B55 FC       mov edx,
00DC0FBD|. |A1 2026E000   mov eax,dword ptr ds:          ;,鬣
00DC0FC2|. |8B00          mov eax,dword ptr ds:
00DC0FC4|. |E8 D75064FF   call QQoffice.004060A0
00DC0FC9|. |75 27         jnz short QQoffice.00DC0FF2                        je掉不让跳转
00DC0FCB|. |8BCB          mov ecx,ebx


【制作模块】逆向点:
00DC11B3|. /75 45         jnz short QQoffice.00DC11FA
00DC11B5|. |8D55 FC       lea edx,
00DC11B8|. |B8 4412DC00   mov eax,QQoffice.00DC1244                ;HYLKRQL
00DC11BD|. |E8 362576FF   call QQoffice.005236F8
00DC11C2|. |8B55 FC       mov edx,
00DC11C5|. |A1 2026E000   mov eax,dword ptr ds:          ;,鬣
00DC11CA|. |8B00          mov eax,dword ptr ds:
00DC11CC|. |E8 CF4E64FF   call QQoffice.004060A0
00DC11D1|. |75 27         jnz short QQoffice.00DC11FA

【制作系统】逆向点:
00DC129B|. /75 45         jnz short QQoffice.00DC12E2
00DC129D|. |8D55 FC       lea edx,
00DC12A0|. |B8 2C13DC00   mov eax,QQoffice.00DC132C                ;HYLKRQL
00DC12A5|. |E8 4E2476FF   call QQoffice.005236F8
00DC12AA|. |8B55 FC       mov edx,
00DC12AD|. |A1 2026E000   mov eax,dword ptr ds:


关键的地方,也是让我着急的地方就是这里:

1.Server端也会检测注册信息,如果未注册一是不能备份帐套,另一个会限制连接站点数(默认只支持1个用户链接),Server端很简单,脱壳后直接搞定几个跳转就行了,但是我深度怀疑在Client注册的时候会在Server端进行验证(这点因为不知道如何下断无法验证,但是明确一点是该软件不是在线注册的);
2.在调试过程中,特别是在调试注册的时候软件会出现卡死,OD也会死掉,需要重新载入(我再次怀疑是Client与Server在通信完成注册),致使无法完整跟踪到注册码的本地生成过程;
3.就是该软件无论如何也找不到他的[未注册标题]位置,打死都改不掉,这点老气人了。


注册过程:
00BE0767|.E8 18B782FF   call 逆向强制.0040BE84
00BE076C|.8D4D E8       lea ecx,
00BE076F|.8B55 F8       mov edx,
00BE0772|.8B45 FC       mov eax,
00BE0775|.E8 F2C21C00   call 逆向强制.00DACA6C                     ;关键CALL
00BE077A|.84C0          test al,al
00BE077C|.75 0E         jnz short 逆向强制.00BE078C
00BE077E|.8B83 78030000 mov eax,dword ptr ds:


在这里发现将假码反转,后面的就卡死了:
005238B4|.83FB 01       cmp ebx,0x1
005238B7|.7C 20         jl short 逆向强制.005238D9                   ;将注册码反转
005238B9|>8D45 E8       /lea eax,
005238BC|.8B55 F8       |mov edx,
005238BF|.0FB6541A FF   |movzx edx,byte ptr ds:
005238C4|.E8 8725EEFF   |call 逆向强制.00405E50
005238C9|.8B55 E8       |mov edx,
005238CC|.8D45 F0       |lea eax,
005238CF|.E8 7026EEFF   |call 逆向强制.00405F44
005238D4|.4B            |dec ebx
005238D5|.85DB          |test ebx,ebx
005238D7|.^ 75 E0         \jnz short 逆向强制.005238B9
005238D9|>83FE 0C       cmp esi,0xC
005238DC|.7E 0C         jle short 逆向强制.005238EA

{:6_224:}{:6_224:}我知道我对不起祖国{:6_218:},对不起人民{:6_218:},更对不起大家{:6_218:},今天只有请大家来打脸了,细细的皮鞭抽我吧{:6_224:}{:6_224:}

只求大家给我指条活路:这货到底该怎么调试!!如何才能追到注册码,如果有些算法就更好了。。。




小久久 发表于 2017-11-10 21:41

来加油打气

332595 发表于 2017-11-11 08:58

说好的大神呢,说好的大牛呢,你们都过双11去了吗?

启迪 发表于 2017-11-11 10:29

大牛之在一念之间

52xiaoqiang 发表于 2017-11-11 18:28

扣代码 用汇编直接写注册码就行了!就这么难而已!

kanxue2018 发表于 2017-11-12 00:00


来加油打气{:7_236:}

ggxxuser 发表于 2017-11-12 19:29

我也无能为力,只能给你加油了

小陈 发表于 2017-11-12 21:26

加油{:7_231:}{:7_231:}

332595 发表于 2017-11-13 17:08

真没有人能我指下明路吗?子啊,把我带走吧。。。。。。。。。

老K 发表于 2017-11-20 03:17



来加油打气
页: [1]
查看完整版本: 怪我学艺不精,已经搞不出来了,恳请老师皮鞭招呼