文章目录

  • 问题描述
  • 原理分析
  • 解决思路
  • Xposed框架
  • JustTrustMe 简介
  • 安装过程描述
  • 安装过程截图
  • 下载地址

问题描述

  • 在对安卓手机APP抓包时,出现的HTTPS报文通过MITM代理后证书不被信任的问题。
  • 当APP是HTTPS时,则单纯的使用Burpsuite无法抓取数据包,原因是APP启用了SSL Pinning(又叫做“SSL证书绑定”)。
  • 通常要抓取HTTPS加密的数据包,一般使用Charles或者Fiddler4代理HTTP请求,配置证书信任后,便可拿到明文报文。
  • 但是由于Charles证书和Fiddler证书并非证书机构颁发的目标站点的合法证书,所以会不被信任。

原理分析

  • (ssl-pinning:apk在开发时就将服务端证书一块打包到客户端里。这样在HTTPS建立时与服务端返回的证书比对一致性,进而识别出中间人攻击后直接在客户端侧中止连接。)
  • 客户端不是会做两个证书间的一次性校验吗,那么就通过hook的方式将此次校验的结果返回true或者干脆不让其做校验。
  • 当然这种做法只能在越狱环境下实现,但对于抓包来说,这已经足够了。

解决思路

  • 使用的工具是:Xposed+JustTrustMe

Xposed框架

  • Xposed框架是一款开源框架,其功能是可以在不修改APK的情况下影响程序运行(修改系统)的框架服务,基于它可以制作出许多功能强大的模块,且在功能不冲突的情况下同时运作。
  • Xposed 就好比是 Google 模块化手机的主体,只是一个框架的存在,在添加其他功能模块(Modules)之前,发挥不了什么作用,但是没了它也不行。
  • 也正因为如此,Xposed 具有比较高的可定制化程度。Moto X 用户可定制手机的外观、壁纸、开机动画等,Xposed 则允许用户自选模块对手机功能进行自定义扩充。

JustTrustMe 简介

  • JustTrustMe 一个用来禁用、绕过 SSL 证书检查的基于 Xposed 模块。

  • JustTrustMe 是将 APK 中所有用于校验 SSL 证书的 API 都进行了 Hook,从而绕过证书检查的。

安装过程描述

第一部分: 先安装Xposed

  • 使用雷电模拟器、Android 5.1.1
  • 安装XposedInstaller_3.1.5.apk
  • 下载安装
  • 重启

第二部分 安装 JustTrustMe

  • 打勾进行安装
  • 重启

安装过程截图

第一步 启用雷电模拟器

第二步 将XposedInstaller_3.1.5.apk拖入,并双击

第三步 点击确认,进行下载安装

第四步 发现报错,多方尝试,是网络的问题(使用网线,办公网,均无法下载成功,最后使用手机热点成功下载成功)

第五步 换成手机热点,成功下载

第六步 安装成功之后,再次进入,授
予权限后,后提示安装成功

第七步 安装JustTrustMe.apk,提示未激活

第八步,进入模块,勾选,然后重启

此时,APP的HTTPS数据包就可以抓取到了,有需要的可以尝试一下。

下载地址

下载地址

https://download.csdn.net/download/qq_41901122/14810882

