安卓模拟器内app抓包 导入证书到安卓系统证书

2023-10-22 18:30

本文主要是介绍安卓模拟器内app抓包 导入证书到安卓系统证书,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

安卓模拟器抓包

      • 准备抓包软件
        • 1.burp
        • 2.fiddler
          • 下载地址
          • fiddler代理配置
      • 安卓模拟器安装
        • 模拟器安装过程
        • 模拟器代理配置
          • 查看主机ip
          • 模拟器设置
      • 模拟器安装证书到系统下面
        • 准备条件
          • adb配置
          • pem证书准备
        • 操作步骤

准备抓包软件

  • 下面介绍两种抓包软件,fiddler配置较为简单
1.burp
  • burp配置参考另一篇文章参考
  • 最后从浏览器导出证书 PortSwigger CA.cer
    • 证书格式为 cer,我这里重命名为 burp.cer,方便后面导入到安卓模拟器
2.fiddler
下载地址
  • 下载 fiddler
  • 上面的是英文版,根据需要可以寻找其它合适版本
fiddler代理配置
  • 依次点击 tools --> options 在这里插入图片描述

  • 配置侦听端口,同时设置侦听网卡,不是回环 在这里插入图片描述

  • 勾选抓取https 在这里插入图片描述

  • 信任证书 在这里插入图片描述

  • 导出证书 在这里插入图片描述

  • 此时 桌面上可以看到 FiddlerRoot.cer的fiddler证书文件

    • 我把它改为 fid.cer
  • 测试浏览器抓包是否正常 ,win10开启代理上网 ,s使用fiddler默认配置代理在这里插入图片描述

  • 浏览器输入 https://www.baidu.com可正常访问即配置成功

安卓模拟器安装

  • 我这里用的是夜神模拟器,其他模拟器配置类似
模拟器安装过程
模拟器代理配置
查看主机ip
  • ipconfig 在这里插入图片描述

  • 192.168.0.14 就是ip地址

模拟器设置
  • 长按 wifi 在这里插入图片描述

  • 长按进入修改网络 在这里插入图片描述

  • 设置代理 在这里插入图片描述

  • 此时代理是配置成功的了,但是呢 ,访问https网站时候呢,会提示证书不安全,即使按照其它教程的安装证书,也只是把证书安装到了用户下面,然而安卓高版本(7.0)之后呢,app可以只信任指定证书和系统内置的证书,后续用户安装的证书是不生效的。在这里插入图片描述

  • 因此呢 ,只能把证书安装到系统下面,才能抓取https的包,手机如果有root权限可以试着安装到手机上面,获取不到直接安装到模拟器即可,我这里也是安装到模拟器了。

模拟器安装证书到系统下面

准备条件
  • 1.win10
  • 2.安卓模拟器 (root)
  • 3.adb
  • 4.格式为pem的证书
adb配置
  • adb是啥自己百度查查吧,不知道也没关系,会使用就可以了。
  • adb下载百度一下可以找得到 ,这里附上个下载连接adb
  • 下载好之后解压到任意目录,并配置好环境变量,在终端输入adb不是未找到命令即说明adb配置成功
    • 环境变量 略
pem证书准备
  • 1.需要用到 准备抓包软件保存的两个cer证书,burp.cer 和 fid.cer

  • 2.证书格式转换需要用到 openssl

    • 2.1 官网下载 官网
    • 2.2 选择 在这里插入图片描述
    • 2.3 安装好之后配置环境变量
  • 3.证书格式转换

    • 证书格式转换

      • pem证书转.cer证书
        • openssl x509 -outform der -in demo.pem -out demo.cer
      • cer证书转.pem证书
        • openssl x509 -inform der -in demo.cer -out demo.pem
    • 懒人复制大法

      • 打开终端 cd Desktop
      • openssl x509 -outform der -in burp.pem -out burp.cer
      • openssl x509 -outform der -in fid.pem -out fid.cer
    • pem证书准备完成

