大学生
 
- 金币
- 305
- 好评
- 2
- 信誉
- 100
|
本帖最后由 驰放 于 2026-6-4 06:54 编辑
搞了几个flutter混淆的app,终于成功了一个,还一个半成品ui解锁,但功能是服务器。下面分享一下思路,大神们可以用这个工具自己去测试。成功的是一个学外语的ai工具Learna AI,只分享思路和方法,因为这种app太难了,逻辑结构大都比较复杂,这个成功的算是运气只一个引用函数,有的app引用函数超多,打印出来代码又一长,所以只讲思路,具体操作大家再去各显神通。
本只想分想思路的,看有朋友回复说第五步看不明白了,可能是没怎么用过radare2,己补充命令详细解释。
主要用到四个工具,Termux,pptool,blutter,radare2
第一步在Termux中运行blutter得到pp.txt(此步也可用un管理器查看对象池代替)后找到重要判断会员或功能权限的字符串,以我成功的这个app为例是[pp+0x28858] String: "is_premium"一定要注意下面这个
[pp+0x28860] String: "isPremium"实际不是真正的判断,搞了些国外app发现一般带下划线的才是真判断。
第二步,终端安装pptool工具,安装方法如下
1.将pptool-2.0-py3-none-any.whl和pptool2.0.zip复制到cd /storage/emulated/0/MT2/apks目录
2输入cd后再输入
cd /storage/emulated/0/MT2/apks
3.安装pptool工具,输入pip install --user pptool-2.0-py3-none-any.whl
pptool工具的作用就是通过先查到的字符串来找到调用他的函数,再用radare2分析和修改
libapp.so
第三步.运行终端安装radare2,
输入pkg install radare2
第四步,用pptool工具查调用函数
pptool libapp.so 0x28858
第五步找到调用函数0x69ee28,将libapp.so复制到/storage/emulated/0/MT2/apks目录,再运行radare2分析libapp.so,打印这个函数找到判断,然后更改代码,以前大多是add x16,x22,0x30这种30改20,但现在大多是多重判断逻辑,比如这个app就是tbnz(0x0069ef00 60002037 tbnz w0, 4, 0x69ef0c)和tbz (0x0069ee88 60000036 tbz w0, 0, 0x69ee94)找到后直接nop
以上Termux终端操作具体命令如下(省略pptool和radare2的安装命令。安装完后关掉Termux,重打开Termux后,按以下命令执行)。
1.进入libapp.so所在目录
cd /storage/emulated/0/MT2/apks
2.运行pptool工具查找[pp+0x28858] String: "is_premium"的引用函数,输入
pptool libapp.so 0x28858后会显示函数地址
FUNCTION OBJECT OFFSET
0x69ee28 0x69ee70 0x48
add x2, x27, 0x28, lsl 12
ldr x2, [x2, 0x858]
62 A3 40 91 42 2C 44 F9
0x69ee28就是函数地址
3.启动radare2分析libapp.so
r2 -w libapp.so
4.输入找到的函数地址
0x69ee28
5.分析函数
af
6.打印函数前150行代码
pd 150
7.在打印的代码中会看到第一个判断地址
0x0069ee88 60000036 tbz w0, 0, 0x69ee94后输入
0x0069ee88
8.打印一行代码
pd 1
9.修改代码为nop直接跳过判断
wa nop
10.修改第二个判断0x0069ef00 60002037 tbnz w0, 4, 0x69ef0c输入地圵
0x0069ef00
11.打印一行代码
pd 1
12.修改代码为nop直接跳过判断
wa nop
终端命令执行完了进第六步。
第六步将修改的libapp.so覆盖原包里的文件
后重装即可
pptool工具和学外语app下载
由于前面发的去谷歌加固帖子编辑不了,有朋友反应链接失效了,顺便在这更新下链接
去谷歌加固视频教程及工具下载
|
|