码迷,mamicode.com
首页 > 移动开发 > 详细

Android 高版本无法抓取 HTTPS解决方案

时间:2020-11-20 12:21:20      阅读:35      评论:0      收藏:0      [点我收藏+]

标签:需要   xposed   安装   产品   nbsp   pad   问题   sed   mic   

在接口测试中,相信很多人都遇到过 Android 高版本(Android7.0 以上)系统无法抓取HTTPS包的问题。

由于在测试过程中对分析定位问题很不方便,所以咱们自己要想办法解决这个问题

一、Android6.0 及以下系统可以抓包,而 Android7.0 及以上系统不能抓包;

       原因:Android7.0+ 的版本新增了证书验证,所以 App 内不再像原来一样默认信任用户的证书;

二、解决方案

  1.让安卓开发解决,重新打包,对于安卓开发同学来说无非是多加几行代码的事,但是如果要想抓取别人产品的HTTPS包,那这种方式就行不通了。

  2.换一部Android6.0以下的手机/用系统6.0一下的模拟器安装app,可以解决这个问题

  3.Charles + VirtualXposed + JustTrustMe【主要讲解第三种方案】

三、首先进入 Github 下载如下两个 Page

  • VirtualXposed:https://github.com/android-hacker/VirtualXposed
  • JustTrustMe:https://github.com/Fuzion24/JustTrustMe    

技术图片

 

 技术图片

 

   1.使用如下 adb 命令分别安装两个 pages

    adb -s C7YVB20413007239 install D:\chomeDow\VirtualXposed_0.18.2.apk
    adb -s C7YVB20413007239 install D:\chomeDow\JustTrustMe.apk

技术图片

 

   2.安装完成进入 VirtualXposed apk 应用,点击 6 个小点进入设置页面

  技术图片

 

     3.进入设置页面,点击模块管理,勾选 JustTrustMe(我这里没有找到它,可能是我这个版本不需要在手动选择了,安装之后自动识别到了)重启之后我们重新进去设置页面,添加我们需要抓包的应用即可,我这里选择的钉钉做案例。

    技术图片

 

     4.点击添加应用,选择需要抓包的软件安装:

    技术图片

 

     5.配置 Charles 抓包

     6.回到 VirtualXposed 上滑解锁,打开我们之前安装的企业微信,则发现 charles 已经成功抓取到钉钉的 HTTPS 的数据包

    

 

Android 高版本无法抓取 HTTPS解决方案

标签:需要   xposed   安装   产品   nbsp   pad   问题   sed   mic   

原文地址:https://www.cnblogs.com/xiaochao-testing/p/13985602.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!