前言一个阳光明媚的午休,我正惬意的喝着茶听着音乐,享受美好生活的时候,客户的QQ头像闪动了,原以为是出了什么新需求临时需要调整,没想到客户反馈的是平台出现了严重漏洞,不敢小视,抄起电脑开弄我根据客户给出的安全厂商反馈的问题,总结如下:1,Shiro反序列化漏洞2,提到了dnslog.cn平台了解Shiro反序列化漏洞参考官方的JIRA文档记录,https://issues.apache.org/jira/browse/SHIRO-550原因是Shiro的RememberMe出的问题官方也给出了问题的描述大概的意思就是:Shiro提供了RememberMe的功能,当用户关闭浏览器,下次再打开浏览
文章首发于先知社区:Shiro回显内存马注入文章目录前言流程分析寻找response流程分析获取Http11Processor获取AbstractProtocol获取Connector获取WebappClassLoaderHeader长度限制绕过1、反射修改maxHeaderSize2、自定义ClassLoader加载Body数据后记参考前言接上篇[Java安全]—Tomcat反序列化注入回显内存马_,在上篇提到师傅们找到了一种Tomcat注入回显内存马的方法,但他其实有个不足之处:由于shiro中自定义了一个filter,因此无法在shiro中注入内存马。所以在后边师傅们又找到了一个基于全局
今天咱们的主角是shiro反序列化命令执行漏洞。该漏洞在HVV等大型攻防项目中,经常被作为突破口。简单介绍了解一下还是很有必要的。废话不多说,进入正题。一、漏洞描述:ApacheShiro是美国阿帕奇(Apache)软件基金会的一套用于执行认证、授权、加密和会话管理的Java安全框架。ApacheShiro1.0.0版本至1.2.4版本中存在信息泄露漏洞,该漏洞源于程序未能正确配置‘rememberme’功能使用的密钥。攻击者可通过发送带有特制参数的请求利用该漏洞执行任意代码或访问受限制内容。二、漏洞原理:AES加密的密钥Key被硬编码在代码里,意味着每个人通过源代码都能拿到AES加密的密钥。
🚀Java中权限控制框架-Shiro📓推荐网站(不断完善中):个人博客📌个人主页:个人主页👉相关专栏:CSDN专栏🏝立志赚钱,干活想躺,瞎分享的摸鱼工程师一枚🏖前言在我们实战开发过程中,对于权限的控制是必不可少的,一个系统中常见的有普通会员、管理员、超级管理员等等不同的角色出现。我们如何更优雅的在Java中使用权限框架?来看看Java中比较火热的权限框架之一shiro吧~文章目录🚀Java中权限控制框架-Shiro🏖前言1.简介1.1.什么是Shiro1.2.Shiro功能简介1.3.Shiro架构图2.关于权限控制2.1.权限逻辑2.2.权限模型2.2.1.权限解决方案2.3.URL权限拦截
一、漏洞概述 Shiro是Apache旗下一个开源的Java安全框架,它具有身份验证、访问控制、数据加密、会话管理等功能,可以用于保护任何应用程序的安全,如移动应用程序、web应用程序等。 2022年6月29日,Apache官方披露ApacheShiro权限绕过漏洞(CVE-2022-32532),当ApacheShiro中使用RegexRequestMatcher进行权限配置,且正则表达式中携带“.”时,未经授权的远程攻击者可通过构造恶意数据包绕过身份认证。二、受影响版本ApacheShiro三、漏洞原理 在shiro-core-1.9.0.jar中存在一个RegExPatternMatch
环境配置: IDEA搭建shiro550复现环境_普通网友的博客-CSDN博客漏洞原理:ApacheShiro框架提供了记住密码的功能(RememberMe),用户登录成功后会生成经过加密并编码的cookie。在服务端对rememberMe的cookie值,先base64解码然后AES解密再反序列化,就导致了反序列化RCE漏洞。那么,Payload产生的过程:命令=>序列化=>AES加密=>base64编码=>RememberMeCookie值在整个漏洞利用过程中,比较重要的是AES加密的密钥,如果没有修改默认的密钥那么就很容易就知道密钥了,Payload构造起来也是十分的简单。影响版本:Ap
文章目录1.前置知识1.1shiro550利用条件原理1.2shiro721利用条件原理shiro-721对cookie中rememberMe的值的解析过程1.3基于返回包的shiro特征检测1.根据返回包中是否有rememberMe=DeleteMe2.使用序列化的SimplePrincipalCollection类的对象2.环境搭建3.漏洞复现4.PaddingOracleAttack原理4.1分组密码填充4.2AES-CBC模式算法4.3解密4.4加密5.防御方式6.参考文章1.前置知识1.1shiro550利用条件知道aes加密的key且目标服务器含有可利用的攻击链。原理在Shiro服
漏洞简介shiro-550主要是由shiro的rememberMe内容反序列化导致的命令执行漏洞,造成的原因是默认加密密钥是硬编码在shiro源码中,任何有权访问源代码的人都可以知道默认加密密钥。于是攻击者可以创建一个恶意对象,对其进行序列化、编码,然后将其作为cookie的rememberMe字段内容发送,Shiro将对其解码和反序列化,导致服务器运行一些恶意代码。特征:cookie中含有rememberMe字段修复建议:更新shiro到1.2.4以上的版本。不使用默认的加密密钥,改为随机生成密钥。漏洞原理一、Shiro简介ApacheShiro是一个强大易用的Java安全框架,提供了认证、
Shiro安全(三):Shiro自身利用链之CommonsBeanutils0x00前言0x01利用链分析0x02Shiro550利用0x03总结0x04文章参考0x00前言前面在利用shiro反序列化时,都是利用CC链,但是这需要服务端引入CommonsCollections组件。所以最好是找到一条shiro自身的利用链,而不需要任何的前提条件在之前曾介绍过java.util.PriorityQueue,在反序列化这个对象时,为了保证队列顺序,会进行重排序的操作,而排序就涉及到大小比较,进而执行java.util.Comparator接口的compare()方法。是否能够找到其他的Compa
目录前言:(一)基本介绍0x01影响版本0x02 漏洞分析根据加密的顺序,不难知道解密的顺序为:登入 验证 (二)环境搭建1、本地复现0x01源代码0x02 pom.xml修改:0x03tomcat服务器0x04 ysoserial-jar依赖0x05 访问端口 2、vulhub 访问端口: (三)利用工具和方式1、JRMP协议/服务器2、ysoserial工具利用方式1 利用方式2 3、利用流程4、全部利用到的工具 (四)利用实现1、漏洞检测与发现2、检测工具3、流程 0x01攻击机kali监听端口 0x02Payload0x03启动JRMPListener: 0x04 python生成C