本帖最后由 小鲤鱼 于 2020-5-21 10:11 编辑
教程有时效性,有能力的请支持正版,本教程仅供学习使用,切勿用于商业用途。请勿转发(本人博客除外)。
还是不会的话ios有个软件叫http catcher,是付费的,json文件用法:全选复制json文件(不用下载) -> 打开网球->更多->重写->右上角+ ->在文本编辑器编辑-> 全选粘贴完成即可
之前的帖子:
http cacther修改小猿搜题
这个没有实际效果,熟悉下修改的流程,还修改了蜗牛读书
http cacther使用教程,多图超详细
这个修改的app是轻听英语
必杀技之利用charles体验fit健身软件vip。理论安卓ios都可以
这个修改的是fit软件,健身用的
写这篇文章的目的
前面的分享包括了英语,健身,读书的软件,有一个老哥去我的github上提了个issues问我能不能改一个儿童故事类的软件,叫洪恩双语绘本,经过一番苦战终于搞定了。所以我又来了
使用到的软件
- charles,论坛中有大佬分享了破解版,搜索一下安装即可
- charles设置ssl成功,没配制好的上面的链接配置一下
- 洪恩双语绘本,给小朋友看故事书的。
教程开始
本教程默认ssl已经装好并且手机已经信任了证书。
1.看下不是vip的情况。对于需要vip的书籍只能试看几页就不行了。可以看出,这个app的会员是需要通过app store订阅的。
- 打开charles和该app。先搜索user试试,定位到get_user_info这个接口,可以看到vip_status,我们将它改为1,感觉是不是结束了,然而并没有成功。
- 什么原因呢?可以看到_s这个字段里面有个debug_signsrc和sk,初步推断可能是加密请求服务器。如果是这种情况下的话,我们下载付费书可能服务器只会下发包含特定页面的链接,也就是下载到本地的书就只有试看的那几页。
- 尝试下一本付费书看下。接口在resource/ios/books/下面,好在这个没有加密,是个压缩包打开可以看到是一本完整的书。打脸了,不过好事是为下面的修改打下了基础。
- debug_signsrc字段中还有vip_status.expire_time,再修改一下试试,同样get_usr_info下还有一个get_purchase_list接口,同样这样修改试下,发现还是没用。又打脸了。可能存在有加密,这种情况下就没办法修改了。
userinfo.uid=7673475&userinfo.vip_status.expire_time=
&userinfo.vip_status.pack_list=&
userinfo.vip_status.vip_type=0
- 难道就这样放弃了吗?突然想到里面还有免费的书籍,看看免费的是怎么判断的啊。通过比较付费的和免费的或许可以提供点思路。先点开哪吒闹海然后再点开付费的睡美人看下接口情况。 额,唯一的区别就是book_id不同,打脸那么多次过后再次推断可能会有个接口判断对应的book_id是否需要会员,需要会员的话再比较自身账号是否是。
- 本着大脸不过三,我又去找接口了,终于在get_book_info找到了,我摸着肿起来的脸陷入了沉思,这次会成功吗?可以看到上图中需要付费的book_id=0011赫然出现在这里,一同出现的还有它的下载链接,对比发现是他是他就是他。修改is_vip再试试看吧。
- 看下效果
终于不用打脸了。
重点来了,写了这么多,其实只用修改一个接口就行,尴尬。
网球使用,对应接口:/v3/get_book_info
正则表达式:
is_vip"\s*:\s*\d
is_vip": 0
软件逻辑
总结下这个软件的逻辑:
- 打开app时先请求get_usr_info下还有get_purchase_list接口判断用户是否是会员,这两个接口有加密信息在,不好修改。
- 有一个get_book_info接口会给定书籍是否需要会员,需要会员的话就只提供几页试读。
网球json白嫖
洪恩双语
最后
事实证明,打脸还是有好处的,这个程序百密一疏啊,居然直接返回个json到本地判断,直接在服务器上判断如果不是会员的话就只提供试看的zip岂不是更好。
有需要的去提issues哦,顺便求star一波,好惨,这种教程看的人好少,我的博客根本没人看。哎,感觉没啥动力
|