导读:
安装应用
- Shadowrocket 是付费应用(约 $2.99),需使用美区 Apple ID 在 App Store 下载
- 系统要求:iOS 12.0 或更高版本
基础配置
- 首次打开需添加代理节点(可以是任意有效节点,本地抓包也需要开启 VPN 接口)
- 在首页开启连接(状态栏显示 VPN 图标)
HTTPS 抓包核心:证书配置
由于现代应用普遍使用 HTTPS 加密,必须安装 MITM(中间人)证书才能解密查看内容。
步骤 1:生成证书
- 打开 Shadowrocket → 点击底部「配置」→ 选择当前使用的配置文件(默认
default.conf) - 点击「编辑配置」→「HTTPS 解密」
- 点击「生成新的 CA 证书」→ 确认生成
- 点击「安装根证书」→ 系统会跳转到 Safari 下载描述文件
步骤 2:安装证书到系统
- 打开 iOS「设置」→ 顶部会出现「已下载描述文件」→ 点击进入
- 点击右上角「安装」→ 输入锁屏密码 → 继续安装
- 安装完成后,返回设置主界面
步骤 3:信任证书(关键步骤)
- 进入「设置」→「通用」→「关于本机」→ 底部「证书信任设置」
- 找到 Shadowrocket 的证书(通常显示为
Shadowrocket CA或你生成的名称) - 开启信任开关(这是 iOS 抓包最容易遗漏的步骤)
开启抓包功能
配置 MITM 规则
回到 Shadowrocket:
- 「配置」→ 编辑配置 →「HTTPS 解密」
- 开启「启用 MITM」开关
- 主机名配置(选择以下一种):
- 抓全部流量:添加 (通配符,抓取所有域名)
- 抓特定应用:添加该应用的 API 域名(如
api.example.com) - 排除敏感域名:建议排除银行、支付类域名(如
*alipay.com,*apple.com)
开启记录功能
- 返回首页 → 点击底部「设置」(齿轮图标)
- 开启「记录流量」→ 建议同时开启「记录 TCP 流量」
- 可设置「捕获响应体」以查看返回数据(注意内存占用)
实际操作与查看
开始抓包
- 确保 Shadowrocket 已连接(VPN 图标显示)
- 打开目标 App 进行操作(产生网络请求)
- 返回 Shadowrocket → 点击底部「最近请求」
分析数据
- 请求列表:显示时间、域名、方法(GET/POST)、状态码
- 详情查看:点击单条请求可查看:
- 请求头(Headers):User-Agent、Cookie、Token 等
- 请求体(Body):POST 提交的 JSON/表单数据
- 响应头(Response Headers)
- 响应体(Response Body):API 返回的 JSON/HTML
导出数据
- 长按某条请求 →「分享」→ 可导出为文本或通过 AirDrop 发送到电脑
- 或在「统计」页面查看流量概况
高级技巧
过滤特定应用
在「最近请求」页面顶部搜索框输入域名关键词,或使用「规则」功能将特定 App 走代理以便单独分析。
重写(Rewrite)调试
结合 Shadowrocket 的 Rewrite 功能,可以修改请求参数或响应数据,用于调试 API 边界情况。
与电脑联动
- 开启 Shadowrocket 的「代理共享」功能
- 电脑设置 HTTP 代理指向手机 IP 和端口(如
168.1.5:1082) - 电脑端使用 Charles 或 Burp Suite 进行更专业的分析
安全与法律注意事项
⚠️ 重要提醒
-
隐私保护:抓包会记录敏感信息(Token、Cookie、个人信息),切勿将包含此类数据的截图或日志上传到公共平台
-
及时清理:抓包完成后,建议:
- 关闭「记录流量」功能
- 在「证书信任设置」中关闭 Shadowrocket 证书信任(防止被恶意利用)
- 或在「通用」→「VPN 与设备管理」中删除该描述文件
-
法律边界:
- ✅ 允许:调试自己开发的应用、分析公开 API、学习网络协议
- ❌ 禁止:抓取他人账号数据、破解付费功能、窃取商业机密、攻击他人系统
-
应用检测:部分金融类 App(银行、支付宝等)会检测 MITM 证书,可能导致闪退或无法联网,这是正常安全机制,请勿强行绕过
常见问题
Q:为什么安装了证书还是显示乱码/无法解密? A:检查三点:1) 证书是否已信任(关于本机里的开关);2) 该域名是否添加到 MITM 主机名列表;3) 目标 App 是否使用 SSL Pinning(证书固定,无法抓包)。
Q:抓包后某些 App 无法联网? A:部分 App 检测到代理环境会拒绝连接,尝试在 Shadowrocket 的「规则」中将该 App 设为「DIRECT」直连,或暂时关闭抓包。
Q:iOS 16/17 证书安装位置变了? A:iOS 16+ 描述文件安装路径:设置 → 通用 → VPN 与设备管理(或描述文件),信任位置仍在「关于本机」→「证书信任设置」。
通过以上步骤,你就可以使用 Shadowrocket 进行移动端网络抓包分析了,建议配合 Postman 或 Charles Proxy 进行更深入的 API 调试工作。