概述
配置手机代理确保可以正常抓包 HTTP 请求
在手机上安装 Charles 的根证书
配置 Charles 启用 HTTPS 抓包
重要:为什么不把 Host 直接配置为 *
1. 配置手机代理确保可以正常抓包 HTTP 请求
此时 HTTPS 的请求会显示为 unknown 无法查看
2. 在手机上安装 Charles 的根证书
-
获得证书下载地址
Charles: Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device or Remote Browser
该地址在不同版本的 Charles 下可能不同,以实际获取到的为准
-
在手机上下载并安装证书
在手机浏览器中输入刚刚获得的 Charles 根证书下载地址
在弹出的界面中点击右上角的“安装”,如需要密码验证,输入该手机的解锁密码后继续安装
直到界面出现 ”已验证√“ 点击“完成”即成功安装证书
-
信任安装的证书(iOS 10+)
iOS 10 以上的系统还需要 设置 -> 通用 -> 关于本机 -> 证书信任设置 ,信任刚才安装的证书
3. 配置 Charles 启用 HTTPS 抓包
- Charles: Proxy -> SSL Proxy Settings
- Enable SSL Proxying -> Add
- 在 Host 和 Port 中填入想要抓包的域名和端口
4. 重要:为什么不把 Host 直接配置为 *
对所有 HTTPS 请求进行配置,确实可以正常抓包挖财的请求。
但是,并非所有的 HTTPS 请求都可以用上述方法进行抓包。
例如 Apple 的大部分请求都会启用 SSL Pinning 以防止用户信任错误的证书。
将 Host 配置为 * 会导致 App Store 无法访问、企业证书无法信任等问题!
网友评论