iOS BurpSuite 抓包实现
1. 流程概述
下面是实现 iOS BurpSuite 抓包的整体流程:
pie
"iOS设备配置" : 30
"BurpSuite配置" : 30
"iOS应用配置" : 30
"抓包分析" : 10
2. iOS设备配置
在进行 iOS BurpSuite 抓包之前,我们需要先将 iOS 设备配置为使用 BurpSuite 代理。下面是配置步骤:
sequenceDiagram
participant iOS设备
participant BurpSuite
iOS设备->>BurpSuite: 打开设置
iOS设备->>BurpSuite: 选择 Wi-Fi
BurpSuite->>iOS设备: 提供 Wi-Fi 代理配置信息
iOS设备->>BurpSuite: 配置 Wi-Fi 代理
BurpSuite->>iOS设备: 保存代理配置
- 打开 iOS 设备的 "设置"。
- 选择 "Wi-Fi" 选项。
- 提供的 Wi-Fi 代理配置信息,包括代理 IP 地址和端口号。
- 在 iOS 设备中,配置 Wi-Fi 代理,将代理 IP 地址和端口号输入。
- 保存代理配置。
3. BurpSuite 配置
在 iOS 设备配置好代理后,我们需要配置 BurpSuite 以接收来自 iOS 设备的网络流量。下面是配置步骤:
sequenceDiagram
participant BurpSuite
participant iOS设备
BurpSuite->>iOS设备: 提供 BurpSuite 证书下载链接
iOS设备->>BurpSuite: 下载 BurpSuite 证书
iOS设备->>BurpSuite: 安装 BurpSuite 证书
BurpSuite->>iOS设备: 配置 BurpSuite 代理
- 在 BurpSuite 中,获取 BurpSuite 证书下载链接。
- iOS 设备下载 BurpSuite 证书,可以通过浏览器访问下载链接并保存证书。
- 在 iOS 设备上安装 BurpSuite 证书,可以通过 "设置" > "通用" > "关于本机" > "证书信任设置" > "启用完整信任" 完成。
- 在 BurpSuite 中,配置代理监听 iOS 设备的流量,包括设置监听端口和选择监听接口。
4. iOS 应用配置
在 iOS 设备和 BurpSuite 都配置好后,我们需要对待抓包的 iOS 应用进行一些设置。下面是配置步骤:
sequenceDiagram
participant iOS设备
participant BurpSuite
iOS设备->>BurpSuite: 打开待抓包的 iOS 应用
iOS设备->>BurpSuite: 禁用 ATS
iOS设备->>BurpSuite: 设置代理
- 在 iOS 设备上,打开待抓包的 iOS 应用。
- 禁用 ATS(App Transport Security),以允许应用使用未经验证的 SSL 证书。
- 在应用的网络配置中,设置代理为之前配置的 BurpSuite 代理。
5. 抓包分析
完成前面的步骤后,现在可以进行抓包分析了。下面是一些常见的抓包技巧和代码示例:
- 拦截请求和响应:可以在 BurpSuite 中查看并拦截 iOS 应用与服务器之间的请求和响应。在 BurpSuite 中,可以对请求进行修改、重放或者丢弃。
- 查看请求头和响应头:可以查看请求和响应的头部信息,包括 User-Agent、Cookies 等。
- 分析请求体和响应体:可以查看请求和响应的具体内容,在其中寻找有价值的信息,比如 API 接口、敏感数据等。
// 设置代理
let proxyHost = "BurpSuite代理IP"
let proxyPort = 8080
let proxyDict: [AnyHashable: Any] = [
"HTTPEnable": 1,
"HTTPProxy": proxyHost,
"HTTPPort": proxyPort,
"HTTPSEnable": 1,
"HTTPSProxy": proxyHost,
"HTTPSPort": proxyPort