OS应用程序攻防-XX瑜伽
去年年底在APP STORE接触到这款软件,准备练一字马,下载来发现里面的某些课要花钱啊,于是就把数据库导出来折腾了一番塞回去,所有课程都免费了;跟着练了4个月,一字马也没劈下去,大概瘦了3公斤吧;后来就一直没练,前不久想练一下,点开软件要注册还要登陆,注册后发现以前明码标价的课程都改成VIP课程了,又想着去折腾数据库,可是这次失败了,软件会联网实时获取课程信息,并把课程信息写在本地数据库里以备断网时用;目前注册用户采用积分制,开通一季度要2700积分,做一个任务大概就是10-50积分的样子,哪有那个精力,刚好最近开始研究ios安全,练练手吧.
在这里我还是要推荐下我自己建的iOS开发学习群:680565220,群里都是学ios开发的,如果你正在学习ios ,小编欢迎你加入,今天分享的这个案例已经上传到群文件,大家都是软件开发党,不定期分享干货(只有iOS软件开发相关的),包括我自己整理的一份2018最新的iOS进阶资料和高级开发教程
所需工具:cycript,ida,class-dump,Clutch
XX瑜伽版本:6.1.7
测试环境:ios8.1.2,iPhone 5s
备注:已提前脱壳并导出头文件
SSH到手机,找到XX瑜伽进程,把cycript附加上去
找到<全部课程>导航页面,从这个页面入手.
获取rootViewController
YGTabBarViewController类信息:
YGTabBarViewController是UITabBarController的子类,所以直接用selectedViewController可以获取当前tab页视图.
iOS开发学习群:680565220YGHomeViewController类信息:
sessionsArray很可能就放着全部课程的信息,cycript验证下
iOS开发学习群:680565220 iOS开发学习群:680565220 iOS开发学习群:680565220接下来就应该看看YGSessionInfo的数据来自哪里,要从控制器里找原因了,看一下YGSessionInfoViewController的初始化函数viewDidLoad,此函数有两处代码与加载课程相关
第一段:
iOS开发学习群:680565220 iOS开发学习群:680565220 iOS开发学习群:680565220原理弄清楚之后写代码就简单了,可以hook的地方很多,可以在YGSessionInfo中勾住isBuy,isVip或者勾住NSUserDefaults中的sessionHasPurchased等等.随便选个吧.
在中还有另外两种收费项目,<瑜伽计划>以及<瑜伽音乐>
iOS开发学习群:680565220 iOS开发学习群:680565220