首先简单说一下可root手机抓包的证书问题: 高版本的安卓(应该是从7.0开始)提高了安全策略,第三方证书必须放在系统区内才会生效。然而默认安装的第三方证书只是在用户区,因此很多新手抓包的时候都会碰到一抓https的包便提示无网络。 通用方法:root后用root explorer或者mt之类的文件管理器,把/data/misc/user/0/cacert-add下面的xxxx.0文件(前提是第三方的crt格式的证书已经安装了,安装形式为默认),移动或复制到/system/etc/security/cacerts 下面,移动前给予手机根目录读写权限,移动证书重启后生效。
Magisk模块方法(推荐):现在手机root基本都用的面具,因此墙裂推荐一个Magisk模块——“Move Certificates”,在安装第三方证书之前,在Magisk模块的仓库里搜索并安装“Move Certificates”,然后重启,以后你安装的任何证书都直接在系统分区了!
下面重头戏来了——无root手机的证书方案! 对于无法解BL的各大品牌手机还有不想root的手机,无root抓包方案我推荐:VMOS+小黄鸟 真机安装小黄鸟HttpCanay和安卓虚拟机vmos;
小黄鸟的设置中目标应用-指定为VMOS。
SSL证书设置-选择导出根证书,类型System Trusted (.0);
导出的证书储存路径为:内部储存/HttpCanary/cert/
打开虚拟机VMOS,新建一个虚拟机,推荐官方的7.1精简系统,给予root权限。 选择文件中转站—我要导入:你要抓包的目标APP(或者apk安装包)+xxxxx.0格式的证书;
打开并赋予root explorer或者mt之类的文件管理器root权限,刚刚导入的证书自动保存在虚拟机的VMOSfiletransferstatio目录下,将其复制到虚拟机的系统内:/system/etc/security/cacerts/目录下即可。 如果无法挂载可尝试re管理器挂载读写权限。
返回真机启动小黄鸟,目标应用-设置VMOS-开启抓包返回虚拟机-启动目标APP 即可在真机抓包了
|