在Mac上使用Charles进行手机的HTTPS抓包
1. 小米篇
1.1 环境
- MacOS 10.13.3
- Charles 4.0.2
- 小米6 Android7.1.1 MIUI9.2
1.2 在Mac上安装好Charles的https证书
- 打开Charles,
Help->SSL Proxying->Install Charles Root Certificate - 输入系统密码进行授权
- 在“钥匙串访问”中找到
Charles的证书

- 双击Charles的证书,全部选择
始终信任

- 至此,Mac端根证书安装完毕
1.3 在小米6上安装https证书
- 小米6和Mac连上同一个WiFi,然后小米6连上Mac的代理。小米6如何连代理?
- 打开Charles,
Help->SSL Proxying->Install Charles Root Certificate on a Mobile Device or Remote Browser - 按照弹窗的提示进行操作,小米6的代理已经开了,用小米6手机浏览器打开
chls.pro/ssl下载证书,默认会保存到MIUI的系统下载目录(Download) - 下载好之后通知栏会有一个提示,直接点击这个通知是安装不了的,会提示安装失败,这是MIUI系统的限制。你可以打开系统文件浏览器,找到
Download文件夹,然后找到证书文件getssl.crt - 点击证书文件,系统会提示你输入锁屏密码,(如果没有设置锁屏密码,可能会引导你到设置锁屏密码的页面,设置好之后再重来一次就行了)输入之后开始导入证书。先给证书命个名,比如叫
Charles,凭据用途默认VPN和应用,点击确定,系统会提示你已安装Charles - 小米6上安装https证书成功!
1.4 使用Charles进行https抓包
前戏已经做完了,该办正事儿了。
- 小米6连上Mac代理,打开Charles(再啰嗦一下下 0_-)
- 随便打开一个App,比如小米系统浏览器,肯定有一堆请求,盯着Charles的请求监控面板,可以看到有很多的请求,随便选择一个https请求,可以看到,https请求已经可以抓包了

2. 后记
- 如果有任何问题,欢迎在我的博客留言,或者在博客的github仓库中提issue
- Android手机厂商很多,各个型号手机的设置方法可能不尽相同,而且就算是同一个厂商的手机,不同系统版本间也可能有差异,而且就算是同一个系统版本,不同型号手机(比如小米和红米)间也可能有差异,这里点名一下小米,+_+
- 我会慢慢更新这篇文章,尽可能多覆盖各种情况
- 未完待续……
2.1 小米手机如何连代理?
- 首先找到Mac的局域网ip,在终端上
ifconfig en0,inet后面的就是本机ip - 打开小米6,
设置->WLAN->点击已连接的WiFi右边的箭头->滑到最下面,选择代理手动->输入主机名,主机名就是上面Mac的ip->输入端口号8888->点击右上角的确定 - 小米6代理设置完毕
本文介绍了在Mac上使用Charles工具,通过步骤配置小米6手机的HTTPS证书,实现HTTPS抓包。包括在Mac上安装Charles证书,小米6上安装证书及设置代理,以及如何使用Charles进行抓包。文章最后提到小米手机与其他设备可能存在设置差异,并预告将更新更多内容。
2018

被折叠的 条评论
为什么被折叠?



