XXX文件搜索软件的一个算法分析
本帖最后由 姐又寡闻了 于 2019-6-6 22:35 编辑根据 http://www.52pojie.cn/thread-595258-1-1.html 作者ZF0806https://attach.52pojie.cn/common/ec/common_3_verify_icon.png https://attach.52pojie.cn/common/a8/common_4_verify_icon.png,在次贴中,作者仅仅只是搞了爆破,下面我对该软件的算法进行以下分析
首先也是载入OD,通过OD智能搜索,查找
然后在该处
下断点,开始运行软件随机输入注册码
点击注册,就会断到上图红箭头处,然后开始单步执行,对每个过程进行分析,其中
这里每一句都是关键点,这里每个跳转都调到注册失败的CALL,那么全都NOP肯定就注册成功了,但是,我现在不修改软件,只对每一个比较进行详细分析,如下
004050D1 .807C24 0C 41cmp byte ptr ss:,0x41
004050D6 .0F85 13010000 jnz 文件搜索.004051EF
这里不跳转,那么esp+0xC对应的数据必须要等于0x41
004050DC .8A4424 0D mov al,byte ptr ss:
004050E0 .3C 41 cmp al,0x41
004050E2 .0F8D 07010000 jge 文件搜索.004051EF
这里不跳转,那么esp+0xD对应的数据必须要小于0x41
004050E8 .8A4C24 0E mov cl,byte ptr ss:
004050EC .3AC1 cmp al,cl
004050EE .0F8D FB000000 jge 文件搜索.004051EF
这里不跳转,那么esp+0xD对应的数据必须要小于esp+0xE
004050F4 .3A4C24 0F cmp cl,byte ptr ss:
004050F8 .0F8E F1000000 jle 文件搜索.004051EF
这里不跳转,那么esp+0xE对应的数据必须要大于esp+0xF
只有满足上述4种情况才能实现注册成功
其实上述4个地址,通过OD分析,你会发现,这4个跳转其实就是对你的注册码的前4位的一个分析比较。总结就会发现,注册码第一位必须是A,第二位只要比0X41(对应ASC码为A)小即可,第三位大于第二位,第四位小于第三位,只要你按照这个方法随便输入都能注册成功,今天的算法分析就到这里,高手请飘过,我也只是一个初级菜鸟,请大家多多指教。 另外,补充一点,就是该软件会在C盘,生成一个135.txt的文件,该文件主要用于识别是否注册。 喜欢分享破解经过的文章 感谢分享~~~~~~~~~~~ 感谢分享。。。。。。。。。 觉得楼主这一分析真的是精华啊! 吃经验卡 羡慕会算法的高手 不错,支持。 在那个如此好用的软件还是值得大家学习。
页:
[1]
2