CVE-2026-39852 Quarkus authorization bypass via semicolon path normalization inconsistency
Attackers can bypass path-based authorization policies in Quarkus applications by appending semicolons to URLs, accessing protected endpoints without proper credentials.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-39852?
CVE-2026-39852 is a high-severity authentication bypass vulnerability in quarkusio quarkus, published on 5 May 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
Quarkus is a Java framework for building cloud-native applications. In versions prior to 3.20.6.1, 3.27.3.1, 3.33.1.1, 3.35.1.1, 3.34.7, and 3.35.2, a path normalization inconsistency between the security layer and the routing layer allows unauthenticated or lower-privileged users to bypass HTTP path-based authorization policies. Quarkus's security layer performs authorization checks on the raw URL path which preserves matrix parameters (semicolons), while RESTEasy Reactive's routing layer strips matrix parameters before matching endpoints. An attacker can append a semicolon and arbitrary text to a request URL (e.g., /api/admin;anything) to bypass policies protecting /api/admin while still routing to the protected endpoint. This issue has been fixed in versions 3.20.6.1, 3.27.3.1, 3.33.1.1, 3.35.1.1, 3.34.7, and 3.35.2.
Which versions are affected by CVE-2026-39852?
8 open source packages ship an affected version, including io.quarkus:quarkus-vertx-http. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
io.quarkus:quarkus-vertx-http Maven | All versions | 3.20.6.1 |
io.quarkus:quarkus-vertx-http Maven | All versions | 3.20.6.1 |
io.quarkus:quarkus-vertx-http Maven | From 3.21.0 | 3.27.3.1 |
io.quarkus:quarkus-vertx-http Maven | From 3.21.0 | 3.27.3.1 |
io.quarkus:quarkus-vertx-http Maven | From 3.30.0 | 3.33.1.1 |
io.quarkus:quarkus-vertx-http Maven | From 3.30.0 | 3.33.1.1 |
2 more packages
io.quarkus:quarkus-vertx-http Maven | From 3.34.0 | 3.35.1.1 |
io.quarkus:quarkus-vertx-http Maven | From 3.34.0 | 3.35.1.1 |
Products include Quarkus Quarkus.
How do I fix CVE-2026-39852?
Upgrade io.quarkus:quarkus-vertx-http to a fixed version for your release line: 3.20.6.1, 3.27.3.1, 3.33.1.1 or 3.35.1.1.
Upgrade, and rotate credentials and sessions that may have been exposed. More about Authentication bypass.
Is CVE-2026-39852 being exploited?
There is no known exploitation of CVE-2026-39852 in the wild and no public exploit code.
Other vulnerabilities in quarkusio quarkus
- CVE-2022-4116 Code injection in quarkus dev ui config editor
- CVE-2022-2466 Quarkus does not terminate HTTP requests header context
- CVE-2024-12225 Io.quarkus:quarkus-security-webauthn: quarkus webauthn unexpected authentication bypass
- CVE-2022-0981 Privilege escalation in quarkus
- CVE-2023-6267 Quarkus: json payload getting processed prior to security checks when rest resources are used with annotations.
Sources
Also known as CLEANSTART-2026-CY16294, CLEANSTART-2026-QF31324, CLEANSTART-2026-SH82729, ECHO-7228-fbde-6e25, GHSA-rc95-pcm8-65v9, MINI-jc6v-6f3m-98c2 and 3 more.