struts2文件上传步骤 struts2实现文件上传功能

继3月6日struts2中的漏洞S2-045之后,今天又爆发了一个漏洞。2 Struts2官方确认了该漏洞(S2-046),并将其评为高危漏洞。S2-046漏洞的举报人来自高通、dbappsecurity、杭安恒、HPE三家公司。Struts2应用广泛,国内外大量厂商都在使用这个框架。Struts2是一个基于MVC设计模式的...

继3月6日struts2中的漏洞S2-045之后,今天又爆发了一个漏洞。2 Struts2官方确认了该漏洞(S2-046),并将其评为高危漏洞。S2-046漏洞的举报人来自高通、dbappsecurity、杭安恒、HPE三家公司。

Struts2应用广泛,国内外大量厂商都在使用这个框架。

Struts2是一个基于MVC设计模式的Web应用框架,本质上相当于一个servlet。在MVC设计模式中,Struts2作为控制器来建立模型和视图之间的数据交互。Struts 2是Struts的下一代产品,是基于struts 1和WebWork技术的全新Struts 2框架。

漏洞分析

使用Jakarta插件处理文件上传可能导致远程代码执行漏洞。

使用恶意的Content-Disposition值或不适当的Content-Length标头可能会导致远程命令执行。该漏洞类似于S2-045(CVE-2017-5638),但使用不同的攻击媒介。

触发漏洞需要满足的条件:


jakartastreammultipart请求已打开。也就是说,Struts2需要通过Jakarta stream parser进行配置(不是默认的)。检查Struts2配置文件中的

根据Content-Length头的声明,上传的文件大小大于Struts2默认允许的2GB。

文件名称包含OGNL有效负载。

漏洞的危害

通过修改HTTP请求头中的Content-Length字段,使其大于Struts2允许的最大值(2GB),并修改Content-Disposition中的filename字段,攻击者可以构建恶意代码来利用此漏洞,在受影响的服务器上执行系统命令,并进一步完全控制服务器,从而导致拒绝服务、数据泄漏、网站篡改和其他影响。由于默认情况下启用了此漏洞利用所需的组件,因此该漏洞更加严重

漏洞检测

测试以下列方式进行:

检查web目录/WEB-INF/lib/目录中的struts2-core-x.x.x.jar文件。如果x代表的版本号在2.3.5和2.3.31和2.5和2.5到2.5.10之间,则存在漏洞。

溶液

目前已经有人在网上公布了漏洞POC。为了保护您的资产,请按照以下方法及时修复漏洞。

S2-046PoC如下:

1.严格过滤Content-Typefilename中的内容,禁止ognl表达式的相关字段。

2.如果您使用基于Jakarta的文件上传多部分解析器,请将Apache Struts升级到2.3.32或2.5.10.1。

3.和前面的漏洞一样,也有相应的变通方法,即采用Mutipart parser的其他实现。Apache还提供了2个插件作为解决方案(通过链接了解:
https://github . com/Apache/struts-extras)——如果你使用的是Apache struts版本2 . 3 . 8–2 . 5 . 5或2 . 3 . 20–2 . 5 . 5,可以采用这个解决方案。

4.此外,您还可以从堆中删除文件上传***,定义自己的堆并将其设置为默认堆。这个解决方案对于Struts 2 . 5 . 8–2 . 5 . 10是有效的。

本文来自水中明月投稿,不代表舒华文档立场,如若转载,请注明出处:https://www.chinashuhua.cn/24/498487.html

打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
() 0
上一篇 04-10
下一篇 04-10

相关推荐

  • 微信摇一摇传图功能 微信朋友圈上传原图的步骤

    详细解释一下拥有超级震撼大屏效果的微信的首发仪式是如何被撼动的。启动仪式是许多活动的重要组成部分。一些传统的启动仪式可能主要由参与启动仪式的嘉宾来完成,对于现场的普通大众来说没有太大的参与感。但是云交互平台的微信可以通过摇一摇启动仪式完美解决这个问题。微信

    2023-07-24 18:52:01
    846 0
  • 山姆亲友卡要上传照片吗

    1.山姆会员是一个受欢迎的会员超市。只有会员自己可以去购物。一般来说,不能去购物的Sam会员卡分为主卡和副卡。子卡和主卡一样,是Sam子卡,需要注册姓名,上传照片。需要登记姓名和照片吗?山姆会员卡的子卡;可以,但是只有会员卡才能买东西。穿着它到处逛逛也是可以的。可

    2023-07-20 00:26:01
    421 0
  • 135编辑器可上传多大图片详情

    可以用小蚂蚁编辑器,最多可以上传8M高清大图。你好,这个你肯定是要把这图片自己调整下尺寸 或者是把这个图片压缩下,把这个尽量的压缩文件到5M以下的 否则你这个是上传不上去的啦也不能用的,可以使用美图秀秀或者是魔术师这样的软件 来把这个压缩或者是像素调低一点。图片

    2023-07-13 03:23:01
    346 0
  • spring文件上传怎么实现 springmvc文件上传教程

    SpringMVC实现文件上传文件上传知识复习文件上传的必要先决条件导入通过文件上传的jar包以传统方式上传文件跨服务器上传文件可能的问题文件上传知识复习文件上传的必要先决条件1.表单form的enctype值必须为:multipart/form-data(默认值为:application/x-***-form-urlencoded)

    2023-07-10 13:35:01
    1039 0

评论列表

联系我们

在线咨询: QQ交谈

邮件:admin@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信