Struts 2框架中存在哪些已知漏洞,如何有效防范?

Struts 2是一个广泛使用的Java Web应用框架,但历史上也出现了多个严重的漏洞,以下是一些著名的Struts 2漏洞的详细分析:

Struts 2框架中存在哪些已知漏洞,如何有效防范?插图1

Struts 2 S2-062(CVE-2021-31805)漏洞

漏洞描述 该漏洞是由于2020年S2-061(CVE-2020-17530)的不完整修复造成的,当开发人员使用了%{…}语法进行强制OGNL解析时,仍有一些特殊的TAG属性可被二次解析,攻击者可构造恶意的OGNL表达式触发漏洞,从而实现远程代码执行。
影响范围 2.0.0
漏洞分析 与S2-059的示例非常相似,开发人员使用语法%{}定义属性的值,以使该页面动态并引入url参数,如果将url参数skillName传递给页面,通常访问https:///?skillName=abctest,后端代码执行单次OGNL解析,以检索GET参数传入的数据,但当用户传入的数据执行两次OGNL解析时,就会存在漏洞。
修复建议 Apache发布了安全公告,修复了此漏洞,建议用户升级到最新版本或采取其他缓解措施。

Struts 2 S2-015漏洞

漏洞描述 如果一个请求与任何其他定义的操作不匹配,它将被匹配*,并且所请求的操作名称将用于以操作名称加载JSP文件,1作为OGNL表达式的威胁值,{ }可以在服务器端执行任意的Java代码。
影响版本 Struts 2.0.0 2.3.14.2
复现步骤 进入到015的环境目录下并启动环境,访问靶机http://192.168.100.244:8080,构造poc并使用抓包工具burp suite修改数据包插入poc。

Struts 2 S2-016漏洞

漏洞描述 问题主要出在对于特殊URL处理中,redirect与redirectAction后面跟上Ognl表达式会被服务器执行。
影响版本 Struts 2.0.0 – 2.3.15
复现步骤 进入到016的环境目录下并启动环境,访问靶机http://192.168.100.244:8080,构造poc并使用抓包工具burp suite修改数据包插入poc。

Struts 2 S2-066(CVE-2023-50164)漏洞

Struts 2框架中存在哪些已知漏洞,如何有效防范?插图3

漏洞描述 由于文件上传逻辑存在缺陷,威胁者可操纵文件上传参数导致路径遍历,某些情况下可能上传恶意文件,造成远程代码执行。
影响版本 Struts 2.5.0-Struts 2.5.32,Struts 6.0.0-Struts 6.3.0
漏洞复现 环境搭建使用Struts 6.3.0,定义一个UploadAction类,并在struts.xml和web.xml中进行配置,通过构造特定请求来触发漏洞。

这些漏洞都涉及到OGNL表达式的不当处理,允许攻击者通过构造特定的请求来执行远程代码,为了防范这些漏洞,建议用户及时升级到最新版本的Struts 2,并遵循最佳安全实践来配置和使用Web应用程序。

以上就是关于“struts 2漏洞”的问题,朋友们可以点击主页了解更多内容,希望可以够帮助大家!

Struts 2框架中存在哪些已知漏洞,如何有效防范?插图5

本文来源于互联网,如若侵权,请联系管理员删除,本文链接:https://www.9969.net/85906.html

小末小末
上一篇 2024年10月27日 18:53
下一篇 2024年10月27日 19:09

相关推荐