好友
阅读权限10
听众
最后登录1970-1-1
|
本帖最后由 小生我怕怕 于 2019-6-7 00:15 编辑
昨天我用了一种很不明确的方法获得了xx仓库管理软件(单机版) 3.96的注册码,但内心觉得要暴力破解才好玩,所以我就重新翻看了小生我怕怕的教学视频,找到了问题的关键。今天就重新又发一次。
首先,里诺仓库管理软件(单机版) 3.96是无壳的,用OD载入程序,点击一下运行,再点击一下注册按钮,看到:
首先,我们来认识一下机器码注册机制的方法:但凡有机器码的程序或者绑机的程序,都离不开获取硬件特征。
搜索获取硬件特征的常用方法:和应用程序一个目录下的模块就是我们程序所载入的绑机器,也可以说是程序所调用的
此程序有2个调用模块C:\里诺仓库管理软件396\HDSerial.dll和C:\里诺仓库管理软件396\NT77.dll
第二个是监听加密狗的
第一个就是获取硬件特征,因为\\.\Scsi%d:和\\.\PhysicalDrive%d和SCSIDISK一定就是获取硬件特征(在点击此模块再查找字符串可以找到)
\\.\PhysicalDrive%d尤其注意这一句;
然后点击进去这一句后在他的段首下一个断点
然后重载一次OD,运行起来(断点可能要重新激活一下,看你的OD提示。),进入到段首
你觉得不麻烦的话就单步F8跟一下,麻烦的话就
在段尾retn按一下F4,来到这里
然后我们就再单步F8跟出去,来到
看到name和pass,确认我们来到程序的主体,往上拉一下,看到
006D7AA7 . E8 3859D7FF call Depot.0044D3E4
006D7AAC . 84C0 test al,al
006D7AAE . 0F84 CC000000 je Depot.006D7B80 /////////下一个断点
006D7AB4 A1 3C3F7000 mov eax,dword ptr ds:[0x703F3C] ; hfp
006D7AB9 . 8B00 mov eax,dword ptr ds:[eax]
006D7ABB . 80B8 7A060000>cmp byte ptr ds:[eax+0x67A],0x0
006D7AC2 . 74 30 je short Depot.006D7AF4 //这个就是关键跳,下一个断点
006D7AC4 . E8 93FAFFFF call <jmp.&HDSerial.HDSerialNumRead>
006D7AC9 . 8BD0 mov edx,eax
006D7ACB . 8D45 CC lea eax,dword ptr ss:[ebp-0x34]
记得老师说过,这种程序破解的方法很多都和EAX有关,所以我们可以确认这个就是程序的关键部分。我们来下2个断点,重载一下,运行起来。
走到006D7ABB . 80B8 7A060000>cmp byte ptr ds:[eax+0x67A],0x0这一句,
按一下在数据窗口跟随地址,看到01067B8A 01 00 00 00 这个时候一定要在数据窗口往上拉一下,看到还有01067B7A 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 01
我们来质疑一下在周围的数据都为0,这3个数据被赋值为1了,里面一定有阴毛。
我们就试着把他们的数据修改为00,运行起来,发现程序被破解了,所以断定我们的想法是正确的。
这个时候,因为我的技术不过关,所以教学视频中,老师说的没听懂,但我们可以有自己的方法,反正是新手,所以没什么负担。
首先,我们找一段空的二进制的字符串,
记一下这个地址:006FBA98 0000 add byte ptr ds:[eax],al
然后看一下,判断语句
006D7AB4 A1 3C3F7000 mov eax,dword ptr ds:[0x703F3C] ; hfp
006D7AB9 . 8B00 mov eax,dword ptr ds:[eax]
006D7ABB . 80B8 7A060000>cmp byte ptr ds:[eax+0x67A],0x0
我就来修改一下把006D7AB9汇编成jmp 006FBA98,然后在006FBA98改成 mov eax,dword ptr ds:[0x703F3C]
下一句汇编成mov eax,dword ptr ds:[eax],因为我们要把01067B8A 01067B89 01067B88地址的值改成0,
所以下面3句为mov byte ptr ds:[eax+0x67A],0x0,mov byte ptr ds:[eax+0x679],0x0,mov byte ptr ds:[eax+0x678],0x0,然后jmp回006D7ABB
完整代码:
006FBA98 A1 3C3F7000 mov eax,dword ptr ds:[0x703F3C]
006FBA9D 8B00 mov eax,dword ptr ds:[eax]
006FBA9F C680 7A060000 0>mov byte ptr ds:[eax+0x67A],0x0
006FBAA6 C680 79060000 0>mov byte ptr ds:[eax+0x679],0x0
006FBAAD C680 78060000 0>mov byte ptr ds:[eax+0x678],0x0
006FBAB4 ^ E9 02C0FDFF jmp xx.006D7ABB
然后我们保存一下,运行一下发现可以了
好了,暴力破解完毕。
传送们:
程序安装包:http://pan.baidu.com/s/1pKC6NOn 密码: 8jzb
|
免费评分
-
查看全部评分
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|