如何安装安卓(Android 7.0+)CA根证书

news2024/9/24 13:13:04

简介

写这个教程时,已经是2023年,现在最新的安卓系已经是Android 13 。从Android7.0以后系统不再信任用户的证书,导致我们在使用一些网络调试工具时非常不便,为了解决这个问题,本教程将教你如何一步步操作,将用户级别的CA证书安装为系统级的CA证书

前提条件

  • 手机或模拟器已root
  • 安装adb工具
    • adb全称 Android Debug Bridge(安卓调试桥) tools。它就是一个命令行窗口,用于通过电脑端与模拟器或者是设备之间的交互,类似于我们使用xshell工具与Linux服务器进行连接。
  • 安装openssl

开始步骤

在开始操作之前,我们需要确保前提条件都已经准备完毕,下面我们先开始一步步将这些前提条件必需的工具都准备

安装手机或模拟器已root

我这里使用逍遥模拟器进行演示,如果你是手机或者其他模拟器,操作步骤大同小异

安装逍遥模拟器

  1. 安装过程省略…
  2. 安装后打开右上角系统设置

  1. 打开Root模式开关,如果已经开启可忽略

安装完毕后,我们看下一步

安装adb工具

由于我这里使用的是模拟器,通常模拟器安装后自带adb连接工具,就没必要单独安装了。但如果你使用的是手机,那你仍然需要安装,下面是一个简单的安装步骤:

  1. 首先下载platform-tools
  2. 解压得到如下文件,可以看到第一行有一个adb.exe的文件,它就是后面要使用的adb连接工具

adb连接工具我们已经准备完毕,下面看openssl的安装

安装openssl

  1. 下载openssl便捷版,下载地址https://slproweb.com/products/Win32OpenSSL.html,找到下面的位置:

下载第一个用户版本即可,这是一个exe文件,所以下载后直接双击下一步安装,过程省略…

正常安装完毕后,我们打开cmd命令行工具,输入:openssl version,如果有出现版本号,说明安装没问题,如果没有出现或者提示不是有效的命令时,可能是环境变量没有配置,下面是安装后正常的命令显示:

 

 

到此openssl就已经安装完成

下载CA证书

我们这里使用疯狂URL的web模式,然后将CA证书下载到电脑上,具体步骤如下:

  1. 启动疯狂URL并选择当前网卡(随便选都可以)
  2. 将模式切换为web代理模式(*注意:第一次切换改模式时,会提示安装CA证书,你需要点击是,并且如果系统有网络防火墙或第三方杀毒软件的网络防火墙拦截时,你需要允许它通过,否则后面就白操作了,强烈建议远离360,可能会拦截掉)

 

接下来我们菜单-选择下载CA证书

然后会打开浏览器并看到下面的页面,在最底部,点击FiddlerRoot certificate 会下载CA证书,这个证书是我们后面要安装到模拟器中的

 

下载后的文件如下:

 

计算证书的hash值

在刚刚下载的证书FiddlerRoot.cer位置,打开cmd命令行工具,输入以下命令:

//.cer格式证书
openssl x509 -inform DER -subject_hash_old -in FiddlerRoot.cer

复制生成的hash值,我们将刚刚的证书FiddlerRoot.cer  改名为269953fb.0

将证书安装到模拟器系统根证书目录

  • 首先打开使用adb连接工具连接将证书推送到模拟器的根目录,使用使用以下命令:
    1. adb push 269953fb.0 /sdcard

模拟器的根目录最终效果:

 

  • 然后我们使用以下命令操作,系统证书目录的读写权限,因为默认是没有权限的,导致可能无法将刚刚的证书移动到系统证书目录
adb shell

su
mount -o remount,rw /system

 

 

  • 将第一步推送到根目录的证书复制到系统证书目录
cp /sdcard/269953fb.0 /system/etc/security/cacerts/

  1. 通常没有报错,就说明移动成功了,不过为了确定成功,我们还是继续操作看下面看一下
    1. 进入手机或模拟器系统目录查看是否移动成功命令:
cd /system/etc/security/cacerts
ls

最后修改证书权限为644,使用以下命令 

chmod 644 /system/etc/security/cacerts/269953fb.0  
恢复挂载为只读 
mount -o remount,ro /system

重启模拟器
reboot

测试

到此,将CA证书安装到安卓系统证书目录已经完成,接下来你可以简单使用模拟器配置代理,然后在疯狂URL中捕捉https的流量进行分析了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/985986.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

分类预测 | MATLAB实现PCA-LSTM(主成分长短期记忆神经网络)分类预测

分类预测 | MATLAB实现PCA-LSTM(主成分长短期记忆神经网络)分类预测 目录 分类预测 | MATLAB实现PCA-LSTM(主成分长短期记忆神经网络)分类预测预测效果基本介绍程序设计参考资料致谢 预测效果 基本介绍 MATLAB实现PCA-LSTM(主成分长短期记忆神经网络)分类预测。Matlab实现基于P…

Unity中Shader的屏幕坐标

文章目录 前言一、屏幕坐标1、屏幕像素的坐标2、屏幕坐标归一化 二、在Unity中获取 当前屏幕像素 和 总像素1、获取屏幕总像素,使用_ScreenParams参数2、获取当前片段上的像素怎么使用:在片元着色器传入参数时使用 前言 Unity中Shader的屏幕坐标 一、屏幕坐标 1、屏幕像素的坐…

YOLOV7改进-添加CoordConv(坐标卷积)

