标题 简介 类型 公开时间
关联规则 关联知识 关联工具 关联文档 关联抓包
参考1(官网)
参考2
参考3
详情
[SAFE-ID: JIWO-2025-3116]   作者: 羽毛 发表于: [2022-06-02]

本文共 [346] 位读者顶过

1. 漏洞介绍
1.1 漏洞描述
2022年04月13号,apache官网公布了Struts2 最新版远程代码执行漏洞,该漏洞编号为CVE-2021-31805。 Apache Struts2是一个用于开发Java EE网络应用程序的Web框架。在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。[出自:jiwo.org]

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

1.2 影响版本
Apache Struts 2.0.0-2.5.29

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

2. 漏洞复现
本次漏洞复现为本地环境,使用开源靶场vulhub中s2-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或更高版本。 

评论

暂无
发表评论
 返回顶部 
热度(346)
 关注微信