zoukankan      html  css  js  c++  java
  • Fiddler 模拟器抓包,SSL抓包不到

     之前安装了Fiddler 抓包雷电模拟器中的数据,很容易抓包到,最近测试抓包,但是一直抓包不到数据,网友反映是因为雷电升级了的原因,4.0以上都抓包不到了

    今天安装了逍遥模拟器,设置好后,马上就抓包到了,但是SSL的https,抓包不到实质数据,全部提示:Tunnel to

    网上搜索了一堆,找到了解决方案:

    原因:之前在模拟器中安装证书的时候,是直接访问PC端的地址+端口,下载并安装证书的,这样证书安装后会在用户证书这里

    但是现在的SSL,需要把证书推到系统证书里面才行

    安卓上证书的目录是放在 /System/etc/security/cacerts 中,但是不能直接把证书从PC端复制到安卓中

    所以需要做几件事情

    1.从Fiddler中导出证书,导出来的证书一般是.cer 格式的,我们要把它转换成 .pem 格式。

       转换格式的时候,需要用于命令:

      使用openssl的时候,命令出错的话,需要先下载一个openssl 并安装

    https://slproweb.com/products/Win32OpenSSL.html

    #1. 证书转换,已经是pem格式的证书不需要执行这一步
    openssl x509 -inform DER -in xxx.cer -out cacert.pem 
    
    #2. 进行MD5的hash显示
    
    #openssl版本在1.0以上的版本的执行这一句
    openssl x509 -inform PEM -subject_hash_old -in cacert.pem    
    
    #openssl版本在1.0以下的版本的执行这一句
    openssl x509 -inform PEM -subject_hash -in cacert.pem
    将第二条指令输出的类似347bacb5的值进行复制
    
    tips: 查看openssl版本的指令openssl version 

     

      命令执行后生成 269953fb, 然后把这个pem文件手工修改成 269953fb.0

       将pem证书重命名,使用上面复制的值(类似于269953fb)对pem证书进行重命名,

      用 mv cacert.pem  269953fb.0 会出错,我就手工修改了。可能是mv这个命令我这边环境不对

    2. 再用adb命令把这个改名后的证书文件推送到系统证书里面去。不能手工从PC复制进去,也找不到这个目录

        

    adb root
    adb remount
    adb disable-verity
    adb push 269953fb.0 /system/etc/security/cacerts
    adb enable-verity
    adb reboot

     执行到这里,重启一下模拟器,就可以抓到包了

    参考:

    https://blog.csdn.net/weixin_53485288/article/details/118786741

    https://helloworddm.blog.csdn.net/article/details/98363056

  • 相关阅读:
    周赛F题 POJ 1458(最长公共子序列)
    HDU 4720 Naive and Silly Muggles 2013年四川省赛题
    HDU 4716 A Computer Graphics Problem 2013年四川省赛题
    SCU 4440 Rectangle 2015年四川省赛题
    SCU 4436 Easy Math 2015年四川省赛题
    大数模板——六种实现了加减乘除和求余
    HDU 1002 A + B Problem II
    CodeForces 689C  Mike and Chocolate Thieves
    CodeForces 689A -Mike and Cellphone
    CodeForces 595B
  • 原文地址:https://www.cnblogs.com/gfwei/p/15217773.html
Copyright © 2011-2022 走看看