当前位置: 首页 > article >正文

Android 7 及以上夜神模拟器,Fiddler 抓 https 包

文章目录

      • 问题描述
      • 解决方案
      • 环境准备
      • 操作步骤
        • 1、导出 Fiddler 证书并修改成 .pem 和 .0 文件
        • 2、修改夜神模拟器配置
        • 3、打开夜神模拟器设备的 `USB 调试选项`
        • 4、将`0725b47c.0`证书放入夜神模拟器系统证书目录
        • 5、夜神模拟器 cmd 环境配置
        • 6、给 0725b47c.0 证书赋予权限
        • 7、打开 fiddler everywhere 进行抓包

问题描述

Android 从 7.0 开始系统不在信任用户 CA 证书(应用 targetSdkVersion >= 24 是生效,若是 targetSdkVersion < 24 即使系统是7.0+ 依然会信任)也就是说即使安装了用户 CA 证书,在 Android 7.0+ 的机器上,targetSdkVersion >=24 的应用 HTTPS 包就抓不到了。

解决方案

亲测有效!!!!!!
使用 OpenSSL 对 FiddlerRoot.cer 证书进行转换,然后放入手机系统证书目录内(/system/etc/security/cacerts------系统证书具体目录),并对其附加读写权限,以下为详细步骤。

环境准备

1、 下载抓包工具 Fiddler 或 Fiddler everywhere 版

  • 可直接从官网链接下载
  • Fiddler 免费版不能抓 HTTP/2 的包, Fiddler everywhere 版可以,绿色永久版可查看 fiddler everywhere 绿色永久版

2、 下载夜神模拟器

  • 夜神模拟器官网下载链接
  • 夜神模拟器帮助手册
  • 温馨提示:如果你用的是真机那么必须要过root

3、 OpenSSL 安装

  • 参考文章:保姆级OpenSSL下载及安装教程

4、 AndroidSDK 安装

  • AndroidSDK 官方下载链接
  • 下载完成后,环境配置和下面 操作步骤5.3 夜神模拟器 cmd 环境配置一样

操作步骤

1、导出 Fiddler 证书并修改成 .pem 和 .0 文件
  • 1.1 按下图步骤导出 Fiddler_Root_Certificate_Authority.crt 证书
  • 1.2 cmd 命令切换到证书的导出路径(默认导出桌面)
    例如:cd C:\Users\17710\Desktop ,每个人桌面路径不一定相同,将证书文件拖拽到 cmd 窗口,即可找到文件夹路径
  • 1.3 使用 OpenSSL 将 FiddlerRoot 证书的 crt 格式转换成 pem 格式
    openssl x509 -inform DER -in Fiddler_Root_Certificate_Authority.cer -out cacert.pem
  • 1.4 计算 pem 证书 hash 值-截取下图中箭头指向的 0725b47c 即可
    openssl x509 -inform PEM -subject_hash_old -in cacert.pem
  • 1.5 将桌面上的 cacaert.pem 证书 修改为 0725b47c.0 ,名称为上一步操作的 hash 值,后缀为 0
2、修改夜神模拟器配置
  • 2.1 启动一个Android 7 以上的模拟器,按照下图指示
    • 点击右上角设置,开启网络连接和网络桥接模式
    • 设置静态 IP,一般只需要修改IP 地址网关这两项即可,IP 地址可以自己设置,比如我的电脑 IP 是 192.168.1.3,可修改成下图的 IP
  • 2.2 确保模拟器已开启 Root
  • 2.3 修改完成后重启模拟器,以保证生效
  • 2.4 修改模拟器 WiFi 代理为手动,这里和真机的操作一样
3、打开夜神模拟器设备的 USB 调试选项
  • 3.1 连续点击下图所指的版本号五次,即可进入开发者模式

  • 3.2 搜索 USB 调试并打开

  • 3.3 开启 USB 调试选项

4、将0725b47c.0证书放入夜神模拟器系统证书目录
  • 4.1 直接拖拽0725b47c.0文件到夜神模拟器,会自动打开下图的文件夹,并复制成功
    在这里插入图片描述
  • 4.2 复制上图中的0725b47c.0文件,然后打开下图指示的根目录文件夹,点击右上角的粘贴按钮,即可将0725b47c.0证书放入系统证书目录
    在这里插入图片描述
5、夜神模拟器 cmd 环境配置
  • 5.1 找到夜神模拟器快捷方式,右键点击 打开文件所在位置
    在这里插入图片描述

  • 5.2 这个文件夹内可以看到有个 nox_adb 应用程序

  • 5.3 打开查看高级系统设置,进入下图页面,按照顺序进行配置环境变量地址即可

