一个安卓锁机软件的逆向分析
前两天在吾爱上看到有人求助手机被锁,顺手吧样本下载了,分析下。
样本桌面是一个百度网盘的图标
这像素一看就是假的。。。
打开后是个root锁机,这里还是提醒各位没事不要随便开root权限,这都2021年了,还有这种垃圾软件,也是服了!
直接jeb
启动后看到这变量名是真恶心啊!!!
发现MainActivity中只调用了一个hh
第一个页面
这里发现第一个页面是第四层函数
这里主要是q()中是个文字编码,提取出来,把这两行解密下。
这里有一行解码后发现是一个网站,猜测可能是访问网站返回解码
100000005线程处跟进
本质是做了一个判断,继续跟进isINTERET()
这里发现9160,尝试下,对了
然后进入第二个页面
(还是多重锁机骗钱,可以很骚,很傻逼)
第二个页面
第二层是第五层的函数
跟进100000008
点击屏幕30次会出现两个控件
然后跟进100000009
这里try里边先做了一个字符编码,直接把m这个函数摘下来稍作修改
解码后是9,5,10
然后通过这三个数做了运算
同样吧加密摘下来
这个加密处理处v0.val$test 是界面给的序列号
这个序列号是通过取随机数然后通过m下的方法处理后的(这个软件变量方法名太恶心了,就在第五层的倒数第三行)
还是老办法,把这个函数取出来处理下
把v1,v2 的值交换下就可以了
转第二层锁
第三个页面
这个和上一个差不多做法就不细说了
把改过的函数挂出来吧(这里边函数或者变量名是修改过的,后边会把整个项目脚本放上来,可以看那个)
解出来后跳到第四个页面
第四个页面
第三层函数
和上边也是差不多
继续改函数
这里要注意 粉红兔 这个实例在创建的时候传了个 fuck参数(当时找了好久,好烦呀)
搞定,下一层下一层
第五个页面
第一层函数,看起来也差不多
看第四个页面,不过这里又个迷惑人的点
随机码多了一个b,解码时删掉这个解就好
总结
没有什么特别奇怪的算法,都是大差不差,刚去看了下吾爱,好像有师傅提前解出来了
网站也是被挺多人留言了
分析的时候去找过那个qq群,好像还在运行,这种人就挺可恶的
拿技术做坏事,为人所不齿
脚本因为是分析的时候写的,乱得很,这里先放上来
https://gitee.com/p1piyang/backward-analysis/tree/master
累死了!!!