Android12 HttpCanary系统证书安装 Magisk模块movecert

Posted 马到成功~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android12 HttpCanary系统证书安装 Magisk模块movecert相关的知识,希望对你有一定的参考价值。

手机:pixel 6
系统:android 12

HttpCanary高级版

想要无限制使用高级功能的可以参照我的这篇文章实战 逆向最新黄鸟抓包软件

HttpCanary证书的安装

之前我一直使用的Android 8,证书可以直接通过HttpCanary安装,但Android 12系统好像不可以了,提示信息如下:

分析了以下安卓的源码,在com.android.certinstaller.CredentialHelper类下的hasOnlyVpnAndAppsTrustAnchors方法是限制的证书安装的关键方法,源码如下:


如果这个证书用于应用和VPN则返回true,因此只要hook它让其永远返回false就绕过了CA证书安装的限制,我根据此原理写了一个名叫BypassCertLimit的Xposed模块,链接在文末

我手机安装的是LSPosed,其使用步骤如下:

首先激活该模块

然后点击该模块进入目标软件的选择,点击右上方的三个点,再点击隐藏


取消系统应用的选择

然后搜索cert,找到证书安装程序并选择

最后强制停止HttpCanary让该模块生效,之后就能正常安装CA证书了,如图:

至此证书已经安装在了用户凭据中了,但安卓7.0以后,安卓不信任用户安装的证书,所以抓https时无法解码请求,对于第三方应用,需要将证书添加为系统证书

那么如何添加呢?其核心步骤就是把证书移动到/system/etc/security/cacerts/路径下,这就需要重新挂载/system为可读可写,可是android 12不允许挂载该目录的,root用户也不可以,解决方案见下文。

把用户凭据移动至系统凭据

该解决方法采用了Magisk模块,我安装的Magisk版本为v25.1,这个版本已经不支持在线安装模块了,因此我使用了FoxMagiskModuleManager进行了替代,链接:https://github.com/Fox2Code/FoxMagiskModuleManager

移动证书的模块是movecert,链接:https://github.com/Magisk-Modules-Repo/movecert,下载zip包后移动到/sdcard/Download路径下,使用FoxMagiskModuleManager从本地进行安装,这个模块不能直接通过Magisk进行安装,我已经试过了,安装之后重启,用户证书就全部移动到系统证书里了


安装包:
BypassCertLimit
FoxMmm-0.5.4.apk
movecert-1.9

以上是关于Android12 HttpCanary系统证书安装 Magisk模块movecert的主要内容,如果未能解决你的问题,请参考以下文章

Android不信任证书导致无法抓包的解决办法

【HttpCanary】Android网络分析工具HttpCanary使用教程

HttpCanary——最强Android抓包工具!

HttpCannary根证书未安装,无法抓取SSL,TLS加密数据包问题解决方法

HttpCannary根证书未安装,无法抓取SSL,TLS加密数据包问题解决方法

HttpCannary根证书未安装,无法抓取SSL,TLS加密数据包问题解决方法