6、给 0725b47c.0 证书赋予权限
  • 6.1 使用 nox_adb devices 命令查看设备连接状态

    若出现下面版本号不一致的错误,可参考 adb devices 发现连不上模拟器
  • 6.2 使用 nox_adb conncet 127.0.0.1:62025 命令建立 adb 连接
    ! 注:夜神模拟器的端口是规律的,第一个模拟器端口是62001,第二个模拟器端口是62025,第三个是62025+1,以此类推)
  • 6.3 使用nox_adb -s 127.0.0.1:62025 shell 命令进入模拟器 shell 命令行
  • 6.4 使用mount -o remount -rw /system 命令给外层根目录中的 system 赋予权限
  • 6.5 使用cd system/etc/security/cacerts 命令到系统证书目录
  • 6.6 使用chmod 644 0725b47c.0 命令给证书赋予权限
  • 6.6 修改完成后,使用ls -l 命令查看权限是否启用,如下图所示:
  • 6.7 最后需要在把最外层system的权限改回去
    cd ../../../..
    mount -o remount -ro system
7、打开 fiddler everywhere 进行抓包

效果图如下:

参考文章:Android7及以上,抓https包-Fiddler篇

相关文章:

Android 7 及以上夜神模拟器,Fiddler 抓 https 包

文章目录 问题描述解决方案环境准备操作步骤1、导出 Fiddler 证书并修改成 .pem 和 .0 文件2、修改夜神模拟器配置3、打开夜神模拟器设备的 USB 调试选项4、将0725b47c.0证书放入夜神模拟器系统证书目录5、夜神模拟器 cmd 环境配置6、给 0725b47c.0 证书赋予权限7、打开 fiddle…...

全国医院数据可视化分析系统

【大数据】全国医院数据可视化分析系统 &#xff08;完整系统源码开发笔记详细部署教程&#xff09;✅ 目录 一、项目简介二、项目界面展示三、项目视频展示 一、项目简介 &#x1f3e5; 项目名&#xff1a;医疗导航神器&#xff01;——《基于大数据的微医挂号网医院数据可视…...

音视频入门基础:RTCP专题(1)——RTCP官方文档下载

一、引言 实时传输控制协议&#xff08;Real-time Transport Control Protocol或RTP Control Protocol或简写RTCP&#xff09;是实时传输协议&#xff08;RTP&#xff09;的一个姐妹协议。RTCP由《RFC 3550》定义&#xff08;取代废弃的《RFC 1889》&#xff09;。RTP使用一个…...

蓝桥杯专项复习——结构体、输入输出

目录 结构体&#xff1a;排序 输入输出 结构体&#xff1a;排序 [NOIP2007]奖学金 #include<iostream> #include<cstring> #include<algorithm>using namespace std;const int N310; int n;struct Student {int chinese,math,eng,sum;int idx; }Stu[N];//定…...

工作记录 2017-01-06

工作记录 2017-01-06 序号 工作 相关人员 1 协助BPO进行Billing的工作。 修改CSV、EDI837的导入。 修改邮件上的问题。 更新RD服务器。 郝 修改的问题&#xff1a; 1、 In “Full Job Summary” (patient info.), sometime, the Visit->Facility is missed, then …...

探索 Rust 高效 Web 开发:Hyperlane 框架深度解析

探索 Rust 高效 Web 开发&#xff1a;Hyperlane 框架深度解析 在当今的 Web 开发领域&#xff0c;追求高性能、轻量级的框架一直是开发者们的不懈追求。对于 Rust 语言开发者而言&#xff0c;Hyperlane 框架正以其独特的魅力崭露头角&#xff0c;为构建现代 Web 服务提供了一种…...

LLM(2):准备构建 LLM

在了解大语言模型一文中&#xff0c;对 LLM 做了初步介绍&#xff0c;本文接续前一篇文章的内容&#xff0c;简要介绍 LLM 的应用和构建过程。 1.2 LLM 的应用 由于大型语言模型&#xff08;LLMs&#xff09;在解析和理解非结构化文本数据方面具备先进能力&#xff0c;它们在…...

pytest+allure+jenkins

本地运行参考&#xff1a;pytestallure 入门-CSDN博客 jenkins运行如下&#xff1a; 安装插件&#xff1a;allure 配置allure安装目录 配置pytest、allure 环境变量 配置流水线 进行build,结果如下 ,点击allure report 查看结果...

[蓝桥杯]花束搭配【算法赛】

