8.Structs 2-057漏洞复现

Posted bmjoker

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了8.Structs 2-057漏洞复现相关的知识,希望对你有一定的参考价值。

漏洞信息:

定义XML配置时如果namespace值未设置且上层动作配置(Action Configuration)中未设置或用通配符namespace时可能会导致远程代码执行。

url标签未设置value和action值且上层动作未设置或用通配符namespace时可能会导致远程代码执行。

官方解决方案:

升级至版本2.3.35或2.5.17。这两个版本仅仅只是更新了安全补丁,不存在兼容性问题。

临时解决方案:

推荐用户及时更新,但如果不想更新,可暂时使用官方提供的临时解决方案:当上层动作配置中未设置或使用通配符namespace时,

验证所有XML配置中的namespace,同时在JSP中验证所有url标签的value和action。

影响范围

所有Struts2开发者及用户

漏洞影响

有可能会导致远程代码执行

最高安全风险

关键

推荐防护措施

更新至2.3.35或2.5.17

影响版本

Struts 2.3 – Struts 2.3.34, Struts 2.5 – Struts 2.5.16

其余版本也可能会受到影响

漏洞报告人

Man Yue [email protected] Security Research team

CVE编号

CVE-2018-11776

漏洞复现:

这里使用 docker-composevulnhub 来搭建漏洞利用环境,

使用的漏洞来自: https://github.com/vulhub/vulhub

本机使用的是Ubuntu系统,克隆vulhub,并且进入到漏洞文件中:

git clone https://github.com/vulhub/vulhub

cd vulhub/struts2/s2-048

 启动漏洞环境并查看容器:

docker-compose up -d

docker ps -a

技术分享图片

在容器里面开启一个交互模式的终端:

docker exec -i -t <你上面显示的CONTAINER ID> /bin/bash

技术分享图片

根据公告 https://struts.apache.org/releases.html

技术分享图片

发现Struts 2.5.16存在s2-057漏洞,然后去下载这个版本,来复现漏洞:

https://fossies.org/linux/www/legacy/struts-2.5.16-all.zip/

apt-get update -y
mkdir /usr/local/tomcat/webapps/test
wget https://fossies.org/linux/www/legacy/struts-2.5.16-all.zip
apt-get install unzip -y
unzip struts-2.5.16-all.zip
cp struts-2.5.16/apps/struts2-showcase.war /usr/local/tomcat/webapps/

技术分享图片

技术分享图片

 





以上是关于8.Structs 2-057漏洞复现的主要内容,如果未能解决你的问题,请参考以下文章

漏洞复现海洋CMS6.28远程代码执行

漏洞复现海洋CMS6.28远程代码执行

Windows漏洞:MS08-067远程代码执行漏洞复现及深度防御

任意代码执行漏洞复现

WinRAR代码执行漏洞复现

windows RDP远程代码执行_CVE-2019-0708漏洞复现