精华内容
下载资源
问答
  • 使用抓包软件(以 Charles 为例)抓取APP的 https 请求时,Android和Charles都正确安装了证书却出现抓包失败,报错: Client SSL handshake failed: An unknown issue occurred processing the certificate ...

    全文转载自我的博客,更好的阅读体验和更多内容欢迎移步SSpiritsの秘密基地

    背景

    使用抓包软件(以 Charles 为例)抓取APP的 https 请求时,Android和Charles都正确安装了证书却出现抓包失败,报错:

    Client SSL handshake failed: An unknown issue occurred processing the certificate (certificate_unknown)
    抓包失败

    原因

    Android7.0 之后默认不信任用户添加到系统的CA证书:

    To provide a more consistent and more secure experience across the Android ecosystem, beginning with Android Nougat, compatible devices trust only the standardized system CAs maintained in AOSP.(文档链接

    也就是说对基于 SDK24 及以上的APP来说,即使你在手机上安装了抓包工具的证书也无法抓取 https 请求


    解决方案

    一、官方解决方案(需修改代码)

    • 官方文档:https://developer.android.google.cn/training/articles/security-config.html
    • 详细演示:https://blog.csdn.net/mrxiagc/article/details/75329629


    二、将抓包软件的证书安装成系统证书(需ROOT)

    系统证书目录:/system/etc/security/cacerts/

    其中的每个证书的命名规则如下:
    <Certificate_Hash>.<Number>
    文件名是一个Hash值,而后缀是一个数字。

    文件名可以用下面的命令计算出来:

    openssl x509 -subject_hash_old -in <Certificate_File>

    后缀名的数字是为了防止文件名冲突的,比如如果两个证书算出的Hash值是一样的话,那么一个证书的后缀名数字可以设置成0,而另一个证书的后缀名数字可以设置成1

    操作步骤:

    将抓包软件的证书用上述命令计算出 Hash 值,将其改名并复制到系统证书目录

    计算 Hash 值

    此时你应该可以在 设置->安全->加密与凭据->信任的凭据 的系统标签页看到你新加入的证书,将其启用即可顺利抓包

    安装好的CA证书

    展开全文
  • 一,在储存中安装证书 安装完证书后回生成.0文件 安装生成的.0文件保存到/data/misc/user/0/cacerts-added目录下,比如1d5f1b2b.0。 二.将.0文件安装到系统中 # 将 <hash>.0 传到手机 adb push 9a5ba575.0 /...

    一,在储存中安装证书 安装完证书后回生成.0文件
    安装生成的.0文件保存到/data/misc/user/0/cacerts-added目录下,比如1d5f1b2b.0。

    二.将.0文件安装到系统中

    # 将 <hash>.0 传到手机
    adb push 9a5ba575.0 /sdcard/
    # adb连接至设备
    adb shell
    # shell获取root权限
    su
    # 系统重新挂载
    mount -o rw,remount /
    mount -o rw,remount /system
    # 复制 <hash>.0 
    cp /sdcard/9a5ba575.0 /system/etc/security/cacerts/
    # 授权,644 rw-r--r--,本用户有可读可写权限,群组有只读权限,其他用户为只读权限。
    chmod 644 /system/etc/security/cacerts/9a5ba575.0
    # 重启手机
    reboot
    
    

    fiddler安装证书方式:
    输入代理后连接正常,在浏览器里面输入http://ip:端口号,下载证书并安装
    mintproxy安装证书方式:
    输入代理后连接正常,在浏览器里面输入mitm.it,下载证书并安装
    charles安装证书方式:
    在手机上安装证书: help—ssl proxy—install charles root ……browser,用手机浏览器访问提示的链接
    在这里插入图片描述

    展开全文
  • 安卓模拟器抓包准备抓包软件1.burp2.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抓包成功 抖音评论数据 在这里插入图片描述

    展开全文
  • 1、文中使用 Fiddler 为抓包工具,如有自己熟悉的抓包工具也可换用 2、由于抓包代|理的特殊性,不建议下载过大App(300M以上),容易卡(也没有其他什么影响,就是会卡) 3、演示使用版本:iTunes 12.3.1.23,...
  • 系统证书的命名都是哈希值.0如果哈希值相同,想要保留证书,那就修改后面的.0即可 2.用户证书 su # 先进入超级用户 /data/misc/keystore/user_0 3. 将用户证书放到系统目录中 导出待处理证书到PC桌面 先...

    安卓7+导证书到系统目录

     

    要求 先要将手机 Root

     

    1. 系统证书

    首先我们看看,系统证书目录

    adb shell 
    
    cd /system/etc/security/cacerts

    系统证书的命名都是 哈希值.0 如果哈希值相同,想要保留证书,那就修改后面的 .0 即可

    2. 用户证书

    su  # 先进入超级用户
    
    /data/misc/keystore/user_0
    

    3. 将用户证书放到系统目录中

    1. 导出待处理证书到PC桌面
       
    2. 先将文件名构造为 哈希值.0

    导出证书到pc

    选择 Actions -- open window

    右键 所有任务 - 导出 -不要导出私钥 - Base64格式

    导出完成

        

    计算hash值

    要在 liunx mac电脑上运行

    cd 到证书目录中 注意 aaaa.cer 是我的证书名,根据实际情况修改
    
     openssl x509 -subject_hash_old -in aaaa.cer 拿到证书到md5值(8位)

     此证书的md5值为 269953fb 

    修改证书名为  269953fb.0 ,在使用adb命令推进手机的跟证书目录

    push到系统目录中

    cd 到证书目录中,269953fb.0 就是改后的证书
    
    adb push 269953fb.0 /system/etc/security/cacerts/269953fb.0
    

    如果推入失败

    解决方案:

    push 到临时目录中,再移到sys目录

    adb push  data/local/tmp/269953fb.0
    

    再推移动到sys中

    注意:

    • 最好设置 777 权限
    • 删掉用户目录中的证书(不然会有冲突)
    • 重新启动手机
    adb shell
    su
    mv data/local/tmp/269953fb.0 /system/etc/security/cacerts
    

    如果还是不行,就安装 文件管理器,就行sys文件夹权限设置

    再打开软件,选择刚刚推入到临时目录的文件,长按复制,再到sys目录中粘贴即可

    复制到 /system/etc/security/cacerts/ 中

     

    展开全文
  • Charles抓包软件简介

    2017-08-08 21:43:13
    Charles简介:Charles是一款抓包神器,因为他是基于 java 开发的,所以跨平台,Mac、Linux、Window下都是可以使用的,确保安装之前已经安装了JDK。Charles官网地址:https://www.charlesproxy.com破解:因为这款软件...
  • App反抓包反fiddler证书小技巧

    千次阅读 2019-09-19 11:23:09
    抓包某些应用的时候,发现虽然使用了JustTrustMe,干掉了证书校验,还是抓包失败。在分析过程中发现对方限制证书,故此记录。 <application android:theme="@style/BaiduMapTheme" android:label="@string/...
  • 学会如何抓包,是爬虫的必备技能,甚至可以说,不会抓包就等同于不会爬虫。 那我们怎样抓包呢?如果直接抓取浏览器上的内容,可以直接使用开发者工具进行抓包,但有个局限,只能抓浏览器的,功能也没有多少。还可以...
  • charles https抓包证书安装

    千次阅读 2021-03-28 10:08:12
    charles https抓包证书安装 证书下载:浏览器输入http://chls.pro/ssl;Help->SSL Proxying->Install Charles Root Certificate on a Mobile Device or Remote Browser安卓证书安装方法下载后直接点击若个别手机无法...
  • 使用抓包软件(以 Charles 为例)抓取APP的 https 请求时,Android和Charles都正确安装了证书却出现抓包失败,报错: Client SSL handshake failed: An unknown issue occurred processing the certificate ...
  • 系统证书的目录是:/system/etc/security/cacerts/ 每个证书的命名规则为:<Certificate_Hash>. Certificate_Hash 表示证书文件的 hash 值,Number 是为了防止证书文件的 hash 值一致而增加的后缀; 证书的 ...
  • 工具:mac电脑 root手机一部 ...1.首先在电脑中安装根证书,启动Charles, 在顶部找到Help, 如图操作,并信任 2.配置SSL Proxying Settings。点击Proxy,点击SSL Proxying Settings,点击add添加,Host...
  • ios手机如何安装charles抓包工具证书 安装证书前提,已经下载好charles 1、打开手机设置–WiFi–配置代理–点击手动–填写(服务器,端口号)–点击存储 不知道服务器和端口号,在charles中查看: 2.打开浏览器–...
  • 设置手机抓包 第一步:在charles里设置允许手机联网的权限,并设置接入接口 在Charles的菜单栏上选择"Proxy"-&gt;"Proxy Settings",填入代理端口8888(注意,这个端口不一定填写8888,...
  • 手机抓包-手机安装证书问题

    千次阅读 2020-04-02 21:51:08
    手机抓包-手机安装证书问题 1.设置好代理之后,手机打开 fiddler:http://代理ip:8888 burp:http://burp 2.下载相应的证书。 fiddler证书下载之后默认是crt格式,手机可以安装 burp证书下载之后默认是der格式,...
  • 刚好这款aap的IOS版本下架了,只有安卓版本可用,于是用手里的小米mix2 安装了这款app,fiddler在电脑上抓包,发现老是报证书不安全,安装fiddler的证书也效果,然后发现:Android6.0 之后默认不信任用户添加到系统的...
  • 一、证书操作 1、查看证书 ① 查看crt\der格式证书 openssl x509 -in FiddlerRoot.crt -inform DER -noout -text ② 查看pem证书 openssl x509 -in certificate.pem -inform pem -noout -text 2、证书转换...
  • 微信团队了安全,安卓的微信7.0版本值信任自己内置的ssl证书,不信任用户自己安装的证书,导致抓包工具抓取https页面时,访问空白。 既然玩机,就要学会root啦! 2.解决原理: 把SSL证书安装到系统。 三、开始 第一...
  • 抓包工具charles,模拟器逍遥模拟器然后用逍遥模拟器创建安卓7.0环境(系统默认是root,必须是root环境下操作) ②模拟器网络配置好代理,然后在模拟器浏览器中输入chls.pro/ssl下载charles证书,下载好之后在模拟器...
  • burp Fiddler抓包软件

    2019-08-03 19:02:22
    只讲原理代理证书https联系方式 代理 代理服务器英文全称是(Proxy Server),其功能就是代理网络用户去取得网络信息。形象的说:它是网络信息的中转站。代理服务器就好象一个大的Cache,这样就能显著提高浏览速度和...
  • 有没有和我一样的小伙伴,安装了Charles,配置完全没问题,但是手机还是无法抓包,摸索了好久,发现是防火墙的问题,分享给有需要的小伙伴哦~~ 第一:首先保证所有的配置都正确的前提下进行如下的配置 第二:打开...
  • 解决办法1:直接将用户自己安装的证书添加到系统证书中去(需要root权限:因为现在大多数手机不支持root所以很难搞) 参考文章:fiddler安卓7.0以上版本(直接将用户自己安装的证书添加到系统证书中去) 解决方法2...
  • fiddler介绍 下载软件地址:...下载证书 2.配置端口 以上 ffiddler 的配置 3.抓取浏览器的数据 浏览安装插件 SwitchyOmega (需要翻墙 不会翻墙 就是本地安装) 重新 启动 fiddler就行了 ...
  • 作为爬虫工程师的基本功,抓包是经常遇到且非常重要的技能之一,尤其是现在的移动端的发展,更是在App抓包这里做了很多防护措施,本文主要是针对iOS系统App的数据包抓取进行大概总结,主要是针对常规App数据包抓取、...
  • Fiddler抓包软件的安装方法和配置参数 环境 我用的电脑是win7_64bit系统,使用的工具有【Fiddler2】,【360浏览器】和【mumu模拟器】 安装 首先是安装软件并且设置好抓包环境 Fiddler2下载地址:链接:百度网盘...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,329
精华内容 2,931
关键字:

抓包软件系统证书