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

相关推荐
新缸中之脑2 小时前
反爬虫大师的网络爬取API
爬虫
进击的雷神6 小时前
地址语义解析、多语言国家匹配、动态重试机制、混合内容提取——德国FAKUMA展爬虫四大技术难关攻克纪实
爬虫·python
卢锡荣9 小时前
LDR6021Q 车规级 Type‑C PD 控制芯片:一芯赋能,边充边传,稳驭全场景
c语言·开发语言·ios·计算机外设·电脑
white.tie9 小时前
scrapling AI爬虫 初体验
爬虫·ai
进击的雷神11 小时前
邮箱编码解码、国际电话验证、主办方过滤、多页面深度爬取——柬埔寨塑料展爬虫四大技术难关攻克纪实
爬虫·python
深蓝电商API12 小时前
多线程 vs 异步 vs 多进程爬虫性能对比
爬虫·python
进击的雷神12 小时前
相对路径拼接、TEL前缀清洗、多链接过滤、毫秒级延迟控制——日本东京塑料展爬虫四大技术难关攻克纪实
爬虫·python
2501_9071368212 小时前
iOS任意版本号APP下载
ios·软件需求
牛奶13 小时前
HTTP裸奔,HTTPS穿盔甲——它们有什么区别?
前端·http·https
denggun1234514 小时前
结构化并发(Structured Concurrency)
开发语言·ios·swift