题目链接 题意 n朵花 每朵花有两个属性a,b 如果两朵花满足 a i a j > b i b j a_ia_j>b_ib_j ai​aj​>bi​bj​ 就称为完美方案 求一共有多少种完美方案 ( i , j ) 与 ( j , i ) (i,j)与(j,i) (i,j)与(j,i)视为不同组合 思路 数据范围 1 ≤ n ≤ 2 1 0 5 1\…...

大模型架构全景解析:从Transformer到未来计算范式

1. Transformer 架构 核心模型 GPT-4、BERT、T5、LLaMA、通义千问、文心ERNIE 关键技术 多头注意力&#xff1a;GPT-4 使用 96 头注意力位置编码创新&#xff1a;LLaMA 采用 RoPE&#xff08;旋转位置编码&#xff09;&#xff0c;Claude 3 引入 ALiBi归一化优化&#xff1…...

【linux篇】--linux常见指令

文章目录 一、Linux基本概念 二、Linux入门 1.目录结构 2.Linux命令 *Linux基础命令 ls命令的选项&#xff1a; 3.目录切换相关命令&#xff08;cd & pwd) 4.相对&绝对路径和特殊路径符 4.1相对路径 4.2绝对路径 4.3 你特殊路径符 5.创建目录命令&#xff08;mkdir) 6.…...

Kubernetes的组成和架构

Kubernetes&#xff08;K8s&#xff09;是一个开源的容器编排平台&#xff0c;用于自动化部署、扩展和管理容器化应用程序。它由多个组件组成&#xff0c;这些组件可以分为两类&#xff1a;控制平面&#xff08;Control Plane&#xff09;组件和节点&#xff08;Node&#xff0…...

ElementUI 表格中插入图片缩略图,鼠标悬停显示大图

如何在 ElementUI 的表格组件 Table 中插入图片缩略图&#xff0c;通过鼠标悬停显示大图&#xff1f;介绍以下2种方式&#xff1a; 方法1&#xff1a;直接在模板元素中插入 <template><el-table :data"tableData"><el-table-column label"图片…...

【实战ES】实战 Elasticsearch:快速上手与深度实践-附录-1-常用命令速查表-集群健康检查、索引生命周期管理、故障诊断命令

&#x1f449; 点击关注不迷路 &#x1f449; 点击关注不迷路 &#x1f449; 点击关注不迷路 附录-常用命令速查表 1-Elasticsearch 运维命令速查表&#xff08;集群健康检查、ILM管理、故障诊断&#xff09;一、集群健康检查与监控1.1 集群健康状态核心命令1.2 节点级健康诊断…...

PlainUSR|LIA: 追求更快的卷积网络实现高效的超分辨率重建

PlainUSR|LIA: 追求更快的卷积网络实现高效的超分辨率重建 引言 在深度学习领域&#xff0c;图像处理始终是一个热门话题。而超分辨率重建&#xff08;Super-Resolution Reconstruction, SR&#xff09;作为其中一个重要的研究方向&#xff0c;旨在通过算法将低分辨率图像恢复…...

Linux 命令学习记录

Linux 命令详解与进阶指南 Linux 是一种广泛使用的开源操作系统&#xff0c;掌握 Linux 命令是开发者和系统管理员的必备技能。本文将详细介绍 Linux 的常用命令&#xff0c;并涵盖一些高级进阶技巧&#xff0c;帮助你更高效地使用 Linux。 目录 基础命令 文件与目录操作文本…...

Android之RecyclerView列表拖动排序

文章目录 前言一、效果图二、实现步骤1.xml布局2.activity代码3.adapter 总结 前言 随着需求的变化&#xff0c;很多地方需要加拖动改变顺序的需求&#xff0c;用RecyclerView就可以实现列表拖动排序&#xff0c;列如像朋友圈图片拖动排序&#xff0c;或者音乐播放器列表拖动排…...

C# WPF 基础知识学习(一)

一、WPF 简介 Windows Presentation Foundation&#xff08;WPF&#xff09;是微软推出的一款用于构建用户界面的框架&#xff0c;它为开发 Windows 桌面应用程序提供了统一的编程模型、语言和框架。WPF 将用户界面的设计与业务逻辑分离开来&#xff0c;采用了 XAML&#xff0…...

MATLAB基于ResNet18的交通标志识别系统

1. 数据准备 数据集&#xff1a;该数据集包含了大量标注好的交通标志图片&#xff0c;每类标志都有不同的样本。数据预处理&#xff1a;图像需要进行一些基本的预处理&#xff0c;如调整大小、归一化等&#xff0c;以适应ResNet18的输入要求。 2. 网络设计 使用MATLAB自带的…...

