ApacheStruts2 目录遍历与文件上传漏洞复现(CVE-2024-53677,S2-067)(附脚本)
0x01 产品描述:
Apache Struts 2 是一个用于JAVA的MVC框架,它用于快速开发web应用。它的设计目标是使得开发者能够更容易的处理web应用的展现层,数据层,和业务层。
0x02 漏洞描述:
CVE-2024-53677 漏洞的根本原因是 Struts 框架中不安全的文件上传处理机制。攻击者利用 CVE-2024-53677 漏洞时,首先会通过构造恶意文件上传请求,利用文件上传表单或API接口,尝试将带有特殊路径的文件上传到服务器。攻击者可以在上传的文件路径中插入“../”序列,从而访问系统中其他目录的文件,甚至修改或执行系统文件。
如果上传的恶意文件是可执行的脚本或二进制文件(如PHP、JSP等),并且服务器对文件类型的检测不严格,攻击者就可以通过执行这些文件,获得对服务器的远程控制权限。例如,攻击者可以上传一个带有反向 shell 的脚本文件,进而实现对服务器的完全控制。同时攻击者可利用存在的路径遍历使用“../”等手段访问和操作本应无法访问的文件和目录。
0x03 影响版本:
Struts 2.0.0 - Struts 2.3.37
Struts 2.5.0 - Struts 2.5.33
Struts 6.0.0 - Str