Shiro721漏洞是一种存在于Apache Shiro框架中的安全漏洞,它允许攻击者通过构造恶意的rememberMe Cookie值,绕过认证机制并执行任意代码。该漏洞主要影响Apache Shiro的1.2.5至1.4.1版本。 2. Shiro721漏洞的形成原因 Shiro721漏洞的形成原因主要源于AES-128-CBC加密模式在处理rememberMe Cookie时的缺陷。具体来说,该漏洞...
原理其实很简单,shiro解决了密钥硬编码问题后,使用了AES-CBC加密方式,也就是说其他加解密过程没有变,但是漏洞的原因是因为加密能够被Padding Oracle Attack,也就是说我们不用找到密钥就能够直接修改rememberMe字段,而这里需要注意的细节就是: 需要通过已知 RememberMe密文 使用 Padding Oracle Attack 一点点爆破来达到...
在目标服务器/tmp目录下,生成success文件。 2、Shiro Padding Oracle Attack(Shiro-721) 2.1 漏洞原理 由于Apache Shiro cookie中通过 AES-128-CBC 模式加密的rememberMe字段存在问题,用户可通过Padding Oracle 加密生成的攻击代码来构造恶意的rememberMe字段,并重新请求网站,进行反序列化攻击,最终导致任意代码执行。 2.2...
0x01 漏洞原理 Apapche Shiro RememberMe Cookie 默认通过 AES-128-CBC 模式加密 ,这种加密模式容易受到 Padding Oracle Attack( Oracle 填充攻击 ),攻击者可以使用有效的 RememberMe Cookie 作为 Paddding Oracle Attack 的前缀,然后精心构造 RememberMe Cookie 来实施反序列化攻击。 攻击流程: 使用任意账户登陆目标...
(2)漏洞原理 Shiro-721 主要是由于AES-128-CBC 加密的 Padding Oracle 攻击: 攻击者可以利用服务器返回的错误信息,逐步猜测加密数据,破解 AES 密钥。 拿到密钥后,攻击者可以伪造恶意 Cookie,实现反序列化攻击。 三、漏洞发现与利用 1. 如何发现 Shiro 漏洞?
https://github.com/3ndz/Shiro-721 这个docker镜像中存在的war包中的lib主要是Common-Collections3.2.2的,正好是漏洞修复了的版本,不存在可利用的cc链。因此我们要下载一个Common-Collections3.1放至生成的docker对应的tomcat目录下。 Copy Highlighter-hljs ...
1.什么是721? 721是一种以太坊(Ethereum)的标准协议,也称为ERC-721协议。它定义了一种用于创建和交易不可替代代币(NFT)的接口和规范。 2. 721的工作原理是什么? 721的核心原理是使用智能合约在以太坊区块链上创建和管理NFT。每个NFT都有唯一的标识符和元数据,可以代表某个特定的资产或物品。 3.如何创建和交...
Shiro-721 RememberMe默认通过AES-128-CBC模式加密,易受Padding Oracle Attack攻击 影响版本 < 1.4.2 POC 直接使用 longofo 师傅的项目。首先获取一个有效的rememberMe值,其次生成一个反序列化利用的payload,然后使用如下参数执行攻击。 java -jar PaddingOracleAttack-1.0-SNAPSHOT.jar http://localh 可试读前40%...
三、Shiro-721反序列漏洞原理分析 0x1:利用条件 知道已经登陆用户的合法cookie且目标服务器含有可利用的攻击链就可以进行漏洞利用。 0x2:漏洞原理 Apache Shiro RememberMe Cookie默认通过AES-128-CBC模式加密,这种加密方式容易受到Padding Oracle Attack(Oracle填充攻击),利用有效的RememberMe Cookie作为Padding Oracle Att...