【移动安全实战篇】————2、破解AD Blocker Trial注册算法

【文章标题】: 【原创】AD Blocker Trial 注册算法
【下载地址】: http://as.baidu.com/a/item?docid=150568&pre=web_am_se
【操作平台】: Ubuntu11.10
【使用工具】: Apktool v1.4.3 , dex2jar-0.0.9.9,  jd-gui-0.3.3
【作者邮箱】:  iltgcl@163.com
【作者声明】: 仅作为研究交流使用。
【软件名称】: 英文名: AD Blocker Trial  中文名:广告拦截器及净触发器的审判。
【破解过程】
先安装程序,启动以后,点击弹出菜单Buy 选项,进入到注册界面。发现程序已经给出了我的Product Code:44173112,  输入试练码:12345678,程序弹出对话框表示出错了。

好了,基本信息搜集完了。使用dex2jar反编译,然后用jd-gui打开,太好了,代码尽然没有混淆,省了不少麻烦。虽然这个程序的算法非常简单,但我还是尽量详细的将分析过程写下来。
首先需要找到注册界面。从前面信息搜集过程中知道是在弹出菜单中点击Buy选项出现的注册界面,找到如下代码片段

由于反编译不太可能与原码一样,所以上面这段代码流程比较乱。通常这种情况需要通过smali文件来仔细分析,
不过这里你可以试着猜猜看,我反正一眼就看到了showDonateDialog() 。

我们知道,点击OK会进行注册判断,继续进入ADBlocker.3看看

哦,点击后会调用ADBlocker.access$3(...),我输入的试炼码会作为参数。比较讨厌的是access$3是什么意思呢?
当在JAVA内部类中调用外部类的私有方法时,编译器会自动合成一个静态函数。好了,使用Apktool工具反编译吧,然后打开

仅仅调用了reg函数而已。

看到这里,聪明的你一定知道RegUtil.check就是关键比较点了!只要返回true就可以了。

看后面那个check函数
paramString1 :Product Code(模拟器上就是44173112)
paramString2:试炼码
显然只要genKey函数返回值等于试炼码就可以了,注意genKey函数的参数就是ProductCode,那么来看看该函数吧

我靠,这么简单!用白话来说就是将ProductCode分成两个部分:l2 = 前4位,l3 = 后4位
试炼码应该等于(l2 + l3) * (l2 * l3)
那么对于44173112来说,注册码=((4417+3112)*(4417*3112)) = 103491405416

转自:https://bbs.pediy.com/thread-154770.htm

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Windows Update Blocker是一款用于阻止Windows操作系统自动更新的工具。它可以帮助用户控制Windows更新的时间和方式,以避免在不方便的时候进行系统更新。通过使用Windows Update Blocker,用户可以暂时或永久地禁用Windows更新服务,从而保持系统的稳定性和一致性。 Windows Update Blocker的主要功能包括: 1. 禁用Windows更新服务:它可以停止Windows Update服务,阻止系统自动下载和安装更新。 2. 恢复Windows更新服务:用户可以随时启用Windows Update服务,以便手动检查和安装更新。 3. 永久禁用Windows更新:除了临时禁用Windows更新服务外,Windows Update Blocker还提供了永久禁用的选项,以防止系统自动更新。 使用Windows Update Blocker可以带来一些好处,例如: 1. 避免不必要的系统更新:有时候,系统更新可能会导致不兼容或不稳定的问题。通过禁用自动更新,用户可以选择在确保稳定性的情况下手动安装更新。 2. 节省带宽和时间:系统更新通常需要下载大量的数据,这可能会占用用户的带宽和时间。通过控制更新的时间和方式,用户可以更好地管理网络资源和时间。 3. 防止意外重启:有时候,系统更新可能需要重新启动计算机,这可能会中断用户的工作。通过禁用自动更新,用户可以避免意外的重启。 然而,需要注意的是,禁用Windows更新可能会导致系统安全性和稳定性方面的问题。因此,在使用Windows Update Blocker之前,请确保您有足够的安全措施,并定期手动检查和安装重要的系统更新。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值