《Fiddler+夜神模拟器App抓包配置》
一、环境准备
- 安装Fiddler 4
- 安装夜神模拟器
- 安装OpenSSL(并把”安装目录/bin”路径添加到”系统变量的path”中)
二、Fiddler配置
2.1 基本配置
2.2 重置证书
2.3 导出证书
三、用Fiddler导出的FiddlerRoot.cer证书制作手机系统证书
说明:经了解android 7.0版本之后,升级了证书的方式。用户第三方自己安装的证书限制巨大(之前用真机测试一直抓不到某些APP的数据),所以采用把fd证书导入系统证书里面的方式。真机需要root权限,比较麻烦,本人测试机redmi note 8 pro,需要先解锁要等7天才会解锁完成,止步于此。用模拟器代替。
// 1. 打开命令行, 切换到导出证书的目录, 这里用Git演示
// 执行如下命令, 结果见图3.1
openssl x509 -inform der -subject_hash_old -in FiddlerRoot.cer
// 2. 以1.中生成的开头字符269953fb为名, 创建269953fb.0文件, 用NotePad++或其他编辑器打开, 将生成的其他字符串粘贴到文件中,图3.2
// 3. 执行如下命令,图3.3,注意前后生成的字符串交换一下位置
openssl x509 -inform der -text -in FiddlerRoot.cer -out 269953fb.0
图3.1
图3.2
图3.3
四、将证书导入夜神模拟器的证书目录
- 确认模拟器已经root
- 命令行切换到”夜神模拟器”安装目录下的bin文件夹
// 1.进入adb shell,执行:
.\nox_adb.exe shell
// 2.开启模拟器/system读写权限
mount -o remount -o rw /system
// 3.证书文件推入模拟器
.\nox_adb.exe push 证书路径 /system/etc/security/cacerts
五、模拟器配置WIFI代理IP+端口(Fiddler的)
六、其他遇见过的问题
- 正常情况下,手机和安装了Fiddler的电脑处于同一局域网的话,就算手机不配置WIFI代理,应该都是可以访问代理服务器地址的。
如果出现了"无法连接网络"的情况:
1. 切换另一网络试试。(之前的一种处理方式是,自用的手机开热点, 测试机和电脑连热点,发现既然可以);
2. 确认是否让Fiddler进入"允许应用通过防火墙", 图6.1
3. 确认代理服务器配置的端口是否在"入站规则"中, 图6.2
4. 或者临时关闭防火墙
5. 当然, 用模拟器还是比较香的
图6.1
图6.2