Vulnerability Description Apache Flink is an open source platform for distributed stream and batch data processing. At its core, Flink is a streaming dataflow engine that provides data distribution, communication, and fault tolerance capabilities for distributed computing on data streams. Flink builds batch processing on top of the streaming engine, covering local iteration support, managed memory, and program optimization. Recently, security researchers discovered that Apache Flink allows uploading arbitrary jar packages, leading to remote code execution. Vulnerability Level High risk Impact Apache Flink <=1.9.1 Vulnerability Reproduction First, download the Apache Flink 1.9.1 installation package and decompress it. Then, go to the bin folder and run ./start-cluster.sh to start the environment. Use the browser to access http://ip:8081 to verify whether it is successful, as shown in the following figure: Then use the generated jar Trojan file and upload it, as shown in the following figure: Open msf to monitor and click Submit, and you can see that a shell is successfully returned. As shown in the following figure: Restoration suggestions Users are advised to pay attention to the Apache Flink official website and obtain the latest patch for this vulnerability in a timely manner. Temporary solution suggestions Set up an IP whitelist to allow only trusted IPs to access the console and add access authentication. Vulnerability Detection Methods At present, there is a corresponding public detection POC on GitHub, as shown in the following figure: Link: https://github.com/LandGrey/flink-unauth-rce Summarize The above is the recurrence of the remote code execution vulnerability caused by uploading any Jar package in Apache Flink. I hope it will be helpful to you. If you have any questions, please leave me a message and I will reply to you in time. I would also like to thank everyone for their support of the 123WORDPRESS.COM website! You may also be interested in:
|
<<: JavaScript to add and delete messages on the message board
>>: MySQL cross-database transaction XA operation example
Here 123WORDPRESS.COM presents the first part of ...
Table of contents Basic Overview Enable GTID onli...
I'm building Nginx recently, but I can't ...
1. Installation version details Server: MariaDB S...
There is no need to say much about the difference...
How is Line-height inherited?Write a specific val...
background Since I was assigned to a new project ...
1. List The list ul container is loaded with a fo...
When talking about this issue, some people may ask...
This article shares the specific code of JavaScri...
Encapsulate a navigation bar component in Vue3, a...
Download the MySQL installer Official download ad...
Table of contents I've been learning React re...
Dataframe is a new API introduced in Spark 1.3.0,...
Table of contents Workaround Why can't I moni...