当前位置:   article > 正文

Android12 HttpCanary系统证书安装 Magisk模块movecert_httpcanary 安卓12

httpcanary 安卓12

手机:pixel 6
系统:Android 12

HttpCanary高级版

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

HttpCanary证书的安装

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

![在这里插入图片描述](https://img-
blog.csdnimg.cn/0107e28226ad4714a19022714854e06d.png#pic_center)

分析了以下安卓的源码,在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进行安装,我已经试过了,安装之后重启,用户证书就全部移动到系统证书里了

![在这里插入图片描述](https://img-
blog.csdnimg.cn/45a4e9da06e64fdf9b9f465bb01a2bcb.png#pic_center)


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

网络安全工程师(白帽子)企业级学习路线

第一阶段:安全基础(入门)

img

第二阶段:Web渗透(初级网安工程师)

img

第三阶段:进阶部分(中级网络安全工程师)

img

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里 本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/440621

推荐阅读
相关标签