前言说明
此文章是我在学习 Charles APP 抓包时编写,内容都是亲测有效,文章内容也有参考其他人,参考文章如下:
- Android 手机使用 charles 抓 https 请求(保姆级教程)
- 网易 mumu 模拟器安装下载 charles 的 CA 证书
编写此文章时,依旧在升级打怪中(APP 抓包学习中。。。),内容还需完善
更新时间:08.30
一、设置好 charles 的代理
Charles download: 点击跳转
charles 的配置
抓包之前需要配置端口和 CA
端口配置
charles 中 [proxy->proxy Settings]设置进行代理的端口
配置 CA 证书
[Help->SSL Proxying]点击 install charles root certificate on a mobile device or remote browser,查看如何与 charles 相连
Charles 配置
如果不执行这一步骤,将无法抓取 HTTPS 协议
(1)点击顶部菜单栏[Help]–> 选择 [SSL Proxying],点击[install Charles Root Certificate]安装 Charles 证书,最后提示导入成功即可。
(2)点击[Proxy] –> [SSL Proxying Settings…](Ctrl + Shift + L),在弹出选项卡中,勾选[Enable SSL Proxying] 点击 [add],在 Host 输入[*]表示接收任何主机,在 Prot 输入 [*] 最后点击 [ok] 保存。
确保 [Windows Proxy] 功能打上对勾,做法 : [Proxy -> Windows Proxy]
PC(Win) 配置
(1)根据弹窗消息提醒,前往该网站下载证书:http://chls.pro/ssl
注意:下载路径记住,后续要用到
(2)打开浏览器设置(chrome为例),[settings] -> [Privacy and security] -> [Security] -> [Manage certificates]
Android
参考连接:https://www.cnblogs.com/bao0/articles/16769863.html
Iphone
pass
mumu 模拟器配置 CA 证书
官网教程:https://mumu.163.com/help/20221018/35047_1047210.html
教程有些地方不详细,这里补充一下
1. 设置 mumu 模拟器
允许对系统盘操作
开启 Root 权限
之后会提示重启生效,点击立即重启。
2. 制作 CA 证书
1)用 Charles(点击下载 Charles>>)导出证书,命名为 charles.pem
2) OpenSSL 签发证书
安装 openssl 方法:https://www.cnblogs.com/wutou/p/17873881.html
openssl x509 -subject_hash_old -in d:\CA\charles.pem |
d:\CA\charles.pem 要写对,怕写错,就写成绝对路径
3) 重命名文件
将刚才 charles.pem 文件名改成 执行命令后提示的 24e12a67 后缀名为.0
3. 把签发好的 24e12a67.0 证书上传到 mumu 模拟器 Android 系统里。
1)提前准备好 adb 工具
百度云:百度网盘 请输入提取码
2)连接 mumu 模拟器
adb connect 127.0.0.1:7555 | |
adb root | |
adb shell |
adb root 这步和直接执行 adb shell 后,进入 Android 命令行里 su 命令效果一样。
执行 adb root 时,系统会提示,权限,选择允许 (如果选仅此次,那以后每次执行 adb root 都要点允许)
注意命令行提示符变化,执行完 adb shell 后就进入到 mumu 模拟器的 Android 系统里了。
挂载系统盘,因为 CA 证书文件要放到系统盘中
mount -o remount,rw /system | |
exit |
mount 命令执行成功,如图,不显示任何提示,就可以 exit 退出命令行(注意不是关闭和 android 的连接,是命令行要操作的命令结束了)
上传刚才签发的 CA 证书到 mumu 模拟器 Android 系统目录中。
adb push d:\CA\24e12a67.0 /etc/security/cacerts/ |
/etc/security/cacerts 或 /system/etc/security/cacerts 都是指向同一目录
4. 查看是否上传到,可以再次登录 shell 查看
adb shell | |
cd /etc/security/cacerts/ | |
ls 24e12a67.0 |
5. 案例
本案例是为了检验 charles 是否能够抓包
apk 安装包:http://app1.scrape.center
(1)安装需要测试的应用
打开连接后会自动下载,
(2)重启 charles 清空请求列表
(3)mumu 模拟器打开测试app
这里就看到charles抓取到的数据了