CVE-2017-9805:Struts2 REST插件远程执行命令漏洞(S2-052) 分析报告

图片描述

一. 漏洞概述
2017年9月5日,Apache Struts 2官方发布一个严重级别的安全漏洞公告,该漏洞由国外安全研究组织lgtm.com的安全研究人员发现,漏洞编号为CVE-2017-9805(S2-052),在一定条件下,攻击者可以利用该漏洞远程发送精心构造的恶意数据包,获取业务数据或服务器权限,存在高安全风险。

二. 漏洞基本信息
漏洞编号:
CVE-2017-9805
漏洞名称:
Struts2 REST插件远程执行命令漏洞(S2-052)
官方评级: **
严重
**漏洞描述:
当Struts2使用REST插件使用XStream的实例xstreamhandler处理反序列化XML有效载荷时没有进行任何过滤,可以导致远程执行代码,攻击者可以利用该漏洞构造恶意的XML内容获取服务器权限。
漏洞利用条件和方式:
利用条件:使用REST插件并在受影响版本范围内。
利用方式:攻击者构建恶意数据包远程利用。
漏洞影响范围:
Struts 2.3.x全系版本(根据实际测试,2.3版本也存在该漏洞)
Struts 2.5 - Struts 2.5.12

三. 漏洞详细分析信息
本次Struts2漏洞是因为它的一个REST插件struts2-rest-plugin.jar用到了XStreamHandler这个类,这个类对http请求中content-type是application/xml的,调用XStream进行处理,这里先看一下污点传入,如图:
图片描述
图片描述

然而漏洞真正存在域XStream中,触发的根本在于javax.imageio.spi.FilterIterator类的next()会调用FilterIteratorFilterfilter()java

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值