1.目标

由于某茅台App有抓包检测,无法直接使用charles等工具抓包。本文的目的自然就是如何修改源码并抓任意接口

2.依赖环境

3.流程

手机上安装最新版本的茅台App,执行dump.py com.moutai.mall命令后获取到砸壳后的app。

拖到ida pro工具,编译完成后。全局搜索SVC指令:

【iOS逆向与安全】某茅台App抓包_二进制文件

搜索结果如下:

【iOS逆向与安全】某茅台App抓包_搜索_02

双击sub_100310B80进入到该函数

【iOS逆向与安全】某茅台App抓包_ios安全_03

【iOS逆向与安全】某茅台App抓包_ios逆向_04

在ida pro界面,任意选中左侧的函数,然后依次点击工具栏的Search -> Search后,弹出搜索框,在搜索框输入CFNetworkCopySystemProxySettings找到该函数:

【iOS逆向与安全】某茅台App抓包_抓包_05

从界面上可看出,有两个处代码有使用该函数,接下来就是对这两处代码进行修改

进入第一个函数,把CBZ X0, loc_1002A09F4替换为B loc_1002A09F4

【iOS逆向与安全】某茅台App抓包_抓包_06

进入第二个函数,把CBZ X0, loc_1002A0D18替换为B loc_1002A0D18

【iOS逆向与安全】某茅台App抓包_抓包_07

【iOS逆向与安全】某茅台App抓包_ios安全_08

到这一步后,ipa源码我们已经修改完成。

导出二进制文件

【iOS逆向与安全】某茅台App抓包_搜索_09

用导出的二进制文件替换掉ipa里的二进制文件。然后把charles工具的证书导出。替换到ipa文件里的MT.cer。

【iOS逆向与安全】某茅台App抓包_抓包_10

最后用重签名工具进行重签名。就可以安装到你的非越狱机上了。

最终抓包结果如下:

【iOS逆向与安全】某茅台App抓包_ios逆向_11

注:点击登录时,app会调用exit函数,请自行处理

提示:阅读此文档的过程中遇到任何问题,请关住工众好【移动端Android和iOS开发技术分享】或+99 君羊【812546729

【iOS逆向与安全】某茅台App抓包_搜索_12

【iOS逆向与安全】某茅台App抓包_ios逆向_13