iOS逆向之某茅台App抓包

article/2025/10/17 0:17:28

阅读此文档的过程中遇到任何问题,请关注公众号移动端Android和iOS开发技术分享或加QQ群309580013

1.目标

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

2.依赖环境

  • frida-ios-dump:用来砸壳。官网 https://github.com/AloneMonkey/frida-ios-dump

  • ida pro:修改源码

3.流程

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

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

image-20220714172208698

搜索结果如下:

image-20220714171728079

双击sub_100310B80进入到该函数

image-20220714180425141

image-20220714180543527

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

image-20220714183541014

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

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

image-20220714184159335

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

image-20220714184529905

image-20220714184843069

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

导出二进制文件

image-20220714185122935

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

image-20220714191650090

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

最终抓包结果如下:

image-20220714185513030

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

End

阅读此文档的过程中遇到任何问题,请关注公众号移动端Android和iOS开发技术分享或加QQ群309580013


http://chatgpt.dhexx.cn/article/71PxUq9P.shtml

相关文章

【iOS逆向与安全】iOS插件开发入门

前言 经过之前的学习,相信你已经能熟练的使用Frida-trace、IDA Pro等逆向工具。不过,仅仅到这肯定是不够的。接下来,学会把你逆向的结果打包成插件并运行,那iOS逆向,你也就真正的入门了。 一、目标 把逆向的结果制作成…

iOS逆向工程开发技巧

1. 将xib文件转成nib文件 ibtool --errors --warnings --output-format human-readable-text --compile ~/Desktop/001.nib ~/Desktop/HWTipsView.xib 2. 给framework添加指令集合并 lipo -create [地址:name1.framework/name1] [地址:name2.framewor…

iOS逆向动态调试

1.拷贝越狱手机/Developer/usr/bin目录下的debugserver到Mac电脑,在mac端输入 scp -P 2222 rootlocalhost:/Developer/usr/bin/debugserver ~/debugserver2.对debugserver进行瘦身(iOS11可以不用瘦身,因为只支持64位构架的程序),在debugserver所在目录输…

ios逆向学习环境安装(一)

1、Xcode 历届版本:https://developer.apple.com/documentation/xcode-release-notes AppStore中搜并安装XCode & 在网页下载https://developer.apple.com/xcode 2、class-dump class-dump,是可以把Objective-C运行时的声明的信息导出来的工具。其实…

ios android 逆向 对比,iOS逆向开发--APP重签名

签名原理 在非越狱手机上要调试一个三方的APP,我们首先要对其重签名,跑在我们的手机上,我们才能对其进行进一步的动态和静态调试 要对一个APP包进行重签名,要有一个越狱的APP包,这个可以去PP助手上下载,也可…

IOS逆向-抓帧分析

背景 分析图形学、游戏等的时候,很多时候需要抓帧分析 步骤 动态调试APP点击 点击FPS,触发渲染,查看面板是否有数据点击📷按钮,触发渲染再次点击📷按钮,结束抓帧 问题 FPS数据面板没有数据…

IOS逆向-动态调试

文章目录 LLDBXcode重新签名版本调试(手动) ✅重新签名版本调试(自动)不重新签名版本调试 LLDB Xcode -> Attach -> 点击 || 按钮 -> 使用lldb终端 手机/Developer/usr/bin/debugserver localhost:2233 /var/containers/Bundle/Application/*/*/xxxx电脑 lldb -> …

IOS逆向初探

前言 这些文章用于记录学习路上的点点滴滴,也希望能给到刚入门的小伙伴们一点帮助。爱而所向,不负所心。 环境 iphone 6 MacOS Monterey 12.3.1 一、IOS开发语言 Objective-C Objective-C是iOS操作系统运用的软件开发语言。Objective-C的流行完全是因…

移动App入侵与逆向破解技术-iOS篇

如果您有耐心看完这篇文章,您将懂得如何着手进行app的分析、追踪、注入等实用的破解技术,另外,通过“入侵”,将帮助您理解如何规避常见的安全漏洞,文章大纲: 简单介绍ios二进制文件结构与入侵的原理介绍入侵常用的工具和方法,包括pc端和手机端讲解黑客技术中的静态分析和…

C#应用程序与MATLAB联合编程

本文主要结合C#编写应用程序方便强大和MATLAB在工业科学界的广泛应用,结合两者的优点,利用C#编写的windows桌面应用程序作为UI交互接收用户配置,并根据用户在前端应用界面的操作自动控制MATLAB运行,并将MATLAB计算的结果返回桌面应…

编程输出中文变问号的解决办法

问题是出现在windows的dos显示设置上。 如何解决这个问题? 1.打开运行,输入cmd; 2.界面顶部右键,option中选择默认值; 3.将437(OEM-美国)改为936(ANSI/OEM-简体中文GBK) …

Python入门(二)-编程环境

本章重点介绍 Python 编程环境的搭建,包括各个平台下 Python 的下载和安装,常见 IDE 的使用,如何运行 Python 程序等。我还会亲自带着大家编写并运行第一个 Python 程序,让大家认识一下最简单的 Python 代码。 本章的后半部分还介…

数模混合信号建模语言Verilog-AMS

混合信号建模语言Verilog-AMS 很多人做模拟电路的朋友,都希望有一款“模拟FPGA”,希望有一个“模拟的Verilog”,但现实是没有“模拟的Verilog”只有混合信号建模语言-Verilog-AMS,今天就简单介绍一下-Verilog-AMS。 为了便于物理系…

Java入门-Java语言概述

1、Java语言基本概述 1.1、什么是计算机编程语言 人与人之间是如何沟通的呢?从小父母就教会我们说话,在长期的熏陶和自我学习中,我们就学会了普通话,学会了表达自己的需求,父母收到我们的信号或者听到我们的要求也会尽…

Python 批量下载BiliBili视频 打包成软件

文章目录 一、项目概述1.项目背景2.环境配置下载ffmpeg设置环境变量 二、项目实施1.导入需要的库2.设置请求参数3.基本处理4.下载视频5.视频和音频合并成完整的视频6.3种下载方式的分别实现7.主函数 三、项目分析和说明1.结果测试改进说明2.软件打包3.改进分析4.合法性说明 如有…

Java 之父 James Gosling 最新访谈:JIT 很好,但不适合所有语言

计算机编程确实是一门艺术。 James Gosling,“Java 之父”, 完成了 Java 的原始设计,并实现了 Java 最初版本的编译器和虚拟机。 90年代初,James Gosling和一群技术人员合作“绿色计划”,创建了一个名为Oak的项目,旨在…

Python语言概述及其运行机制详解

即日起,我们将打开一个新的编程世界的大门——Python语言。Python是一种跨平台的计算机程序设计语言。是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独…

go语言开发环境搭建

Go 是一个开源的编程语言,它能让构造简单、可靠且高效的软件变得容易。 Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C代码的速度,而且更加安全、支持并行进程。 学习Go一部分是兴趣,一部分是…

汇编语言程序运行过程分析

实验项目程序运行过程分析综合性实验2020年11月 18日 一、实验综述 1.实验目的及要求 (1)掌握程序执行具体过程 (2)构建汇编语言的运行环境 (3)掌握汇编语言的编译连接过程 (4)掌…

【x86汇编】第六章 输出/输出和win32编程

文章目录 输入/输出指令和数据的传送方式输入/输出指令输入指令IN输出指令OUT串输入指令INS串输出指令OUTS 数据的传送方式无条件传送查询传送直接存储器中断传送 中断与异常中断的概念不可屏蔽中断 NMI可屏蔽中断 INTR除法出错溢出调试异常(单步)软中断…