CSS3-流星雨

1. 绘制标签 <div class"container"><span></span> </div>2. 设置div背景 在百度上搜索一幅星空的图片 <style>* {/* 初始化 */margin: 0;padding: 0;}body {/* 高度100% */height: 100vh;/* 溢出隐藏 */overflow: hidden;}.contai…...

数学建模 第一节

目录​​​​​​ 前言 一 优化模型的类型 二 线性规划1 线性规划2 三 0-1规划 总结 前言 数学建模主要是将问题转化为模型&#xff0c;然后再以编程的形式输出出来 算法都知道&#xff0c;数学建模也需要用到算法&#xff0c;但是不是主要以编程形式展示&#xff0c;而是…...

平方矩阵问题

Ⅰ 回字形二维数组 #include <iostream> #include <iomanip> using namespace std; int main(){int n;while(cin>>n,n){for(int i0; i<n;i){for(int j0; j<n; j){int upi, downn-i1, leftj, rightn-j1;cout<<min(min(up,down),min(left,right)…...

自动化立体仓库堆垛机HMI屏幕程序施耐德HMIGXU系列 Vijeo Designer功能设计

堆垛机HMI屏幕功能概况 在自动化立体仓库堆垛机的HMI屏幕程序里,有着施耐德HMIGXU系列Vijeo Designer功能设计。此HMI程序运用标准的工程组织结构,凭借拖拽方式迅速构建人机交互界面。 其主要功能涵盖:设备参数、设备状态、手动/自动操作控制、报警显示、IO信息监控等模块…...

孤儿进程与僵尸进程:Linux进程管理中的“隐形杀手”与“无主孤儿”

在Linux系统中&#xff0c;进程的生命周期管理是系统稳定运行的关键。其中&#xff0c;​孤儿进程和僵尸进程是两种特殊状态&#xff0c;它们看似相似却暗藏玄门。本文将从定义、区别到处理方法&#xff0c;揭开它们的神秘面纱。 一、孤儿进程&#xff1a;被“遗弃”的孩子&…...

信息系统运行管理员教程6--信息系统安全

信息系统运行管理员教程6–信息系统安全 第1节 信息系统安全概述 1.信息系统安全的概念 信息系统安全是指保障计算机及其相关设备、设施&#xff08;含网络&#xff09;的安全&#xff0c;运行环境的安全&#xff0c;信息的安全&#xff0c;实现信息系统的正常运行。信息系统…...

实验- 分片上传 VS 直接上传

分片上传和直接上传是两种常见的文件上传方式。分片上传将文件分成多个小块&#xff0c;每次上传一个小块&#xff0c;可以并行处理多个分片&#xff0c;适用于大文件上传&#xff0c;减少了单个请求的大小&#xff0c;能有效避免因网络波动或上传中断导致的失败&#xff0c;并…...

训练数据重复采样,让正负样本比例1:1

详细解释 resample 函数&#xff1a; resample 函数来自 sklearn.utils&#xff0c;用于从数据集中重新抽样。replaceTrue 表示允许重复抽样&#xff0c;即同一个样本可以被多次选中。n_samples 指定抽样的数量。 确保训练集数量相同&#xff1a; 通过 resample 函数&#xff…...

生活中的可靠性小案例12:类肤材质老化发粘问题

我一直觉得我买的某品牌车载吸尘器很好用&#xff0c;用了几年&#xff0c;目前性能也是杠杠的。然而它现在有个最大的问题&#xff0c;就是表面发粘了&#xff0c;用起来粘手&#xff0c;非常不舒服。 这一类问题在生活中不少见&#xff0c;尤其是一些用了类肤材质涂层的物件。…...

qt 自带虚拟键盘的编译使用记录

一、windows 下编译 使用vs 命令窗口&#xff0c;分别执行&#xff1a; qmake CONFIG"lang-en_GB lang-zh_CN" nmake nmake install 如果事先没有 指定需要使用的输入法语言就进行过编译&#xff0c;则需要先 执行 nmake distclean 清理后执行 qmake 才能生效。 …...

python中print函数的flush如何使用

在 Python 中&#xff0c;print 函数的 flush 参数是一个布尔值&#xff0c;默认值为 False。当设置为 True 时&#xff0c;它会强制将输出缓冲区的内容立即刷新到目标设备&#xff08;通常是控制台&#xff09;&#xff0c;而不是等待缓冲区满或者程序结束时才输出。 要注意fl…...