前段时间碰到一个测试小程序的需求,访问的是 https 的,去网上搜索了一下如何配置,都是关于 Burp 和浏览器配置的,千篇一律。搜的 Burp 抓手机 https,不是要 root 就是要 xposed 框架,后来跟同事请教讨论了一下,简单总结下,mark 一下。
配置电脑端的浏览器,首先,你需要有 burp 的证书。获取方法:打开 burp,配置好浏览器后,访问 http ://burp,点击 CA Certificate 下载即可。
下载后需要导入浏览器,以火狐为主(版本为 20180708 最新版,根据时间推移,可能会更新,此方法可能不再适用,但大同小异),找到隐私与安全下的查看证书,选择证书颁发机构一栏,导入即可,导入的名称为 PortSwigger CA。如下图:
随后,就可以抓 https 包了,如下图:
需要注意的是,chrome 下不可以,有拦截机制,https 的一律不准抓,所以可以使用 firefox 或 ie 或其他浏览器。
首先需要导出 burp 证书,因为需要的是 cer 格式,而不是 der 的,所以这次不从浏览器下载了,而是从 burp 中导出证书。打开 burp 的 proxy 项下的 options 栏,点击 Import/export CA certificate,如下图:
随后选择 Export 下的 Certificate in DER format,然后下一步,如下图:
选择文件的存储位置,输入名称 + 后缀,比如 cacert.cer,如下图:
然后点击保存,随后下一步,如下图:
最后,会提示导出成功,点击 close 关闭即可,如下图:
然后将这个证书传到手机上,问 qq 可以么,答案是可以。例如我通过 qq 的我的电脑传给手机。传到手机后,需要安装,先说一个最简单的方法,就是直接点开那个证书,就可直接安装,如果提示文件暂不支持本地查看,那就选择用其他应用打开。这时候就会跳出安装证书页,凭据用途选择 VPN 和应用,如下图:
点击保存即可。另外一个安装方法就是打开手机的设置,手机不同可能位置不一样,oppo 的在其他设置下的安全与隐私中有一个从存储设备安装证书,小米手机在更多设置下的系统安全有一个从 sd 卡安装凭据。基本上就是去其他设置找关于隐私的安全的栏目。点开后选择证书的存储位置,这时候就和刚才 qq 里安装的一样,凭据用途选择 vpn 和应用,保存即可。
这时候可以点击信任的凭据栏,查看已经安装的证书,我的在用户里,名称为 PortSwigger,如下图:
这时候把手机和电脑连在同一个局域网或同一个无限,把手机代理设置为电脑的 ip 地址,用手机访问 https 应用或地址,会发现 burp 可以抓包了,如下图:
网站的 https 或 app 应用以及小程序都可以以此来做测试。