坐标卷积link 只替换FPN1x1卷积层和检测头中的第一卷积层 1、复制到common文件夹最后 2、做改进对比实验时,不要载入与训练权重 3、yolo.py解析模型里面 4、对yolov7.yaml的配置文件修改 5、对fpn1x1卷积替换

HCIA自学笔记01-冲突域

共享式网络(用同一根同轴电缆通信)中可能会出现信号冲突现象。 如图是一个10BASE5以太网,每个主机都是用同一根同轴电缆来与其它主机进行通信,因此,这里的同轴电缆又被称为共享介质,相应的网络被称为共享介…

使用PHPStudy在本地快速建立网站并实现局域网外访问(无公网IP)

文章目录 使用工具1. 本地搭建web网站1.1 下载phpstudy后解压并安装1.2 打开默认站点,测试1.3 下载静态演示站点1.4 打开站点根目录1.5 复制演示站点到站网根目录1.6 在浏览器中,查看演示效果。 2. 将本地web网站发布到公网2.1 安装cpolar内网穿透2.2 映…

前端面试题JS篇(1)

JS 的各种位置,比如 clientHeight,scrollHeight,offsetHeight ,以及 scrollTop, offsetTop,clientTop 的区别 clientHeight:表示的是可视区域的高度,不包含 border 和滚动条offsetHeight:表示可视区域的高度,包含了 b…

React 状态管理 - Redux 进阶(下)提升开发体验

目录 扩展学习资料 Reselect【数据持久化】&Immutable Data【不变数据】方案【解决某些场景重复渲染,重复计算的问题】 /src/reducer/index.js Reselect【 可缓存的筛选项,当数据量大的时候,可以节省diff时间,提升渲染效率…

[B题]2023 年全国大学生数学建模比赛思路、代码更新中.....

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

力扣刷题总结一:模拟+哈希表+双指针+前缀和+滑动窗口

模拟 根据题目意思,捋清整个流程,使用代码去模拟整个流程 例题 种花问题 class Solution:def canPlaceFlowers(self, flowerbed: List[int], n: int) -> bool:# 模拟,在数组前后各添加1个0,从第1个元素到倒数第2个元素&…

CMake输出编译时间信息

使用CMake进行编译的代码,有时候会希望获得当前代码编译的时间信息,使用CMake提供的函数和宏等功能可以实现这个功能,下面是实现这个功能的一段代码 原文链接: CMake输出编译时间信息

YOLOV7改进-最新的可变形卷积V3

DCNv3 1、先编译这个文件,放到models文件夹下,再编译 2、编译命令 3、复制到common文件最后 4、源文件用的是LN,由于这里用的都是LN,所以也改了 5、原文也是没接激活函数的,但是按照yolo格式来说,会接一个 6、不加激活函数就把act去掉 7、DCNv3只在gpu上运行,所以下…

记一次时间序列算法的自回归预测--ARAutoreg

背景 最近公司给客户要做一些数据的预测,但是客户不清楚哪些做起来比较符合他们的,于是在经过与业务方的沟通,瞄准了两个方面的数据 1.工程数据:对工程数据做评估,然后做预警,这个想法是好的,…

java 咖啡餐厅管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 JSP 咖啡餐厅管理系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为 TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0…

【2023最新版】DataGrip使用MySQL教程

目录 一、安装MySQL 二、安装DataGrip 三、DataGrip使用MySQL 1. 新建项目 2. DataGrip连接MySQL 下载驱动文件 填写root密码 测试 成功 3. DataGrip操作MySQL 四、MySQL常用命令 1. 登录 2. 帮助 3. 查询所有数据库 一、安装MySQL MySQL是一种开源的关系型数据库…

java: 读取snakeyaml-1.26.jar各种jar包时出错; error in opening zip file

可能的问题 jar有问题idea没有权限等等其他问题。但执行后报错就是读取不了,还报error in opening zip file这个错。 解决问题 我的错就是jar包有问题。我先后进行了很多次把jar包位置里的东西全部删除,然后重新maven下载但是不管用。最后从网站上下载…

Kotlin委托Delegate托管by

Kotlin委托Delegate托管by import kotlin.reflect.KPropertyfun main() {var user: String by MyDelegate()user "fly"println(user) }class MyDelegate {private var v: String? nulloperator fun getValue(thisRef: Any?, property: KProperty<*>): Stri…

基于SSM的实验室耗材管理系统

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用JSP技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

解决方案 | 电子签让公共事业服务更便捷

为深入贯彻落实国务院关于深化“放管服”改革的号召&#xff0c;各地政府纷纷出台创新举措&#xff0c;优化营商环境&#xff0c;将公共事业服务纳入“一网通办”的范畴。 政策助力&#xff0c; 让公共事业服务实现“足不出户”线上办 上海&#xff1a;上海市大数据中心与国网…

Discourse 的无效附件清理

Discourse 对上传的附件会进行清理&#xff0c;对于一些没有任何被引用的附件&#xff0c;Discourse 会认为是垃圾而清理掉。 原因应该是为了降低存储空间的使用&#xff0c;但是我们目前使用的是 S3 &#xff0c;所以对存储空间并没有太多的要求。 根据官方的说法&#xff0…

SpringBoot配置优先级和Bean管理

SpringBoot配置优先级和Bean管理 1&#xff09;SpringBoot配置优先级2&#xff09;Bean管理【1】获取bean【2】bean作用域【3】第三方bean 1&#xff09;SpringBoot配置优先级 优先级(低>高) application.yaml(忽略)application.ymlapplication.propertiesjava系统属性(-Dxx…