jack_lin 发表于 2016-8-4 13:56

xx仓库管理软件(单机版) 3.96暴力破解方法

本帖最后由 小生我怕怕 于 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:                        ;hfp
006D7AB9   .8B00          mov eax,dword ptr ds:
006D7ABB   .80B8 7A060000>cmp byte ptr ds:,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:


记得老师说过,这种程序破解的方法很多都和EAX有关,所以我们可以确认这个就是程序的关键部分。我们来下2个断点,重载一下,运行起来。
走到006D7ABB   .80B8 7A060000>cmp byte ptr ds:,0x0这一句,

按一下在数据窗口跟随地址,看到01067B8A01 00 00 00             这个时候一定要在数据窗口往上拉一下,看到还有01067B7A00 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:,al

然后看一下,判断语句
006D7AB4      A1 3C3F7000   mov eax,dword ptr ds:                        ;hfp
006D7AB9   .8B00          mov eax,dword ptr ds:
006D7ABB   .80B8 7A060000>cmp byte ptr ds:,0x0

我就来修改一下把006D7AB9汇编成jmp 006FBA98,然后在006FBA98改成 mov eax,dword ptr ds:
下一句汇编成mov eax,dword ptr ds:,因为我们要把01067B8A 01067B89 01067B88地址的值改成0,
所以下面3句为mov byte ptr ds:,0x0,mov byte ptr ds:,0x0,mov byte ptr ds:,0x0,然后jmp回006D7ABB


完整代码:
006FBA98    A1 3C3F7000   mov eax,dword ptr ds:
006FBA9D    8B00            mov eax,dword ptr ds:
006FBA9F    C680 7A060000 0>mov byte ptr ds:,0x0
006FBAA6    C680 79060000 0>mov byte ptr ds:,0x0
006FBAAD    C680 78060000 0>mov byte ptr ds:,0x0
006FBAB4^ E9 02C0FDFF   jmp xx.006D7ABB


然后我们保存一下,运行一下发现可以了



好了,暴力破解完毕。
传送们:
程序安装包:http://pan.baidu.com/s/1pKC6NOn 密码: 8jzb


jack_lin 发表于 2017-3-12 20:30

拎壺沖 发表于 2016-8-4 14:57

rainisa 发表于 2016-8-4 14:31
感谢分享,不过版本有点低啊,现在都是6.2X了。

这位仁兄,能否分享一下您用的这个高版本?不胜感激

hack-小刚 发表于 2016-8-4 14:07

支持楼主    顶起

Ademi 发表于 2016-8-4 14:13

支持楼主,感谢分享经验

8761611 发表于 2016-8-4 14:17

楼主支持你,慢慢学习练习

Sound 发表于 2016-8-4 14:24

        欢迎分析讨论交流,吾爱破解论坛有你更精彩!

rainisa 发表于 2016-8-4 14:31

感谢分享,不过版本有点低啊,现在都是6.2X了。

maikfxx 发表于 2016-8-4 14:43

高人出手,又一个好教程.学习
走起

2016.7.21 发表于 2016-8-4 14:45

谢谢分享

SourceWater 发表于 2016-8-4 14:56

谢谢了,很好的教程啊,学习了挺多的
页: [1] 2 3 4 5
查看完整版本: xx仓库管理软件(单机版) 3.96暴力破解方法