ZeroHour

CVE-2024-56325

moderate

Authentication Bypass in Apache Pinot Controller API

CVSS 3.1
9.8 critical
EPSS
80%p100
Published
()
Modified
AI analysis

CVE-2024-56325 is a critical authentication bypass (CWE-288) in Apache Pinot: when the request URL path is altered so it no longer matches the pattern the authentication check expects (per the disclosure, a path that does not contain '/' and contains characters such as a trailing dot), the endpoint processes the request without credentials. As demonstrated, an unauthenticated attacker can send a crafted POST to the /users endpoint on the controller port (9000 in the example) and successfully create a new user with the ADMIN role. The attacker thereby gains full control of the Pinot deployment, because that newly created administrative account can be used for further authenticated actions against the cluster. Any organization running Apache Pinot with its built-in authentication enabled is affected; the source data does not specify affected version ranges, so administrators should verify their version against the Apache security advisory. The flaw is not yet in CISA's KEV and no public proof-of-concept is known, but EPSS assigns an unusually high 80.2% probability of exploitation within 30 days (100th percentile), making rapid patching strongly advised.

What to do: Upgrade Apache Pinot to the fixed release identified in the official Apache security advisory as soon as practical; as an interim mitigation, restrict network access to the Pinot controller/API port (e.g., 9000) to trusted clients or place it behind an authenticating reverse proxy. Additionally, review existing user accounts for unexpectedly created ADMIN users and inspect access logs for POST requests to /users with manipulated paths (e.g., trailing semicolons or dots) indicating bypass attempts.

Affected
Apache Pinot
Estimated exposure
moderateroughly 1,000–10,000 internet-exposed Apache Pinot instances (order-of-magnitude estimate) — Apache Pinot is an open-source distributed OLAP datastore typically deployed inside private data-center or cloud clusters rather than mass-market edge software, so only a minority of controller/API ports (default 9000) are exposed to the…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

Authentication Bypass Issue If the path does not contain / and contain., authentication is not required. Expected Normal Request and Response Example curl -X POST -H "Content-Type: application/json" -d {\"username\":\"hack2\",\"password\":\"hack\",\"component\":\"CONTROLLER\",\"role\":\"ADMIN\",\"tables\":[],\"permissions\":[],\"usernameWithComponent\":\"hack_CONTROLLER\"} http://{server_ip}:9000/users Return: {"code":401,"error":"HTTP 401 Unauthorized"} Malicious Request and Response Example curl -X POST -H "Content-Type: application/json" -d '{\"username\":\"hack\",\"password\":\"hack\",\"component\":\"CONTROLLER\",\"role\":\"ADMIN\",\"tables\":[],\"permissions\":[],\"usernameWithComponent\":\"hack_CONTROLLER\"}' http://{serverip}:9000/users; http://{serverip}:9000/users; . Return: {"users":{}} A new user gets added bypassing authentication, enabling the user to control Pinot.

Vendors
apache
Products
pinot
Weakness
CWE-288
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

In the news