Struts2-062_RCE简单复现(CVE-2021-31805)

微信公众号:乌鸦安全

更新时间:2022.04.16

本文首发乌鸦安全知识星球!

1. 漏洞介绍

1.1 漏洞描述

20220413号,apache官网公布了Struts2 最新版远程代码执行漏洞,该漏洞编号为CVE-2021-31805。 Apache Struts2是一个用于开发Java EE网络应用程序的Web框架。在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。

本次漏洞是对CVE-2020-17530修复之后的绕过,当使用语法%{...}应用强制OGNL解析,某些tag标签的属性仍然可以被二次解析。

1.2 影响版本

Apache Struts 2.0.0-2.5.29

俗话说:Struts2 凭借一己之力养活了安全圈是很有道理的。

2. 漏洞复现

本次漏洞复现为本地环境,使用开源靶场vulhubs2-61的环境:

https://github.com/vulhub/vulhub/tree/master/struts2/s2-061

使用命令:docker-compose up -d --build启动环境:

看下当前的端口:docker ps

直接访问:http://127.0.0.1:8080/

因为本次复现的是S2-62的漏洞,所以在这里使用S2-62的一个exp

https://github.com/YanMu2020/s2-062

探测漏洞:

python3 s2-062.py --url http://127.0.0.1:8080/

执行命令:

python3 s2-062.py --url http://127.0.0.1:8080/ --cmd ls

漏洞复现之后,记得及时关闭环境:

docker-compose down

3. 修复方法

升级更新到Apache Struts 2.5.30或更高版本。 

下载链接:https://cwiki.apache.org/confluence/display/WW/Version+Notes+2.5.30

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值