证书安装
安卓
Android < 7
访问Burp监听端口,下载证书,修改后缀为cer
,点击安装即可
[!NOTE]
如果点击不能安装,就从设置的“从存储设备安装”功能安装
Android >= 7
[!NOTE]
Android 从 7.0 开始,系统不再信任用户 CA 证书(应用 targetSdkVersion >= 24 时生效,如果 targetSdkVersion <24 即使系统是 7.0 + 依然会信任)。也就是说即使安装了用户 CA 证书,在 Android 7.0 + 的机器上,targetSdkVersion>= 24 的应用的 HTTPS 包就抓不到了。
访问Burp监听端口,下载证书
使用如下命令计算证书的hash值(结果应该都一样)
openssl x509 -inform der -subject_hash_old -in cacert.der -noout
将证书名改为<hash>.0
,并将其移动到手机的(/data/local/tmp
)目录
mv cacert.der 9a5ba575.0
adb push 9a5ba575.0 /data/local/tmp
然后用MT管理器
将其移动到/system/etc/security/cacerts/
目录
[!TIP]
用adb 移动会提示
read only
,尝试挂载mount -o remount,rw /system
会提示busy
,用adb root
可能会存在adbd cannot run as root in production builds
,所以建议用MT管理器,什么问题没有。
然后在 设置 -> 安全 -> 信任的凭据
中可以看到证书已经安装到系统证书
IOS
访问Burp监听端口,下载证书,会自动跳转到“安装描述文件”页面,点击右上角的安装即可。
安装后点击 设置 -> 通用 -> 关于本机
最下方 的 证书信任设置
,开启证书即可。
Wi-Fi代理
在Wi-Fi设置处,配置手动代理,服务器填写Burp IP,端口填写Burp端口即可。
shadowrocket 【IOS】
IOS设备可通过小火箭shadowrocket添加节点,配置HTTP代理到burp进行抓包
Drony 【Android】
下载地址:https://apkpure.com/drony/org.sandroproxy.drony
上面设置好的代理默认是代理所有流量,如果只需要抓特定APP的,可以进行如下设置。
ADB全局代理【Android】
# 设置代理
adb shell settings put global http_proxy 10.8.123.123:7890
# 去掉代理
adb shell settings delete global http_proxy
adb shell settings delete global global_http_proxy_host
adb shell settings delete global global_http_proxy_port
测试chrome,可成功代理流量出来。