用charles拦截android设备https,证书无效的解决方法

阅读本文前您需要了解 

1.使用charles拦截https数据包,及其拦截的原理是替换ssl证书。
2.为android设备设置请求代理

正文:


APP使用操作系统api发https请求时对证书的验证一般是通过操作系统 自带的证书验证机制到CA服务器上检查证书合法性,这样就无法用charles来拦截https请求的数据了。
识别到证书不合法时客户端会断开连接。在APP上的表现就是请求失败。用charles拦截数据包的结果就是下面这样的
那么要让操作系统通过证书验证需要修改操作系统的证书验证功能,各种PC浏览器有自己的绕过证书配置的方法,那么在android设备上如何解决这个问题呢?
在ROOT过的ANDROID上可以使用XPOSED的SSLUnpinng 插件来绕过证书验证。
SSLUnpinng下载地址
http://dl-xda.xposed.info/modules/mobi.acpm.sslunpinning_v2_37f44f.apk

单击某个程序就可以hook ssl证书。
再使用charles来拦截数据包就可以看到发送的请求了
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值