Apache Struts2 远程代码执行漏洞(S2-045)漏洞测试工具&解决方案

JAVASEC 2019年11月21日01:43:38评论1,073 views字数 687阅读2分17秒阅读模式
摘要

简介
Apache Struts2的Jakarta Multipart parser插件存在远程代码执行漏洞,漏洞编号为CNNVD-201703-152。攻击者可以在使用该插件上传文件时,修改HTTP请求头中的Content-Type值来触发该漏洞,导致远程执行代码。

简介
Apache Struts2的Jakarta Multipart parser插件存在远程代码执行漏洞,漏洞编号为CNNVD-201703-152。攻击者可以在使用该插件上传文件时,修改HTTP请求头中的Content-Type值来触发该漏洞,导致远程执行代码。


简单的重复造了一个轮子,网上很多工具都是有后门的 Apache Struts2 远程代码执行漏洞(S2-045)漏洞测试工具&解决方案
Apache Struts2 远程代码执行漏洞(S2-045)漏洞测试工具&解决方案

影响版本:Struts 2.3.5 - Struts 2.3.31,Struts 2.5 - Struts 2.5.10

仅供学习测试使用,严禁非法操作!

下载地址:s2-045.zip
修复建议:

1.很官方的解释 升级struts2版本

2.做过滤器

获取Content-Type的值,如果包含了某些特征进行过滤pass(治标不治本,有被绕过的可能,后来出现S2-046果然是这个)

类似:(网上随意找,仅供参考思路)

protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response,FilterChain chain) throws ServletException, IOException {     String contentType=request.getContentType();     if(contentType!=null&&contentType.indexOf("ognl")!=-1){  //特征字符         System.out.println(contentType);         return;     }else{           chain.doFilter(request, response);     } } 

最靠谱的办法就是升级,升级升级。

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
JAVASEC
  • 本文由 发表于 2019年11月21日01:43:38
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Apache Struts2 远程代码执行漏洞(S2-045)漏洞测试工具&解决方案https://cn-sec.com/archives/70688.html

发表评论

匿名网友 填写信息