Tomcat PUT方法任意写文件漏洞(CVE-2017-12615)

Tomcat PUT方法任意写文件漏洞(CVE-2017-12615)

漏洞概述:

  • 如果Tomcat开启了PUT方法(默认关闭,有点鸡肋,但是有些页面需要PUT,无法关闭),则有可能存在远程命令执行漏洞,攻击者可以利用PUT方法上传jsp文件,从而造成远程命令执行,getshell等。

漏洞版本:

  • 7.0.0~7.0.79

漏洞搭建:

  • 利用vulhub漏洞平台(简单粗暴,一键生成漏洞!)进行快速搭建,cd 到tomcat目录,然后docker-compose up -d
  • 如图所示搭建成功,(靶机为8.5.19请忽视,漏洞存在7.0.0~7.0.79),漏洞走起!
  • Tomcat PUT方法任意写文件漏洞(CVE-2017-12615)_第1张图片

漏洞原理:

  • 由于conf/web.xml里readonly设置为false



  readonly
  false



漏洞复现:

  • 主流三个上传姿势,来一一验证

  • 第一个:/ ,由于Tomcat存在去掉最后的 / 的特性,此方法影响所有的Apache Tomcat 版本
    Tomcat PUT方法任意写文件漏洞(CVE-2017-12615)_第2张图片

  • 第二个姿势:NTFS文件系统::$DATA特性绕过(文件上传也可以尝试)
    Tomcat PUT方法任意写文件漏洞(CVE-2017-12615)_第3张图片

  • 第三个为:. 或%20 自行尝试
    Tomcat PUT方法任意写文件漏洞(CVE-2017-12615)_第4张图片

漏洞修复:

1.用户可以禁用PUT方法来防护此漏洞,设置为false。

ps:萌新一枚,余生很长,请多指教。
在这里插入图片描述

你可能感兴趣的:(CVE)