首先需要从 Burp Suite 导出数字证书,步骤如下:
- 打开 Burp Suite,依次点击 Proxy → Options
- 在 Proxy Listeners 区域,点击 Import /export CA certificate 按钮
- 选择 Export CA certificate in DER format 选项
- 将证书保存为 cacert.der 文件
需要将 DER 格式证书转换为安卓系统可识别的 hash.0 格式:
# 转换为PEM格式
openssl x509 -inform DER -in cacert.der -out cacert.pem
# 获取证书哈希值
hash=$(openssl x509 -inform PEM -subject_hash_old -in cacert.pem | head -n 1)
# 重命名为哈希+ .0格式
mv cacert.pem "${hash}.0"
如果你的设备已经 Root,可以通过 ADB 直接复制到系统证书目录:
# 首先获取Root权限
adb root
# 重新挂载系统分区为可写模式
adb remount
# 复制证书到系统目录
adb push "${hash}.0" /system/etc/security/cacerts/
# 修改文件权限
adb shell chmod 644 /system/etc/security/cacerts/"${hash}.0"
对于 Root 设备,推荐使用 Move Certificates 模块安装:
- 在 Magisk Manager 中搜索并安装 Move Certificates 模块
- 重启设备使模块生效
- 通过以下命令复制证书:
# 1.先push到存储卡
adb push "${hash}.0" /sdcard/
# 示例执行:-> % adb push "${hash}.0" /sdcard/
# 示例结果:9a5ba575.0: 1 file pushed, 0 skipped. 1.7 MB/s (1326 bytes in 0.001s)
# 2.使用root权限,移动到指定目录
adb shell
su
mv 9a5ba575.0 /data/adb/modules/movecert/system/etc/security/cacerts/
- 重启设备完成安装
安装完成后,可以通过以下方式验证:
- 打开手机设置 → 安全 → 加密与凭据 → 信任的凭据
- 在系统选项卡中应该能看到名为 PortSwigger CA 的证书
- 现在可以使用 Burp Suite 捕获 HTTPS 流量了
- 证书安装可能会影响设备安全性,请仅在测试环境使用
- 不同安卓版本对证书安装的限制可能不同
- 如果安装后无法捕获某些应用的流量,可能是因为应用使用了证书固定 (Certificate Pinning) 技术
- 安装 Magisk 模块后,建议使用 Zygisk 模式以获得更好的兼容性