目录

Flex屏蔽越狱检测

越狱iOS必备神器Flex使用指南-屏蔽越狱检测的破解利器

什么是Flex?

​ Flex是越狱iOS上Cydia商店里的一个插件,看似普通的插件,却有着强大的动态修改手机APP运行逻辑的功能,就像Android系统中的Xposed一样,通过制作编写、配置一个Flex的小插件,可以动态修改越狱iOS上APP运行时的执行代码逻辑。

​ 但Flex的插件制作要比Xposed的插件制作更为简单。

​ Xposed插件的编写需要在外部对APK进行反编译破解,甚至脱壳,打开AndroidStudio等开发软件进行代码编写,生成插件apk安装在手机上,在Xposed框架中激活,重启手机后方可生效。

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/194bc2f8bcb6c1c32e20741fc0d2924e-20220510220619500.png

​ 而Flex插件的编写,说是编写,其实说配置更准确。Flex支持直接对Mach-o进行反编译,得到Object-C源码头文件,让用户直接选中要hook的类和方法名,配置篡改某个方法传入的参数和固定方法的返回值,从而达到修改APP执行逻辑的目的。使其生效的话,只需打开开关,重启APP即可生效。

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/9bd14fec2daa62affa039d3fc85bc7e9.png

安装Flex

添加官方源:http://getdelta.co/安装Flex3即可。

我安装的是雷锋源的Flex 3 b92版本,机器是iPhoneXr,12.4.1

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/53066baed667b99f05e16090af8b35cd.png

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/fffa0aa299f803e93b300d5680ebcc80-20220510220610108.png

Flex功能模板说明

主要看下图说明:

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/5d6bbf931a9a51138a372f9bcd8a8c2d-20220510220604996.png

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/ad0d35c01d93bdaa97356f10746969b3.png

在个人中心的账号中,有免费账号和付费账号,免费账号的限制是每天只能下载2个云端的插件,分享一个别人的共享账号:sundasheng521@qq.com 7758521a 没有功能限制:

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/80476218eeee872f408a50b32e4d2dd0.png

插件制作教程

​ 以“中国建设银行”为例,屏蔽其越狱检测。建行在越狱的手机上会安全提示,且点击按钮之后退出APP:

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/2ce22c6de50301c2499ea779c4c1f2e0-20220510220556072.png

打开Flex,点击右上角的“+”,选中建设银行,来到界面:

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/f7323dc50d1c82ee90cef73ae6e3b1ab.png

点击“Add Units”,来到建设的执行程序列表:

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/d7f3b4ec40ffd91bb5d6ee508dfced56-20220510220549316.png

这里,我们选择主程序,点击之后,会有Processing字眼,是Flex对Mach-o进行dump源码头的处理,完成之后,最右边出现“>”,我们再点击就来到了类和函数的区域:

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/06744fa0db72e99619d0caed092c0d4f-20220510220544240.png

通过分析建行对越狱的检测特征:弹窗提示+点击退出。那我们就尝试搜索“退出”:exitApp:

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/603e071ff3d456aa907a0cfdb667e38d.png

选中之后,返回到原来的页面:

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/af9545cf10a5682913439f0aad890af1-20220510220537290.png

点击进去查看编辑:

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/791753b0d1774bc141f92154eea93a60.png

2个方法的分析是一样的,也就说只要我们将这2个方法的Return设置为pass-through跳过不执行,建设银行就会在用户点击按钮的时候,不发生退出操作:

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/56429eb80abef8867357b7dc7102f61b-20220510220530718.png

Flex对于函数的传参和返回类型

目前Flex仅仅支持对Object-C类型的类和函数进行动态修改,支持编辑的具体类型有NSString(输入一个字符串,比如提示语、界面语等)、

NSNumer(一个数字,比如金币数、钻石数等)、

NSDate(日期,比如VIP到期日期等)、

UIColor(颜色,选择颜色等)、

Bool(TRUE/FALSE,是否为VIP等)

Id(泛型,可以自定义类型)

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/859c32cee1d154a5dfeca02b7a9c4acf.png

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/9d61894ea2e2c08796636e53b1bbcea1-20220510220523396.png

https://cdn.jsdelivr.net/gh/xinqinew/pic@main/img/6359ee04c20d61a6bf5a7cf0f5784c68-20220510220518790.png

怎么快速定位要修改的函数

A.通过抓包分析,精准定位需要修改的请求参数的值:

https://www.52pojie.cn/forum.php?mod=viewthread&tid=1174501

https://www.52pojie.cn/forum.php?mod=viewthread&tid=1004614

B.借助前人经验,通过通用的修改方法得到自己的破解需求:

https://www.52pojie.cn/forum.php?mod=viewthread&tid=999009

https://www.52pojie.cn/forum.php?mod=viewthread&tid=1401213

C.通过中英文对照,模糊搜索可能需要修改的地方,比如:

屏蔽越狱检测:jailbroken root cydia 等

屏蔽退出:exit quit illegal等

解锁:lock

水印:water

是否购买/vip:vip buy pay等。

相关的博文:

https://www.52pojie.cn/forum.php?mod=viewthread&tid=1092971

https://www.52pojie.cn/forum.php?mod=viewthread&tid=1003260

https://www.52pojie.cn/forum.php?mod=viewthread&tid=615555

D.进阶精准溯源法,通过高阶的分析,比如IDA、Hopper、FlexTool等精准分析出要修改的函数,进而进行hook:

https://www.52pojie.cn/thread-1174141-1-1.html

https://mp.weixin.qq.com/s/OVgfyY0jgRSZKfAKxCGxfg

END

往期推荐:

值得收藏 |解决99%的手机APP抓包问题 涵盖安卓/iOS客户端

打造属于自己的Android破解脱壳机,其实只需100块

爬取 58 同城房产数据,犯非法获取计算机信息系统数据罪:3 人被判

一款轻便小巧的网络验证的安装及快速购买阿里云教程| 造福小白

看我如何一步步干掉盗取通讯录+盗摄的裸聊App |渗透技术

欢迎关注微信公众号:『掌玩小子』讨论更多技术:
https://img-blog.csdnimg.cn/20200528222149342.png