CVE-2023-52251 is a high severity (CVSS 8.8) code execution flaw in Provectus Kafka UI versions 0.4.0 through 0.7.2, reached through the q parameter of the topic messages endpoint. The record says no fixed release exists and the project has had no commit since 2024-04-08, so restrict access and plan a move.
What's affected
The NVD record covers provectus kafka-ui from 0.4.0 through 0.7.2. The weakness is CWE-94, code injection. The vector is CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H, which means a network attacker with low privileges and no user interaction can reach high confidentiality, integrity and availability impact.
CVE-2023-52251 summarises the entry. The affected path is the messages endpoint for a topic, under the clusters path of the application's API, and the parameter named in the record is q. The record also points to the source file MessageFilters.java in the v0.7.2 tag.
On fixes, the record's own text says no fixed release is available and that the project has had no commit since 2024-04-08. It also links a commit in the kafbat kafka-ui repository, a separate fork. I did not fetch that commit, so I cannot say which fork release carries it. Check the fork's release notes before you rely on it. A GitHub advisory database issue I read says that database had no entry for this CVE, which can matter if your tooling depends on it.
How to check if you're exposed
Kafka UI is a web application, usually run as a container. Find it first.
docker ps | grep -i kafka-ui
kubectl get pods -A | grep -i kafka-ui
Then read the image tag or the version shown in the application. The upstream image name is provectuslabs/kafka-ui, and anything from 0.4.0 to 0.7.2 is in range. Look at Compose files, Helm values and deployment manifests as well, because a Kafka UI instance is often started by a developer and forgotten.
Next, check who can reach it. A Kafka UI with no login in front of it, or reachable from the internet or a wide internal network, is the worst case. The vector needs low privileges, so also consider who holds an account in the tool.
What to do now
- Inventory every Kafka UI instance, including development and test ones.
- Remove it from any public address. Put it behind a VPN or an authenticating proxy, and allow only the people who need it.
- Turn on authentication in the tool if it is off, and remove accounts that are no longer needed.
- Run the container as a non-root user with a read-only file system where you can, and keep its network access to the brokers it truly needs.
- Plan a replacement. Evaluate a maintained fork or another Kafka management tool, and confirm in its release notes that it carries a fix for this CVE before you switch.
- Watch your Kafka credentials. If an instance was exposed, rotate the credentials stored in or reachable from it.
Why it matters
Code injection means a value from the request is treated as code by the application. Here the record ties it to a request parameter on the messages endpoint, which is a place the tool reads from when you filter messages. Running code in the context of the application puts the credentials it holds for your Kafka clusters within reach.
What makes this entry awkward is the lack of a fix. The upstream project has been quiet since early 2024, and the record says there is no fixed release. That shifts the work from patching to containment: limit who can reach the tool and what it can reach. The record links a public proof of concept repository, so assume the technique is known. This CVE is not listed in the CISA Known Exploited Vulnerabilities catalog, and the sources I read do not report exploitation in the wild. Safeguard's reachability analysis can help you separate the services that run affected code from those that merely list it, and the free scan at gold.safeguard.sh/scan can list the components in a project.
Try it yourself
Click through it at your own pace, or open it full screen.
Quick check
Is there a patched version of Provectus Kafka UI?
The record says no fixed release is available and the project has had no commit since 2024-04-08. A fork has a linked commit, which I did not verify. Treat the upstream project as unpatched.
Does the attacker need an account?
The vector says low privileges are required, so yes, some level of access to the tool is assumed. If your instance has no authentication, treat everyone who can reach it as meeting that bar.
Sources
- NVD record text for CVE-2023-52251, via the Safeguard record
- GitHub advisory database issue 9400
- Gold page for CVE-2023-52251
Last reviewed: 19 October 2026.