在Mac上使用Charles进行手机的HTTPS抓包
1. 小米篇
1.1 环境
MacOS 10.13.3Charles 4.0.2小米6 Android7.1.1 MIUI9.21.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仓库中提issueAndroid手机厂商很多,各个型号手机的设置方法可能不尽相同,而且就算是同一个厂商的手机,不同系统版本间也可能有差异,而且就算是同一个系统版本,不同型号手机(比如小米和红米)间也可能有差异,这里点名一下小米,+_+我会慢慢更新这篇文章,尽可能多覆盖各种情况未完待续……2.1 小米手机如何连代理?
首先找到Mac的局域网ip,在终端上ifconfig en0
,inet后面的就是本机ip打开小米6,设置
->WLAN
->点击已连接的WiFi右边的箭头->滑到最下面,选择代理手动
->输入主机名,主机名就是上面Mac的ip->输入端口号8888->点击右上角的确定小米6代理设置完毕