操作步骤
  • 1.打开模拟器

  • 2.打开cmd,接下来的操作都是在cmd里面操作了

  • 3.查看连接状态 adb devices

    • 这里可能会报错 在这里插入图片描述
    • adb的版本和安卓模拟器里面的adb版本不一致,找到刚才adb放的目录,将adb.exe拷贝到桌面,重命名为 nox_adb.exe ,需要关闭模拟器,找到模拟器的exe存放地址,将nox_adb.exe 直接放到该目录,替换掉即可。
    • 成功的返回 在这里插入图片描述
  • 4.判断是否有root权限 adb root

    • 也有可能报未知错误,没有root权限 在这里插入图片描述
    • 给模拟器勾选上root,重启模拟器即可
    • 成功示例 在这里插入图片描述
  • 5.将/system部分置于可写入模式 adb remount

    • 示例 在这里插入图片描述
  • 6.再开一个cmd,查看证书信息,并复制证书

    • openssl x509 -subject_hash_old -in burp.pem 在这里插入图片描述
    • 拷贝该文件,重命名为 hash结果里面的名称.0 (9a5ba575.0) burp的证书
    • 同理fiddler的证书也如此
  • 7.安装证书

    • 5中的cmd中执行 adb push 9a5ba575.0 /system/etc/security/cacerts/ 就是把证书文件复制到证书目录下面
    • 在这里插入图片描述
  • 8.进入模拟器查看系统证书是否安装

    • 证书查看

    • 在这里插入图片描述

    • app抓包成功 抖音评论数据 在这里插入图片描述

这篇关于安卓模拟器内app抓包 导入证书到安卓系统证书的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/262935

相关文章

基于Python实现自动化邮件发送系统的完整指南

《基于Python实现自动化邮件发送系统的完整指南》在现代软件开发和自动化流程中,邮件通知是一个常见且实用的功能,无论是用于发送报告、告警信息还是用户提醒,通过Python实现自动化的邮件发送功能都能... 目录一、前言:二、项目概述三、配置文件 `.env` 解析四、代码结构解析1. 导入模块2. 加载环

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Java实现TXT文件导入功能的详细步骤

《Java实现TXT文件导入功能的详细步骤》在实际开发中,很多应用场景需要将用户上传的TXT文件进行解析,并将文件中的数据导入到数据库或其他存储系统中,本文将演示如何用Java实现一个基本的TXT文件... 目录前言1. 项目需求分析2. 示例文件格式3. 实现步骤3.1. 准备数据库(假设使用 mysql

Linux查询服务器系统版本号的多种方法

《Linux查询服务器系统版本号的多种方法》在Linux系统管理和维护工作中,了解当前操作系统的版本信息是最基础也是最重要的操作之一,系统版本不仅关系到软件兼容性、安全更新策略,还直接影响到故障排查和... 目录一、引言:系统版本查询的重要性二、基础命令解析:cat /etc/Centos-release详

更改linux系统的默认Python版本方式

《更改linux系统的默认Python版本方式》通过删除原Python软链接并创建指向python3.6的新链接,可切换系统默认Python版本,需注意版本冲突、环境混乱及维护问题,建议使用pyenv... 目录更改系统的默认python版本软链接软链接的特点创建软链接的命令使用场景注意事项总结更改系统的默

SpringBoot集成EasyExcel实现百万级别的数据导入导出实践指南

《SpringBoot集成EasyExcel实现百万级别的数据导入导出实践指南》本文将基于开源项目springboot-easyexcel-batch进行解析与扩展,手把手教大家如何在SpringBo... 目录项目结构概览核心依赖百万级导出实战场景核心代码效果百万级导入实战场景监听器和Service(核心

在Linux系统上连接GitHub的方法步骤(适用2025年)

《在Linux系统上连接GitHub的方法步骤(适用2025年)》在2025年,使用Linux系统连接GitHub的推荐方式是通过SSH(SecureShell)协议进行身份验证,这种方式不仅安全,还... 目录步骤一:检查并安装 Git步骤二:生成 SSH 密钥步骤三:将 SSH 公钥添加到 github

批量导入txt数据到的redis过程

《批量导入txt数据到的redis过程》用户通过将Redis命令逐行写入txt文件,利用管道模式运行客户端,成功执行批量删除以Product*匹配的Key操作,提高了数据清理效率... 目录批量导入txt数据到Redisjs把redis命令按一条 一行写到txt中管道命令运行redis客户端成功了批量删除k

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