正在阅读:

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

17,032

什么是SSL pinning

https协议验证服务器身份的方式通常有三种,一是根据浏览器或者说操作系统(Android)自带的证书链;二是使用自签名证书;三是自签名证书加上SSL Pinning特性。第一种需要到知名证书机构购买证书,需要一定预算。第二种多见于内网使用。第三种在是安全性最高的,但是需要浏览器插件或客户端使用了SSL Pinning特性。

Android应用程序在使用https协议时也使用类似的3种方式验证服务器身份,分别是系统证书库、自带证书库、自带证书库 + SSL Pinning特性。

所以SSL Pinning,即SSL证书绑定,是验证服务器身份的一种方式,是在https协议建立通信时增加的代码逻辑,它通过自己的方式验证服务器身份,然后决定通信是否继续下去。它唯一指定了服务器的身份,所以安全性较高。

我们可以使用xposed框架来绕过SSL Pinning,使用JustTrustMe模块。

xposed

JustTrustMe

当客户端使用了SSL pinning的时候,手机导入burpsuite证书的方式也无法抓到通信包。除了修改apk验证证书逻辑重新打包的方式外,最简单的方法是使用xposed相关模块。

xposed安装方法:

下载xposed安装包

安装xposed框架到手机:

adb install .apk

安装并启用justtrustme模块

重启手机就可以抓到之前抓不到的https通信了。

参考资料:

绿盟Security2015/07总029期

对抗Android SSL Pinning

本文转自xdxd,略有改动。。

目前有:1条访客评论

  1. 跨境电商
    2016-02-13 10:08

    很好,谢谢分享。:P

留下脚印,证明你来过。

*

*

流汗坏笑撇嘴大兵流泪发呆抠鼻吓到偷笑得意呲牙亲亲疑问调皮可爱白眼难过愤怒惊讶鼓掌