怎么抓取ios 移动app的https请求?

怎么抓取IOS应用程序里面的https?

这个涉及到2个问题

1.电脑怎么抓到IOS手机流量?

2.HTTPS怎么解密?

部分app可以使用代理抓包的方式,但是正式点的app用代理抓包是抓不到的,例如pin检测,证书双向校验等。最近研究网络抓包和app安全和爬虫,遇到了这个,操作比较简单,亲测能抓到我想要的HTTPS包,并且自动解密了。

准备 iOS 设备

先下载sniffmaster,传送门下载

  • 连接设备:通过 USB 将 iOS 设备连接到电脑,设备需解锁并处于亮屏状态。
  • 信任电脑:如果设备是第一次连接到当前电脑,手机会提示信任此设备,点击"信任此设备"。
  • 安装 iOS 驱动:如果使用的是 Windows 系统,首次使用嗅探大师时,可能会提示安装驱动程序,按照提示点击确定并逐步完成安装。驱动安装完成后,请重启嗅探大师。
  • 安装描述文件:对于未曾使用嗅探大师抓包过的设备,软件会提示安装描述文件,请根据提示步骤在手机上安装配置文件。
  • 开启开发者模式:对于 iOS 17.4 及以后的设备,嗅探大师会提示在 iOS 设置中开启开发者模式,按照步骤操作即可。iOS 17.0-17.4 系统存在某些 bug,嗅探大师目前不支持这些版本的设备。版本低于iOS 16的设备,如 iOS 15,尚未经过测试,未知是否支持。
进入 HTTPS 暴力抓包模式

在设备列表中选择要抓包的 iOS 设备,左下角会显示准备启动设备的高级管理服务。等待左下角的"高级管理服务"变为绿色,然后选择功能区域中的 HTTPS暴力抓包。暴力抓包是 iOS 专用的抓包功能,如果选择本机(即当前电脑)进行抓包,则暴力抓包和数据流抓包功能不可用。

如果出现错误,可能是左下角的"高级管理服务"启动失败,您可以点击 启动高级管理 按钮,根据提示开启高级管理功能。

暴力抓包HTTPS

操作过程感觉没什么好写的,因为太傻瓜式操作了。

点击开始按钮开始暴力抓包,抓包开始后,点击该按钮可以停止抓包。

点击开始后可以看到ios设备上的全部https请求了,当然可能遇到部分https请求看不到body,只有头和请求地址,但是这对很多抓包工作来说已经是很大的帮助了。如果要查看具体某个app的详细的https请求的body部分,需要对ios app进行重新签名,使用开发证书签名。

抓到的数据不完整?

对于未使用开发证书签名的 App,暴力抓包只能展示请求头和请求地址,例如系统应用和从 App Store 下载的应用。如果需要查看某个应用的请求体(body)和响应体(response body),需要对该应用的 IPA 文件使用 iOS 开发证书重新签名。如果没有开发者账号和证书,可以使用 AppUploader 创建免费的证书,签名可使用 codesign 等工具。如果从 App Store 下载的 IPA 默认是加密的,需要进行脱壳处理,您可以在网上搜索脱壳版本的 IPA 或 IPA 脱壳教程进行操作。

相关推荐
寻星探路5 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
王达舒19945 小时前
HTTP vs HTTPS: 终极解析,保护你的数据究竟有多重要?
网络协议·http·https
朱皮皮呀5 小时前
HTTPS的工作过程
网络协议·http·https
Binary-Jeff5 小时前
一文读懂 HTTPS 协议及其工作流程
网络协议·web安全·http·https
未来侦察班8 小时前
一晃13年过去了,苹果的Airdrop依然很坚挺。
macos·ios·苹果vision pro
深蓝电商API13 小时前
处理字体反爬:woff字体文件解析实战
爬虫·python
NPE~14 小时前
自动化工具Drissonpage 保姆级教程(含xpath语法)
运维·后端·爬虫·自动化·网络爬虫·xpath·浏览器自动化
锐意无限14 小时前
Swift 扩展归纳--- UIView
开发语言·ios·swift
符哥200814 小时前
用Apollo + RxSwift + RxCocoa搭建一套网络请求框架
网络·ios·rxswift
文件夹__iOS18 小时前
AsyncStream 进阶实战:SwiftUI 全局消息流极简实现
ios·swiftui·swift