iOS 抓包不越狱,代理抓包 和 数据线直连抓包两种实现方式

在 iOS 上做网络调试时,经常会遇到设备不能越狱,这个情况下,抓包方式会受到一些限制,但仍然可以完成大多数调试任务。

下面说明在不越狱的情况下如何抓取 iOS 网络请求。


先从代理抓包开始

第一种方式是代理抓包。

适用场景:

  • App 使用系统网络栈
  • 请求走系统代理
  • 没有额外的证书校验

使用工具:

  • Charles
  • Proxyman
  • Sniffmaster

配置代理环境

操作步骤:

  1. 在电脑上启动其中一个
  2. 查看监听端口(例如 8888)
  3. 确认电脑 IP 地址
  4. iPhone 连接同一 Wi-Fi
  5. 打开 iPhone 设置 → Wi-Fi
  6. 点击当前网络
  7. 设置 HTTP 代理为"手动"
  8. 输入 IP 与端口

保存后返回桌面。


安装 HTTPS 证书

在 iPhone 上:

  1. 用 Safari 打开证书下载地址
  2. 下载描述文件
  3. 安装证书
  4. 在"证书信任设置"中开启信任

验证代理是否成功

打开 Safari 访问 HTTPS 网站。

观察 Charles:

  • 可以看到请求
  • 可以查看响应

说明代理环境已经生效。


尝试抓取 App 请求

在代理环境下打开目标 App。

触发网络操作,例如登录和请求数据,观察抓包工具。


两种结果

可以抓到请求

说明App 走系统代理,可以直接分析 HTTPS 数据


抓不到请求

说明App 没有使用系统代理,或存在证书校验机制


切换到数据线直连抓包

在不越狱的情况下,如果代理无法抓到请求,可以使用数据线连接手机直接抓包,比如使用 SniffMaster(抓包大师)。

这种方式不依赖代理,也不需要手动安装证书用于解密。


使用 SniffMaster 抓包

操作步骤:

  1. 使用 USB 将 iPhone 连接电脑
  2. 保持设备解锁
  3. 点击"信任此电脑"
  4. 启动 SniffMaster
  5. 在设备列表中选择 iPhone
  6. 按提示安装描述文件
  7. 进入 HTTPS 暴力抓包模式
  8. 点击开始

然后在手机上触发网络请求。


观察结果

在抓包界面中可以看到请求域名、请求路径、Header 信息

即使 App 没有走代理,也可以看到请求。


针对单个 App 进行筛选

解密抓包会包含系统流量。

为了减少干扰,可以只抓某个 App。

操作步骤:

  1. 点击 选择 App
  2. 勾选目标应用
  3. 开始抓包

此时抓包列表只包含该应用的请求。


当数据不完整时的处理

在抓包过程中,可能会出现 URL 可见、Header 可见、Body 为空

这说明 HTTPS 已经被捕获、但 App 未使用开发证书签名

处理步骤:

  1. 获取 App 的 IPA 文件
  2. 使用 iOS 开发证书重新签名
  3. 安装到设备
  4. 再次抓包

完成后可以查看完整请求数据。


需要修改请求时的选择

在调试接口时,有时需要修改请求或响应。

这种情况下需要使用代理抓包工具:

  • Charles
  • Proxyman
  • Sniffmaster

可以通过:

  • Breakpoints
  • Rewrite
  • 拦截器

修改请求内容。


结合 Wireshark 分析连接问题

如果需要分析网络连接,例如:

  • 请求超时
  • 数据丢失

可以:

  1. 使用 SniffMaster 抓取数据流
  2. 导出到 Wireshark

在 Wireshark 中可以查看:

  • TCP 三次握手
  • 数据传输过程
  • 连接关闭原因

参考链接:https://www.sniffmaster.net/blog/135

相关推荐
老李IT笔记30 分钟前
关掉设备上的 AI 扩展:两个键各管一层,配错了等于没配
人工智能·ios·智能手机
2501_9159214335 分钟前
iOS应用耗电测试:使用Energy Log、Keymob和Instruments进行性能监控与能源消耗分析
android·ios·小程序·https·uni-app·iphone·webview
蒲公英内测分发1 小时前
热成像仪交付客户后,Android 配套 App 不上架,怎么持续下载安装和更新
android·机器人·项目管理·智能家居·智能硬件
脚踏实地,坚持不懈!1 小时前
Android 常见性能问题总结
android
高旭的旭2 小时前
图解 Android 系统架构:从 App、Framework、HAL 到 Linux 驱动
android·linux·系统架构
hunterandroid3 小时前
Navigation Component 多模块导航与深度链接实战
android
快乐非自愿3 小时前
低代码落地费控系统:从报销流程到业财闭环的实操方案
android·低代码·rxjava·ai低代码
黑化旺仔3 小时前
RunLoop 源码探索
ios·cocoa·xcode
摇滚侠3 小时前
《Java并发编程之美》第 2 章 并发编程的其他基础知识 阅读笔记 3
android·java·笔记
YB13753 小时前
Jetpack Compose 动画updateTransition
android