添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

什么是SSL pinning

https协议验证服务器身份的方式通常有三种,一是根据浏览器或者说操作系统(Android)自带的证书链;二是使用自签名证书;三是自签名证书加上SSL Pinning特性。第一种需要到知名证书机构购买证书,需要一定预算。第二种多见于内网使用。第三种在是安全性最高的,但是需要浏览器插件或客户端使用了SSL Pinning特性。
Android应用程序在使用https协议时也使用类似的3种方式验证服务器身份,分别是系统证书库、自带证书库、自带证书库 + SSL Pinning特性。
所以SSL Pinning,即SSL证书绑定,是验证服务器身份的一种方式,是在https协议建立通信时增加的代码逻辑,它通过自己的方式验证服务器身份,然后决定通信是否继续下去。它唯一指定了服务器的身份,所以安全性较高。

JustTrustMe

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

xposed安装方法:

下载xposed安装包

安装xposed框架到手机:

adb install <xposed-installer-you-just-downloaded>.apk

安装并启用justtrustme模块

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

http://www.nsfocus.com.cn/upload/contents/2015/07/2015_07241353337959.pdf

原文地址: http://xdxd.love/2015/12/30/%E5%88%A9%E7%94%A8xposed%E7%BB%95%E8%BF%87%E5%AE%89%E5%8D%93SSL%E8%AF%81%E4%B9%A6%E7%9A%84%E5%BC%BA%E6%A0%A1%E9%AA%8C/

SSLpinning证书锁定,是一种防止中间人攻击(MITM)的技术SSL Pinning通过比对内置的证书和服务器端证书的内容,以确定这个连接的合法性。Xposed是在Android高权限模式下运行的框架服务Xposed能在不修改APK文件的情况下影响程序运行JustTrustMe 是一个用来禁用、绕过SSL证书检查的基于Xposed模块JustTrustMe 将APK中用于校验SSL证书的API进行Hook,从而绕过证书检查。 0x00 前言 前面写了一篇利用Frida绕过Android App(途牛apk)的SSL Pinning,这里来记录一下利用Xposed+JustTrustMe来绕过SSL Pinning,这种方法相比前一种用起来更简单容易上手。 0x01 环境 夜神模拟器(Android 5.1) Xposed Xposed框架是一款开源框架,其功能是可以在不修改APK的情况下影响程序运行(修改系统)的框架服务,基于它可以制作出许多功能大的模块,且在功能不冲突的情况下同时运作。 JustTrustMe JustTru JustTrustMe:禁用SSL证书验证的大工具 JustTrustMe 是一个专为 Android 设计的 Xposed 模块,其核心功能是禁用 SSL 证书验证。这一功能对于审计那些采用证书固定(certificate pinning)的应用程序非常有用。 certificate pinning 是一种安全措施,用于防止中间人攻击(MITM),它会确保应用程序只与指定的证书进行通... 1. 前言 1. 遇到的问题 之前在做app渗透测试的时候遇到一个问题,就是我使用burpsuite对app进行抓包时,app一直显示网络请求失败(如图1.1-1),不能进行正常的操作,burp也抓不到数据包,但是不挂代理进行正常访问又可以。一开始以为是https的证书问题,就把burp的证书重装了一遍,发现问题仍然存在,但是我抓取浏览器和其他的app程序就能正常抓到数据包,一时间慌的不行,以为凉... 而这里的牛牛不止设置了反代理还设置了证书校验,一闪而过的三个数据包就是在校验证书。而proxifier工具的转发机制获取的是网络接口出口数据,相当于是在网络接口设代理。这个时候就可以在夜神打开牛牛开始抓包了,打开牛牛可以看到proxifier有夜神流量通过。关闭代理之后牛牛就正常了,可恶的牛牛啊,这样我没办法抓包啊,怎么办啊。模拟器开启代理,burp开启监听。打开牛牛app,牛牛不在报错。牛牛app检测的是系统代理,也就是在模拟器或手机上设置的代理。再在浏览器下载两个模块,在夜神安装,用来屏蔽证书校验。 在对安卓手机APP抓包时,出现的HTTPS报文通过MITM代理后证书不被信任的问题。 当APP是HTTPS时,则单纯的使用Burpsuite无法抓取数据包,原因是APP启用了SSL Pinning(又叫做“SSL证书绑定”)。 通常要抓取HTTPS加密的数据包,一般使用Charles或者Fiddler4代理HTTP请求,配置证书信任后,便可拿到明文报文。 但是由于Charles证书和Fi 小飞鱼APK签名工具是小飞鱼旗下的一款APK签名软件。是移动开发者必备的一款软件。使用方法1、双击运行小飞鱼APK签名工具.exe文件,出现如下界面:2、点击“功能”,没有签名证书的选择证书制作,制作完证书再选择APK签名,有证书的直接选择APK签名即可。 3、点击“请选择Keystore路径下的‘请选择’”,选择签名文件(***.jks或***.keystore)存放的路径并输入密码... https请求前,进行自签名证书加载1.运行报错: error:{"code":2300060,"message":"SSL peer certificate or SSH remote key was not OK"},显示无法校验服务器身份,2. 导致这个错误码的原因可能有以下几种:服务器证书过期或者未被信任:如果服务器证书过期或者未被信任,客户端将无法验证证书的有效性,从而导致CURLE_PEER_FAILED_VERIFICATION错误。 一、序在将 App 发布到市场之前,很重要的一个步骤就是为 APK 进行签名,大部分时候,这个操作隐藏在了打包的流程中,而不被我们注意到。签名的作用,除了证明 App 的所有权之外,还可... 问题:app程序未对签名证书进行校验,被其他证书重新签名可正常启动 apk打包签名思路: Build -> Generate Signed Bundle/APK -> APK -> Create New 创建一个新的证书 (也可以选择一个已有的证书)->ok -> 选择生成的APK文件所在目录、选择apk版本 第1步就是我们打包的常规步骤 第2步用第三方梆梆软件加固 第3步将加固的apk进行第三方软件签名 将apk文件解压,在META-INF文件中可找到签名文件,文件后缀为. 1、下载完成后,解压,双击运行小飞鱼APK签名工具.exe文件,出现如下界面: 2、点击“功能”,没有签名证书的选择证书制作,制作完证书再选择APK签名,有证书的直接选择APK签名即可,下面介绍证书制作,有证书跳过这一步。 填写别名,密码,以及个人组织,存储位置不选择默认存放在桌面 3、选择您要签名的APK,选择签名证书(有证书的选择自己证书,没有证书的选择刚才制作完成的那一...