Charles进行HTTPS抓包

当前环境:macOS 10.14.1 + Charles 4.2.7 + iPhone 7 iOS 12.1

下载安装Charles

前往 https://www.charlesproxy.com/download/ 下载对应平台的 Charles 软件。

配置HTTPS证书

macOS安装CA根证书

1、打开 Charles,选择 Help – SSL Proxying – Install Charles Root Certificate 选项

2、系统会自动打开“钥匙串访问”应用,我们需要双击 “Charles Proxy CA” 证书,然后选择 “始终信任” 该证书

iPhone安装证书

1、手机安装 HTTPS 证书,选择 Help – SSL Proxying – Install Charles Root Certificate on a Mobile Device or Remote Browser 选项即会弹出一个提示框,根据提示信息进行操作

2、设置手机的代理为 192.168.100.101:8888 (这是我电脑的IP,请根据提示信息填写即可)

3、使用 Safari 浏览器打开 chls.pro/ssl 页面,会弹窗一个提示框,点击 “允许”,然后根据提示进行安装手机端证书

安装完成后如上图所以。

4、对于 iOS 10.3 及以上的系统需要到 “设置–通用–关于本机–证书信任设置” 中对 Charles Proxy 进行授权信任才能正常使用

HarmonyOS安装证书

1、将设备与电脑连接在同一局域网内,然后在WIFI中将手动设置代理信息

2、使用浏览器访问 chls.pro/ssl 页面,将证书下载到设备本地存储

3、按照这个菜单顺序,将证书安装到手机上:手机设置–隐私和安全–高级–证书与凭证–从存储设备安装–CA证书,

4、安装后可以在“手机设置–隐私和安全–高级–证书与凭证–CA证书–用户”这里看到我们刚新安装的证书

chls.pro/ssl 无法访问

不知何时起,设备端配置好代理后,浏览器访问 chls.pro/ssl 却永远都是打不开,导致无法手机无法正常安装根证书,下面给出解决方案。

1、打开 Charles,选择 Help – SSL Proxying – Save Charles Root Certificate…,然后选择保存目录,将 charles-ssl-proxying-certificate.pem 文件保存到电脑本地

2、如果是 macOS + iPhone/iPad 等苹果生态,可以直接通过隔空投送将文件投送到移动设备上,然后直接在手机的设置里面进行安装即可

3、Android/鸿蒙等设备,也可以通过USB线/微信文件传输/通过Tomcat或Apache等提供http访问的方式将文件传输到移动设备上,然后自行安装即可

进行HTTPS抓包

打开 Charles,选择 Proxy – SSL Proxying Settings 选项,添加你需要抓包的域名(*表示抓包所有域名)


至此,所有配置已设置好,可以愉快地抓包了~~~