专栏首页漏斗社区Struts2-048漏洞复现(CVE-2017-9791)

Struts2-048漏洞复现(CVE-2017-9791)

2017年7月7日,Apache Struts发布最新的安全公告,漏洞编号为S2-048,该漏洞存在Struts2和Struts1一个Showcase插件Action Message类中,通过构建不可信的输入实现远程命令攻击,存在安全风险。

基础环境

1.Ubuntu 作为靶机:192.168.159.134

2.Ubuntu使用docker获取Struts2-048靶场

源码部署过程

首先Ubuntu已经安装了docker环境。用了DaoCloud 的自动安装脚本:

DaoCloud 的安装脚本

curl -sSL https://get.daocloud.io/docker | sh

安装了docker之后,安装docker的compose

可以像 python 包一样安装:

pip install -U docker-compose

验证是否可以使用:

使用git下载Strust2-048的靶场:

git clone https://github.com/rebo-rn/vuldocker.git

在s2-048这个文件有一个由compose编写的靶场环境的docker-compose.yml,前面已经安装好了compose,现在创建并启动它。

docker-compose build

docker-compose up -d

搭建成功,访问30081端口:

漏洞复现过程

漏洞POC:

链接:http://pan.baidu.com/s/1dFL7r0X

密码:uvg2

点击Struts 1 Integration,在出现的表单输入任意数据并提交,这里提前使用burp拦截数据包并将拦截的数据包发送到Repeater模块。

修改name参数的值为经过URL编码后的POC,数据执行命令id和ls -al,可以发现服务端执行了命令并将结果返回。

总结

这个漏洞复现比较简单,关键在于docker靶场的搭建。本文所用的git资源,还有很多其他的struts2的漏洞环境,有兴趣的小伙伴们可以深究。如果在环境搭建上有疑问,欢迎给斗哥留言。

本文分享自微信公众号 - 漏斗社区(newdooneSec),作者:reborn

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-07-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 专属|Spectre漏洞诞生新变体

    又到了熬夜看球喝啤酒的快乐日子了!昨晚,有多少小伙们跟斗哥一样,顶着黑眼圈看完了世界杯首场比赛!

    漏斗社区
  • 啥是佩奇?PWN解题技能全配齐!

    CTF的PWN题想必是很多小伙伴心里的痛,大多小伙伴不知道PWN该如何入门,不知道该如何系统性学习,本期开始,斗哥将输出PWN的一系列文章,手把手带小伙伴们入坑...

    漏斗社区
  • 专属| 具有僵尸网络功能的新蠕虫现身

    日前,研究团队发现了一种新的恶意软件,能够针对Linux和Windows服务器,将加密货币挖掘,僵尸网络和勒索软件功能结合在一个自我扩展的蠕虫软件包中。Xbas...

    漏斗社区
  • 「docker实战篇」python的docker-docker系统管理-基础概念(28)

    PS:说了下docker的优越性,vagrant的方式搭建了一个centos7的docker环境。一定要了解集装箱的概念对了解docker很有必要。

    IT故事会
  • 纪录一次sentry升级历史

    IOS同事说他发现了sentry的一个bug。说是因为9.0.0的bug导致debug file 提示上传成功,但是上网站却发现根本没有上传。所以就开始了我的升...

    魔王卷子
  • 纪录一次sentry升级历史

    IOS同事说他发现了sentry的一个bug。说是因为9.0.0的bug导致debug file 提示上传成功,但是上网站却发现根本没有上传。所以就开始了我的升...

    魔王卷子
  • Docker容器学习梳理--基础环境安装

    以下是centos系统安装docker的操作记录 1)第一种方法:采用系统自带的docker安装,但是这一般都不是最新版的docker 安装epel源 [roo...

    洗尽了浮华
  • 超详细记录公司多用户Docker仓库创建安全认证和应用

    概述:超详细记录建立公司内部多用户Docker仓库,自定义CA证书,https安全认证。服务器作为远程Docker仓库,其他开发端(如server2,serve...

    王小雷
  • Docker|基础篇

    Docker 在容器的基础上,进行了进一步的封装,从文件系统、网络互联到进程隔离等等,极大的简化了容器的创建和维护。使得 Docker 技术比虚拟机技术更为轻便...

    用户3467126
  • Docker学习笔记二打造基础镜像

    我是攻城师

扫码关注云+社区

领取腾讯云代金券