IOS应用逆向之Flex调试工具【进阶篇】
上一篇教程,简单的介绍了,如何使用Flex工具和Flex 3去除APP启动广告,本期将介绍如何强制解锁APP付费功能。
本期教程针对APP:南瓜影视
一、软件介绍
南瓜影视是一款影视资源齐全的影视播放器,其中聚合了海量高清电影、电视剧、综艺、动漫、韩剧、日剧、泰剧、等各种类型的影视节目,并涵盖了各大视频平台的海量影视资源,同时南瓜影视还为用户提供了视频预加载及播放页性能提升,即开即播,轻松为用户打造更好的影视体验。
南瓜影视主要特点:
- 简单易用:打开软件即可随意观看。
- 精选推荐:实时推荐最新最热影视大片。
- 分类筛选:依照个人喜好快速筛选视频。
- 快捷搜索:快速查找全网视频。
- 海量资源:各大视频平台的热门剧集应有尽有。
- 支持切换分辨率、倍速播放。
- 缓存和投屏功能需要开通会员。
由于南瓜影视是伪装上架App Store,所以本次教程所下载的南瓜影视APP名为历史天天听。
二、教程开始
首先,先打开南瓜影视APP,无需登录账户,由于是伪装上架,首次使用南瓜影视,可能需要退出后台重新打开,就可以加载影视界面了(新用户会赠送一天会员体验,无视即可)
上篇教程已经讲过如何使用Flex 3制作补丁,本篇教程就不在叙述了,直接开始搜索函数,由于会员功能是用户功能,所以我们可以联想到UserModel和VIP,直接在函数中搜索看看,效果如下图所示:
我们来仔细看下这几个函数,-(bool) isVip、-(long long) vipType、-(void) setVipInfo:(id)、-(void) setVipTime:(id)、-(void) setUserName:(id),相信对英文比较精通的小伙伴已经翻译出这些函数的意义了,它们分别是:是否VIP、VIP类型、设置VIP信息、设置VIP时间、设置用户名字,全部勾选这些函数。
分别去修改上述函数的返回值,具体函数修改和修改后的成功如下图所示:
至此,南瓜视频强制开启会员功能已经成功,其中除-(bool) isVip是必备函数外,其他函数都可以删除,只是辅助函数而已,或者说为装逼函数,哈哈!!
或许有很多小伙伴会疑问,为啥是UserModel这个函数,对此我只能说,IOS 99.9%的APP都是基于mvc风格,m是Model,数据模型,v是View,也就是我们所说的前端,c是Control即是控制器。
一般功能相关函数,基本都在Model中,当然也不是绝对,只能慢慢的熟能生巧,此种方法只适用于一般简单APP,更为复杂的APP需要调试进行分析,比较费时,这里就不做介绍。
简单的APP破解的唯一捷径,就是学好英语,这里分享一些我做补丁中收集的一些常用函数,希望对大家后续的学习有所帮助。
一、广告Ad的View/Controller方法、类名:
setAdview广告视图
setAdsview广告视图
AdModel广告模型(iOS的MVC结构中model构成应用程序的核心,此方法可以去除大部分APP广告)
setAdmodel广告模型(iOS的MVC结构中model构成应用程序的核心,此方法可以去除大部分APP广告)
setAdsmodel广告模型
layoutSubviews广告布局
splash启动广告
setSplashView启动广告
setAdSplash启动广告
setupUI广告视图
showAdView广告视图
Adshow广告视图
showAd广告视图
LaunchAd启动广告
Advertise广告视图
videoAd视频广告
二、功能的Controller/Model方法、类名:
Recall撤回
RevokeMsg撤回
SpeedLimit限速
DownloadSpeed下载速度
jailbreak越狱检测
jailbroken越狱检测
User用户,一般这里控制用户权限,比如是否享有特权
UserModel用户模型,一般这里控制用户权限,比如是否享有特权
UserInfo用户信息,一般这里控制用户等级,权限,比如是否享有特权
vip会员
viptime会员过期时间
purchased是否购买
watermark水印
level等级
active激活
userType用户类型(是否会员)
expireDate会员过期时间
coinbalance金币
Max上限
quality画质、音质
privilege权限
update强制更新
popup弹窗
其他一些常用的函数关键词:
1、与去广告相关的函数关键词
banner、Ad、ADview、Ads、advert、loadAd、loadimage、启动广告相关splash、launch、root、login、startup、优化搜索页search、Hotword、keyword、history、滚动广告相关cycle、scroll、页面净化numberOfRowsIn、numberOfSectionIn等
2、其它功能性的函数关键词
isVip、isPro、setVip、limit、download、Version、checkVersion 、jailbroken、jailbreak、playTria、text、color、background、lable、table、icon、image、statusBar、button、Alpha、blur等
3、重要变量关键词
-(bool)、-(int)、-(long long)、-(float)、-(double)、-(id) init、initWithFrame等
4、数据类型
void、id、int、long long、float、double、NSString、NSNumber、UIcolor、NSdate等
5、基本参数
null、pass-through、TURE、FLASE、Custom color(颜色)、Custom text(文字)、number(数字)等
教程总结
其实,如何制作补丁不是关键,关键是你要敢于尝试,懂得举一反三,如果你精通英语,知道具体函数的意义,那就更加完美了,不懂英语的小伙伴也不要气馁,可以借助类似百度翻译或谷歌翻译进行操作,做补丁的唯一捷径,多做,多试,别无他法,孰能生巧而已!
本期教程未去除启动广告、观看广告、首页横幅广告等等,这些广告就相当于留给大家的一次小测试吧,有兴趣做的小伙伴,可以留言交流!
本教程仅供学习研究,切勿用于非法用途!