CVE-2026-39852
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.
How to fix
- quarkus quarkus3.20.6.1, 3.27.3.1, 3.33.1.1, 3.34.7, 3.35.2 or later
- io.quarkus:quarkus-vertx-http3.20.6.1, 3.27.3.1, 3.33.1.1, 3.35.1.1 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| quarkus quarkus | v < 3.20.6.1, 3.21.0 ≤ v < 3.27.3.1, 3.28.0 ≤ v < 3.33.1.1, 3.34.0 ≤ v < 3.34.7, 3.35.0 ≤ v < 3.35.2 | 3.20.6.1, 3.27.3.1, 3.33.1.1, 3.34.7, 3.35.2 |
| io.quarkus:quarkus-vertx-httpMaven | v < 3.20.6.1, 3.21.0 ≤ v < 3.27.3.1, 3.30.0 ≤ v < 3.33.1.1, 3.34.0 ≤ v < 3.35.1.1 | 3.20.6.1, 3.27.3.1, 3.33.1.1, 3.35.1.1 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.