Xposed+JustTrustMe解决SSL证书问题相关推荐

  1. APP爬虫- 手机安装证书-解决SSL证书的移动端数据包问题

    什么是SSL pinning https协议验证服务器身份的方式通常有三种: 一是根据浏览器或者说操作系统(Android)自带的证书链: 二是使用自签名证书: 三是自签名证书加上SSL Pinnin ...

  2. 利用xposed绕过安卓SSL证书的强校验

    什么是SSL pinning https协议验证服务器身份的方式通常有三种,一是根据浏览器或者说操作系统(Android)自带的证书链:二是使用自签名证书:三是自签名证书加上SSL Pinning特性 ...

  3. gdc服务器ssl证书不一致,如何解决SSL证书不匹配错误

    如何解决 当终端用户访问错误的域名,而不是已经安装SSL证书的真实域名时,就是认为这是SSL证书错误.如果用户分析错误,那么他们可以理解,起源域名是他访问以外的其他域名.根据不同的网页浏览器政策,我们 ...

  4. SSL证书会过期的原因有哪些?怎么解决SSL证书过期

    全站HTTPS的时代已经到来,各大网站纷纷部署SSL证书.SSL证书的作用是让信息通过安全的方式进行交换,此信息通常是敏感信息,包括账号密码.银行卡详细信息.手机号码等.但是SSL证书具有设定的到期日 ...

  5. SSL证书过期怎么办?只需几步就能轻松解决!

    要知道,SSL证书是有时效的,特别是2020年之前SSL证书,最高有效期也只有1年,因此,我们更加要注意一下SSL证书是否过期了.那么,SSL证书过期怎么办呢?下面就让摩杜云小杜来跟大家详细的介绍,希 ...

  6. SSL证书过期怎么办?别慌!SSL应急解决方案及注意事项来了

    当浏览器飘红显示网站不安全才发现网站SSL证书已过期,而此时又联系不上之前的SSL供应商,一时不知道该如何是好?幸好有前辈给予指导让快速解决SSL证书过期问题.特此分享出来,供大家必备不时之需. SS ...

  7. 自己作为CA签署SSL证书

    为了解决ssl证书签名存在的问题.例如:申请免费ssl证书的时候没有办法再添加dns解析条目,vps没有进行域名备案,使得无法完成正规的ssl证书颁发.SSL自签名并不靠谱,很多浏览器也可能会不认可自 ...

  8. 阿里云新建对象存储Bucket,并配置自定义域名,配置cdn,配置cdn的ssl证书

    说明: A阿里云账户为开通oss账户,开通cdn账户. B阿里云账户为域名和ssl证书的账户 1. 新建Bucket 点击新建: 注意最后的加速是会收费的,可以参考官方文档.不加速也可以. 填写相关信 ...

  9. 安装SSL证书-解决导入证书时的ASN1 bad tag value met错误

    原文:http://www.cnblogs.com/terrysun/archive/2011/03/02/1969180.html 以VeriSign的证书为例,首先到VeriSign的网站上www ...

  10. php curl 不验证ssl,PHP Curl https跳过ssl证书认证报错记录及解决

    PHP Curl https跳过ssl证书认证报错记录及解决 function get($url = '', $cookie = '') { $ch = curl_init(); curl_setop ...

最新文章

  1. Java开发必会的Linux命令
  2. AlertDialog.Builder 显示为白色 蓝色字
  3. [BUUCTF]PWN——ciscn_2019_es_2(栈劫持)
  4. SQLiteOpenHelper简介
  5. php 怎么防止提交空记录,为什么空提交什么都不提示?
  6. imp命令导入指定表_Oracle—— 导入/导出 数据:exp,imp 命令
  7. c linux 判断ip合法_shell 检测ip的合法性与检测网络掩码的合法性
  8. 开发者的盛宴Google I/O 2016
  9. FFmpeg在Linux下安装编译过程
  10. UIKeyboardType键盘
  11. mysql ocp考试准备多久_MySQL 5.7OCP考试经验分享。
  12. DocFetcher CMD 启动脚本
  13. OPenDDS程序 的 实现+运行
  14. 高性能服务器 c100k,C10K及C100K问题探讨 怎么应对大流量大并发
  15. Rhino(犀牛)的视口
  16. 2018年6月2日 星期六 天气晴
  17. 【洛谷4920】[WC2015] 未来程序(提答题)
  18. grunt从入门到自定义项目模板
  19. android 淘宝登陆授权
  20. android需要电脑输入吗,Android 远程输入法,用电脑给手机输入文字

热门文章

  1. request.getParameter()与request.getParameterValues()
  2. 《Dreamweaver CS6 完全自学教程》笔记 第九章:插入多媒体对象
  3. 使用Aria2下载百度网盘和115的资源
  4. 龙芯2F入手,点滴记录!
  5. 数学分析教程(科大)——2.7笔记+习题
  6. php swfupload,ThinkPHP+swfupload多图上传实例 经典实用的php多图上传
  7. robotium android,Robotium 测试Android apk安装包
  8. 供应链金融——研究结果总结
  9. “0元送设计”如何换来70亿营收?尚品宅配的新零售数字化增长研究
  10. 公司要一个网站,是选模板建站还是定制化建站?