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

2023-11-12

手机: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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android12 HttpCanary系统证书安装 Magisk模块movecert 的相关文章

  • 卸载后 Web 应用程序不显示“添加到主屏幕”

    这是我第一次创建网络应用程序 我设法解决了这个问题 所以我得到了实际的 chrome 提示 将其添加到主屏幕 然后我从手机上卸载了该网络应用程序 因为我想将其展示给我的同事 但是 屏幕上不再出现提示 问题 这是有意为之的行为还是我的应用程序
  • SearchView过滤ListView

    我已经实现了搜索视图来过滤我的列表视图项目 当我输入任何文本时 它会过滤列表 但当我退出搜索视图时 它不会返回原始列表项 public class PlacesListAdapter extends ArrayAdapter
  • 如何在android中获取Camera2 API的当前曝光

    In android hardware Camera旧的 我使用下面的代码获取当前曝光并获取它Camera Camera Parameters param mCamera getParameters currentExposure para
  • 是否可以将数组或对象添加到 Android 上的 SharedPreferences

    我有一个ArrayList具有名称和图标指针的对象 我想将其保存在SharedPreferences 我能怎么做 注意 我不想使用数据库 无论 API 级别如何 请检查SharedPreferences 中的字符串数组和对象数组 http
  • Android Activity 生命周期函数基础知识

    我正在测试这段代码 它显示活动所处的状态 public class Activity101Activity extends Activity String tag Lifecycle Called when the activity is
  • 当文本输入聚焦在 React Native for Android 的底部工作表上时,视图移出屏幕

    我正在使用图书馆 https github com osdnk react native reanimated bottom sheet https github com osdnk react native reanimated bott
  • Android 模拟器插件无法初始化后端 EGL 显示

    我在 Cloudbees 上设置了 Jenkins 作业 并且可以在那里成功签出并编译我的 Android 项目 现在我想在 android 模拟器中运行一些 JUnit 测试并添加 Android 模拟器插件 我将 显示模拟器窗口 选项设
  • Android 中 Kotlin 协程的正确使用方式

    我正在尝试使用异步更新适配器内的列表 我可以看到有太多的样板 这是使用 Kotlin 协程的正确方法吗 这个可以进一步优化吗 fun loadListOfMediaInAsync async CommonPool try Long runn
  • CollapsingToolBarLayout - 状态栏稀松布颜色不改变

    几天前我更新了我的 android studio 并开始使用 CoordinatorLayout 和 CollapsingToolbarLayout 只是尝试一些东西 工具栏稀松布颜色似乎覆盖了状态栏初始颜色和状态栏稀松布颜色 从 xml
  • Android SIP 来电使用带有广播接收器的服务

    大家好 其实我正在尝试创建一个应用程序 支持基于 SIP 通过互联网进行音频呼叫 这里使用本机 sip 我遇到了来电问题 我已经完成了服务的注册部分 但是在接听电话时我无法接听电话 请帮助我 Service file package exa
  • 在 HTTPResponse Android 中跟踪重定向

    我需要遵循 HTTPost 给我的重定向 当我发出 HTTP post 并尝试读取响应时 我得到重定向页面 html 我怎样才能解决这个问题 代码 public void parseDoc final HttpParams params n
  • 如何使用 IF 检查 TextView 可见性

    我有一个 onCheckedChangeListener 来根据选择的单选按钮显示文本视图 我有 1 个疑问和 1 个难题 想知道是否有人可以帮助我 问题 您能否将单选组默认检查值设置为 否 单选按钮 以便一开始就不会检查任何内容 问题 如
  • 在 SQLite 中搜索时排除 HTML 标签和一些 UNICODE 字符

    更新 4 我已经成功运行了firstchar例如 但现在的问题是使用regex 即使包含头文件 它也无法识别regex操作员 有什么线索可以解决这个问题吗 更新 2 我已经编译了sqlite3我的项目中的库 我现在正在寻找任何人帮助我为我的
  • Google 云端硬盘身份验证异常 - 需要许可吗? (v2)

    我一直在尝试将 Google Drive v2 添加到我的 Android 应用程序中 但无法获得授权 我收到 UserRecoverableAuthIOException 并显示消息 NeedPermission 我感觉 Google A
  • 在两个活动之间传输数据[重复]

    这个问题在这里已经有答案了 我正在尝试在两个不同的活动之间发送和接收数据 我在这个网站上看到了一些其他问题 但没有任何问题涉及保留头等舱的状态 例如 如果我想从 A 类发送一个整数 X 到 B 类 然后对整数 X 进行一些操作 然后将其发送
  • 在 android DatePickerDialog 中将语言设置为法语

    有什么办法可以让日期显示在DatePickerDialog用法语 我已经搜索过这个但没有找到结果 这是我的代码 Calendar c Calendar getInstance picker new DatePickerDialog Paym
  • 在activity_main.xml中注释

    我是安卓新手 据我所知 XML 中的注释与 HTML 中的注释相同 使用 形式 我想在 Android 项目的 Activity main xml 配置文件中写一些注释 但它给了我错误 值得注意的是 我使用的是 Eclipse 但目前 我直
  • 将两个文本视图并排放置在布局中

    我有两个文本视图 需要在布局中并排放置 并且必须遵守两条规则 Textview2 始终需要完整显示 如果布局中没有足够的空间 则必须裁剪 Textview1 例子 文本视图1 文本视图2 Teeeeeeeeeeeeeeeeeextview1
  • 按日期对 RecyclerView 进行排序

    我正在尝试按日期对 RecyclerView 进行排序 但我尝试了太多的事情 我不知道现在该尝试什么 问题就出在这条线上适配器 notifyDataSetChanged 因为如果我不放 不会显示错误 但也不会更新 recyclerview
  • 强制 Listview 不重复使用视图(复选框)

    我做了一个定制Listview 没有覆盖getView 方法 Listview 中的每个项目都具有以下布局 联系布局 xml

