某销售小票打印专家破解过程
本帖最后由 hahacker 于 2016-8-22 15:33 编辑原版软件下载地址:http://www.stonesw.cn/download.htm
1 分析软件
运行这个软件,先看看软件是什么注册方式的,可以看到,这里面是通过keyfile验证方式来注册的。
那么好了,先建立一个任意用户名的pkey文件,里面写入内容,那么这个keyfile的内容格式是什么样的呢?
2 keyfile内容格式
先下CreateFileA断点来读取文件,断下返回到用户代码:
接着F8向下走,可以看到:好多读取每一行内容的函数,,这里面一共有6个readstring,
说明keyfile内容格式是分行的。那就建立6行、
3找爆破点
这里一处跳转是跳到失败处的,可以看到这里是机器码和第二行的1234567890对比,是否相等。
所以可以确定第二行是机器码。所以把52pojie.pkey的内容的第二行改为软件对应的机器码就可以了。。图中为本机的机器码。
4 最终修改点
上面的搞定后,就会发现现在只有一处是验证跳过处了。那么这个跳转上面的CALL就是关键验证CALL了。
F7跟进可以看到这里面有验证keyFile的内容部分了,而这里面有两处调用了这个CALL
可以猜想出来,这里有一个调用一定是重启后调用的,不用管它,直接在开关返回1就OK了。
5 大功告成
好了,都搞定了,重启打开软件。成功注册。
6 写到最后
在这个算法CALL里,我跟了,结果跟着跟着,就跟晕了,算法没有搞定,所以,,请论坛的高手们有时间了具体分析下这个算法。感谢。
这个网站的软件的注册流程大致是一样的,按照楼主的提示我用的是F12暂停法,改了几处跳转,也实现了注册成功
cqr2287 发表于 2016-8-22 15:41
为什么一定要先确定注册文件有几行,把前面的判断全都干掉不就不用担心注册文件的行数了么?
分析过程很重要。 哎呦喂不错不错啊啊啊 为什么一定要先确定注册文件有几行,把前面的判断全都干掉不就不用担心注册文件的行数了么? 这个不错啊 lili2312280 发表于 2016-8-22 15:31
哎呦喂不错不错啊啊啊
看了楼主的大部分回复内容,都是这样的,建议不要做无意义的灌水回复。 hahacker 发表于 2016-8-22 15:55
分析过程很重要。
人家才12岁{:1_934:} ChongHom-Hu 发表于 2016-8-22 16:15
人家才12岁
膜拜未来的超级大牛。超级赛亚人附体。 谢谢分享不错哦! 我看到“出错了”上面有个JNZ,直接让它跳过去不知道能不能实现注册成功?