CVE-2026-0707
Java vulnerability analysis and mitigation

Overview

CVE-2026-0707 is a moderate-severity flaw in Keycloak's Authorization header parser that allows unauthenticated network attackers to potentially bypass security controls by exploiting overly permissive Bearer token parsing. The parser accepts non-standard characters (such as tab characters) as separators and tolerates case variations that deviate from RFC 6750 specifications, creating inconsistencies with upstream security controls such as WAFs and reverse proxies. It affects org.keycloak:keycloak-parent versions up to and including 26.5.0 (Github Advisory). The CVE was received from Red Hat on January 7, 2026, and published to the GitHub Advisory Database on January 8, 2026 (Github Advisory). It carries a CVSS v3.1 base score of 5.3 (Medium), assigned by Red Hat (Red Hat CVE).

Technical details

The root cause is classified as CWE-551 (Incorrect Behavior Order: Authorization Before Parsing and Canonicalization), where Keycloak's authentication pipeline performs authorization checks before fully parsing and canonicalizing the Authorization header (Github Advisory). Specifically, the Bearer token parser tolerates non-standard whitespace characters (e.g., tab characters), multiple spaces, mixed whitespace, and case variations in the Bearer scheme keyword that are non-compliant with RFC 6750 (Red Hat Bugzilla). This creates a parsing discrepancy between Keycloak and upstream security controls (WAFs, proxies), which may enforce stricter RFC compliance, potentially allowing a crafted Authorization header to pass WAF inspection but still be accepted by Keycloak. No public proof-of-concept code has been identified (Feedly).

Impact

Successful exploitation primarily affects integrity, with no direct confidentiality or availability impact (CVSS: C:N/I:L/A:N) (Github Advisory). An unauthenticated remote attacker could craft malformed Authorization headers that bypass WAF or proxy-level security controls while still being accepted by Keycloak, potentially enabling unauthorized access to protected resources (Red Hat Bugzilla). The practical impact depends heavily on the deployment architecture — environments relying on perimeter security controls (WAFs, API gateways) for token validation are at greater risk than those with defense-in-depth token validation at the application layer.

Exploitation steps

  1. Reconnaissance: Identify Keycloak instances (version ≤ 26.5.0) exposed via a WAF or reverse proxy that enforces strict RFC 6750 Bearer token format validation.
  2. Craft malformed Authorization header: Construct an HTTP request with a non-standard Authorization header, such as using tab characters as separators (e.g., Authorization: Bearer\t<token>) or mixed-case scheme keywords (e.g., Authorization: BEARER <token> or Authorization: bearer <token>).
  3. Bypass upstream security control: Send the crafted request through the WAF or proxy. If the WAF rejects or sanitizes standard malicious payloads but does not normalize non-standard Bearer formatting, the crafted header may evade WAF inspection rules that rely on strict RFC 6750 parsing.
  4. Achieve Keycloak acceptance: Keycloak's permissive parser accepts the non-standard header and processes the token, potentially granting access to protected resources that the WAF was intended to block (Red Hat Bugzilla, Github Advisory).

Indicators of compromise

  • Network: HTTP requests to Keycloak-protected endpoints containing Authorization headers with non-standard formatting — tab characters (\t), multiple spaces, or mixed-case Bearer scheme keywords (e.g., BEARER, bearer, BeArEr).
  • Logs: Keycloak access logs showing successful authentication events where the Authorization header contains non-RFC-6750-compliant formatting; WAF/proxy logs showing requests that were passed through without flagging despite unusual header formatting.
  • Logs: Discrepancies between WAF/proxy access logs and Keycloak authentication logs — requests appearing in Keycloak logs that do not appear in WAF block/alert logs for the same session.

Mitigation and workarounds

Red Hat has released security errata RHSA-2026:3947 and RHSA-2026:3948 addressing this vulnerability in the Red Hat build of Keycloak (Red Hat CVE). The GitHub Advisory notes affected versions as ≤ 26.5.0; Keycloak 26.5.4 and 26.6.3 have been released and include fixes (Keycloak Releases). As a workaround, organizations should implement strict RFC 6750 compliance validation at the WAF or API gateway layer, monitor authentication logs for unusual Bearer token formatting patterns, and consider adding additional token validation layers at the application level (Feedly).

Community reactions

Red Hat assigned and disclosed this CVE, classifying it as medium severity, and issued two errata (RHSA-2026:3947 and RHSA-2026:3948) to address it in their Keycloak product builds (Red Hat CVE). The vulnerability was tracked via a Red Hat Bugzilla entry and a Keycloak GitHub issue (#49433), indicating standard vendor handling without notable public controversy (Red Hat Bugzilla). Community and media reaction has been minimal, consistent with the moderate severity rating and absence of active exploitation.

Additional resources


SourceThis report was generated using AI

Related Java vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

GHSA-p279-2cqp-84jgCRITICAL9.6
  • Java logoJava
  • org.openidentityplatform.opendj:opendj-server-legacy
NoYesJul 24, 2026
GHSA-fp43-vj7g-pg92HIGH7.5
  • Java logoJava
  • org.omnifaces:omnifaces
NoYesJul 24, 2026
GHSA-7ppr-r889-mcf2HIGH7.5
  • Java logoJava
  • org.http4s:http4s-blaze-server_2.12
NoYesJul 24, 2026
GHSA-mhvj-jhpq-885vHIGH7.4
  • Java logoJava
  • org.http4s:http4s-blaze-server_2.13
NoYesJul 24, 2026
GHSA-46q4-43ph-c6frHIGH7.4
  • Java logoJava
  • org.http4s:blaze-http_2.12
NoYesJul 24, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management