随机推荐

  • Git安装操作流程(超超超级详细)

    一 前言 被迫投向程序媛的行列 一切都要白手起家 接下来就以初学者的视角手把手记录 git 教程 由于我体质特殊 过手的普通操作也总能有各类bug 因此教程也会不定期更新我的bug们 二 Git 下载及安装 1 Git 安装 首先去 Git
  • html jwt权限控制,SpringBoot+SpringSecurity+JWT实RESTfulAPI权限控制

    在整合jwt之前 我们首先要在SpringBoot中整合security的模块 来实现基于security的授权控制 用过security的人都知道 它的功能无比的强大比shiro还要强大 但是今天我就介绍security中关于权限控制和是
  • Linux基础与实操_韩顺平mooc知识点笔记

    Linux 目录 Linux 一 介绍 1 1目录结构 二 实操 2 1远程登陆 2 2 vi和vim 2 2 1 三种模式 2 2 2 快捷键 2 3 关机 重启 2 5 用户管理 2 5 1 用户家目录 2 5 2 添加用户 2 5 3
  • java入门到进阶书单

    入门 1 2年 初级 Head First Java 主要讲设计模式 这个是设计思想方面的 我之所以觉得它应该最早学 就是觉得这个对今后你看jdk tomcat源码 看第三方项目源码 以及一些大数据中间源码有所帮助 另外也有一本书叫 大话设
  • Matlab-矩阵

    目录 一 矩阵的操作 1 创建矩阵 1 建立简单矩阵 2 建立特殊矩阵 3 希尔伯特 Hilbert 矩阵 4 托普利兹 Toeplitz 矩阵 5 0 1间均匀分布的随机矩阵 6 标准正态分布随机矩阵 7 魔方矩阵 8 帕斯卡矩阵 9 范
  • IT中文技术站十大网站收藏

    1 CSDN www csdn net CSDN Chinese Software Developer Network 创立于1999年 是中国的IT社区和服务平台 为中国的软件开发者和IT从业者提供知识传播 职业发展 软件开发等全生命周期
  • 六种线程状态详解

    1 线程状态概述 线程从创建到运行到结束是一个线程的生命周期 当线程被创建到结束过程中 不是一直处于运行状态的 下面来介绍一下线程从运行到结束所有的状态 线程状态 导致状态发生条件 NEW 新建 线程刚被创建 没有启动 也就是还没调用sta
  • LeetCode 841.钥匙和房间 - C++ - 小结

    钥匙和房间 有 N 个房间 开始时你位于 0 号房间 每个房间有不同的号码 0 1 2 N 1 并且房间里可能有一些钥匙能使你进入下一个房间 在形式上 对于每个房间 i 都有一个钥匙列表 rooms i 每个钥匙 rooms i j 由 0
  • python制作模型排放清单_四川省人为源大气污染物排放清单及特征

    大气污染源排放清单是污染源在一定时间跨度和空间区域内排放到大气中的各种污染物的数量列表 在支持空气质量管理决策的技术体系中 构建准确 完整和更新及时的大气污染物排放清单是识别污染来源的基础环节 也是制订污染控制策略的根本依据 同时也对大气污
  • 【论文笔记】Interventional Few-Shot Learning

    概述 目前流行的meta learning fine tuning等小样本学习方法都利用外部知识进行预训练 以使模型在小样本上有好的效果 而预训练知识很可能会成为影响样本特征与标签之间的关系的混杂因素 使模型得到错误的结果 本文从因果的角度
  • error while loading shared libraries: libssl.so.6

    执行 scripts mysql install db user mysql 安装mysql的时候报错 bin my print defaults error while loading shared libraries libssl so
  • synchronized、volatile底层原理详解

    文章目录 一 synchronized 1 监视器Monitor monitor结构及原理 监视器Monitor有两种同步方式 互斥与协作 2 Mutex lock mutex的工作方式 3 java对象头 java对象布局 4 无锁 偏向
  • PCL 安装

    1 安装pcl 1 1下载文件 地址链接 Release PCL 1 11 1 PointCloudLibrary pcl GitHub 下载的文件 PCL 1 11 1 AllInOne msvc2019 win64 exe pcl 1
  • 使用groupingcomparator求同一订单中最大金额的订单

    有如下订单数据 现在需要求出每一个订单中成交金额最大的一笔交易 订单id 商品id 成交金额 Order 0000001 Pdt 01 222 8 Order 0000001 Pdt 05 25 8 Order 0000002 Pdt 03
  • Linux内存精确统计工具

    1 ps mem介绍 ps mem是一个可以帮助我们精确获取 Linux 中各个程序核心内存使用情况的简单python脚本 它会分别计算一个程序私有内存总量和共享内存总量 并以更准确的方式给出了总的内存使用量 2 安装方式 包管理器 pip
  • qq 浏览器不支持java_各种浏览器开启JavaScript脚本方法

    随着网站设计技术的发展 为了用户友好体验 大部分网站使用了JavaScript脚本设计 如果您的浏览器禁用或关闭的JavaScript支持 那么可能造成网站体验差或网站部分功能无法使用 下面提供10种浏览器如何开启JavaScript的方法
  • 电商平台项目------首页

    目录 Mock swiper seiper的基本使用 swiper在vue中的问题 组件通讯的方式 props 父给子通讯 自定义事件 子给父通讯 父组件通过ref获取子组件数据 全局事件总线 bus 全能 作用域插槽 vuex paren
  • Perl中变量值交换

    示例 a 1 b 2 print a a b b a print a
  • empty ajax,php - Javascript Array empty not empty (Ajax) - Stack Overflow

    I m trying to retrieve the address that API google send me into an array The problem is that I just received an array em
  • Android12 HttpCanary系统证书安装 Magisk模块movecert

    手机 pixel 6 系统 Android 12 HttpCanary高级版 想要无限制使用高级功能的可以参照我的这篇文章实战 逆向最新黄鸟抓包软件 HttpCanary证书的安装 之前我一直使用的Android 8 证书可以直接通过Htt