首页
社区
课程
招聘
[旧帖] [原创]申请邀请码_一个菜软件的爆破 0.00雪花
发表于: 2011-3-24 19:28 1414

[旧帖] [原创]申请邀请码_一个菜软件的爆破 0.00雪花

2011-3-24 19:28
1414
上次写了篇 tmd老版本的脱壳,是根据老师的指点然后把学习脱壳过程写下来的,郁闷啊,没有人响应,估计是方法没有什么新意,为了发奋学习破解,下载了个‘至易资料收集4.0’软件,方便以后学习资料的整理以及做学习总结,哪知道这个软件还要注册收费,所以决定把它破了,以下是我的破解过程,希望能给刚开始学习破解的新手参考,如果有哪位大牛不幸走进来看了,也希望给些鼓励,扔砖头的,也请轻轻扔。
1.查壳,是delphi的程序,发现竟然没有壳,给我们这些菜鸟减轻负担,那咱肯定能干掉它,哈哈。
2.od载入,运行程序,用户名 admin,密码admin,登陆后,点击帮组菜单下的注册项,打开注册窗口,在窗口的 注册码处输入 1234567890
3.回到od窗口,下断 bpx GetWindowTextA,然后点击 ‘注册’按钮,提示注册码错误,再试 bpx GetDlgItemText也没有拦截下来,然后再试
Hmemcpy、lstrcpynA也没有成功,郁闷啊,delphi怎么取得text输入的值?还望大牛们指点下。不过既然是delphi的程序,那咱就用dede来看看
在窗口标签页 看到有一行是 TFrmReg,这个应该就是那个注册窗口了,接下来我们找按钮,
  object btnOK: TRzButton
    Left = 240
    Top = 326
    ModalResult = 1
    Anchors = [akRight, akBottom]
    Caption = 注册
    Enabled = False
    HotTrack = True
    TabOrder = 1
    OnClick = BtnOKClick
  end
这个就是那个注册 按钮 了,到过程标签页 选择行 regunt    TFrmReg,在事件标签页 找到 BtnOKClick  005E5CE8 ,这里就是那个注册按钮入口地址了。
4.回到od窗口,按 ctrl+g  在弹出的窗口输入 005E5CE8 ,od代码定位到这里,这里便是点击 ‘注册’按钮的事件代码入口了,在005E5CE8  f2 断
005E5CE8   .  55            push ebp
005E5CE9   .  8BEC          mov ebp,esp
005E5CEB   .  33C9          xor ecx,ecx
005E5CED   .  51            push ecx
005E5CEE   .  51            push ecx
005E5CEF   .  51            push ecx
005E5CF0   .  51            push ecx
005E5CF1   .  51            push ecx
005E5CF2   .  53            push ebx
005E5CF3   .  56            push esi
005E5CF4   .  57            push edi
005E5CF5   .  8945 FC       mov dword ptr ss:[ebp-4],eax

在注册窗口 输入假注册码 1234567890 ,然后点击 ‘注册’在 005E5CE8 断下,然后单步

005E5CFB   .  68 A65E5E00   push yxhy.005E5EA6
005E5D00   .  64:FF30       push dword ptr fs:[eax]
005E5D03   .  64:8920       mov dword ptr fs:[eax],esp
005E5D06   .  8B45 FC       mov eax,dword ptr ss:[ebp-4]
005E5D09   .  C680 1C030000>mov byte ptr ds:[eax+31C],0
005E5D10   .  8D55 EC       lea edx,dword ptr ss:[ebp-14]
005E5D13   .  8B45 FC       mov eax,dword ptr ss:[ebp-4]
005E5D16   .  8B80 14030000 mov eax,dword ptr ds:[eax+314]
005E5D1C   .  E8 77F0F6FF   call yxhy.00554D98
005E5D21   .  8B55 EC       mov edx,dword ptr ss:[ebp-14]   
这里看到堆栈显示刚才输入的假注册码了
堆栈 ss:[0012F7E8]=00C30B2C, (ASCII "1234567890")
edx=00000000

005E5D24   .  A1 94EF6000   mov eax,dword ptr ds:[60EF94]
005E5D29   .  8B00          mov eax,dword ptr ds:[eax]      
继续单步到上面代码的005E5D29 堆栈显示如下
ds:[00611D74]=00C16E1C, (ASCII "DB53A3AF1D1E5F162973")
eax=00611D74 (yxhy.00611D74) ,嘿嘿这里就是真的注册码了

005E5D2B   .  E8 34EAE1FF   call yxhy.00404764               
//跟进  发现这里是 比较注册码,不用管他,当然如果你要研究它的算法,那就要跟下 00C16E1C,看下这个值是怎么来的,
没有必要,因为在这里也可以做内存注册机了
005E5D30   .  74 1C         je short yxhy.005E5D4E
005E5D32   .  8B45 FC       mov eax,dword ptr ss:[ebp-4]
005E5D35   .  C780 4C020000>mov dword ptr ds:[eax+24C],1
005E5D3F   .  B8 BC5E5E00   mov eax,yxhy.005E5EBC
005E5D44   .  E8 97B8EEFF   call yxhy.004D15E0
在上面的call 提示注册码错误
005E5D49   .  E9 35010000   jmp yxhy.005E5E83
005E5D4E   >  B9 E05E5E00   mov ecx,yxhy.005E5EE0                    ;  ASCII "Win.ini"

不研究那么投入了,先试试看能否注册成功吧,取消断点,把真注册码 DB53A3AF1D1E5F162973 拷贝到注册码输入框点击‘注册’按钮,提示
‘注册成功,您可以继续使用本软件了,谢谢您的注册!  ’,可爱的提示出来了,大功告成。

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
免费 0
支持
分享
最新回复 (12)
雪    币: 210
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
呵呵,可以了,要是分析下算法,可能机会会大点
2011-3-24 20:33
0
雪    币: 205
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
厉害,有这个水平已经很不容易了
2011-3-24 20:48
0
雪    币: 146
活跃值: (18)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
非常感谢,你们的鼓励给了我无限的力量,努力再努力
2011-3-24 21:48
0
雪    币: 122
活跃值: (46)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
5
谢谢楼主的努力。你很快就会有譤请码了。
2011-3-26 00:12
0
雪    币: 31
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
这样下去很快你就会有邀请码了!
2011-3-26 10:49
0
雪    币: 75
活跃值: (30)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
支持你一下     慢慢的 我也要学点破解方面的知识了  呵呵
2011-3-27 12:08
0
雪    币: 167
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
把源程序贴上来吧
2011-3-27 12:15
0
雪    币: 365
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
楼主的确是原创啊!
2011-3-28 08:26
0
雪    币: 1
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
楼主很不错哦
2011-3-28 08:46
0
雪    币: 365
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
有点小问题,楼主为什么不用直接查找字符串的方式去破解了?这样子不会快很多吗?
2011-3-28 09:03
0
雪    币: 777
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
我下载了一个下来,还在学汇编用的时候来参考lZ的帖子
2011-3-28 15:18
0
雪    币: 10
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
楼主讲解的很透彻啊,支持一下
2011-3-28 15:30
0
游客
登录 | 注册 方可回帖
返回
//