怎么抓取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 脱壳教程进行操作。

相关推荐
sweet丶4 小时前
流程图解:Asset Catalog 的完整生命周期
ios
Yupureki9 小时前
《Linux网络编程》5.HTTPS协议
linux·网络·https
zhangfeng113312 小时前
合法爬虫四底线 法律边界
爬虫
S1998_1997111609•X15 小时前
论恶意注入污染蜜罐进程函数值取仺⺋以集团犯罪获取数据爬虫的轮系依据
网络·数据库·爬虫·网络协议·百度
大邳草民16 小时前
Python 爬虫:从 HTTP 请求到接口分析
笔记·爬虫·python
S1998_1997111609•X16 小时前
恶意注入污染蜜罐HDMI进程函数值进行封禁垃圾蠕虫仓蟲的轮系依据行为戆直㞢仓shell token
数据库·爬虫·网络协议·百度·开闭原则
KnowSafe1 天前
CaaS商业模式解析:证书即服务如何创造商业价值
https·itrustssl·certcloud
空中海2 天前
iOS 动态分析、抓包与 Frida Hook
ios·职场和发展·蓝桥杯
untE EADO2 天前
Nginx代理到https地址忽略证书验证配置
运维·nginx·https
huzhongqiang2 天前
Python全站链接爬取工具优化:支持过滤和断点续爬
后端·爬虫