CVE-2026-47203
Received Received - Intake
Authentication Bypass via Case-Sensitive Username Handling in Authelia

Publication date: 2026-06-19

Last updated on: 2026-06-19

Assigner: GitHub, Inc.

Description
Authelia is an open-source authentication and authorization server providing two-factor authentication and single sign-on (SSO) for applications via a web portal. In versions 4.38.0 through 4.39.19, when a user authenticates via Basic Auth (i.e via the `Authorization` header with the `Basic` scheme) on the authz verification endpoint, Authelia takes the username directly from the `Authorization` header and passes it as is to the regulation system for ban checking and attempt recording. LDAP treats usernames case insensitively : `john`, `John`, and `JOHN` all bind as the same user. But the regulation SQL queries treat the lookup of these values in certain scenarios as case sensitive. This allows each variation of a usernames case to have its own ban bucket. Upgrade to 4.39.20 to receive a patch. As a workaround, explicitly disable the basic auth mechanism.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-06-19
Last Modified
2026-06-19
Generated
2026-06-21
AI Q&A
2026-06-20
EPSS Evaluated
N/A
NVD
Affected Vendors & Products
Showing 2 associated CPEs
Vendor Product Version / Range
authelia authelia From 4.38.0 (inc) to 4.39.19 (inc)
authelia authelia 4.39.20
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-307 The product does not implement sufficient measures to prevent multiple failed authentication attempts within a short time frame.
CWE-178 The product does not properly account for differences in case sensitivity when accessing or determining the properties of a resource, leading to inconsistent results.
Attack-Flow Graph
AI Quick Actions
Instant insights powered by AI
Executive Summary

This vulnerability affects Authelia versions 4.38.0 through 4.39.19, an open-source authentication and authorization server. When a user authenticates using Basic Auth on the authorization verification endpoint, Authelia takes the username directly from the Authorization header and uses it for ban checking and attempt recording.

The issue arises because LDAP treats usernames case insensitively (e.g., 'john', 'John', and 'JOHN' are considered the same user), but the regulation SQL queries in Authelia treat these usernames case sensitively in some scenarios. This discrepancy allows different case variations of the same username to have separate ban buckets, effectively bypassing ban enforcement.

The vulnerability can be mitigated by upgrading to Authelia version 4.39.20 or later, or by disabling the Basic Auth mechanism as a workaround.

Impact Analysis

This vulnerability can allow an attacker to bypass ban enforcement mechanisms by using different case variations of a username. Since each case variation is treated as a separate entity in the ban system, an attacker can continue attempts without being effectively banned.

This could lead to increased risk of brute force or credential stuffing attacks, as the regulation system's attempt recording and ban enforcement can be circumvented.

Mitigation Strategies

To mitigate this vulnerability immediately, upgrade Authelia to version 4.39.20 or later where the patch is applied.

As a workaround before upgrading, explicitly disable the Basic Auth mechanism to prevent exploitation of the case sensitivity issue in ban buckets.

Compliance Impact

The vulnerability allows different case variations of the same username to be treated as separate entities in the ban system due to case sensitivity differences between LDAP and SQL queries. This could potentially lead to inconsistent enforcement of bans or access restrictions.

However, there is no explicit information provided about how this vulnerability directly impacts compliance with common standards and regulations such as GDPR or HIPAA.

Detection Guidance

This vulnerability involves the handling of Basic Auth usernames in Authelia versions 4.38.0 through 4.39.19, where case variations of usernames are treated separately in ban checking. Detection would involve identifying if your Authelia deployment is within these vulnerable versions and if Basic Auth is enabled on the authorization verification endpoint.

To detect attempts exploiting this issue on your network or system, you can monitor HTTP requests to the authz verification endpoint that use the Authorization header with the Basic scheme and check for multiple case variations of the same username.

Example commands to help detect this might include:

  • Using tcpdump or tshark to capture HTTP traffic and filter for Authorization headers with Basic scheme.
  • Using grep or similar tools on web server or proxy logs to find Authorization headers containing Basic authentication and analyze username case variations.
  • Example grep command on logs: grep -i 'Authorization: Basic' /path/to/log | cut -d' ' -f3 | base64 --decode | cut -d':' -f1 | sort | uniq -c
  • This command extracts the username part from Basic Auth headers, decodes it, and counts occurrences, which can help identify multiple case variations of the same username.

Additionally, verify your Authelia version and configuration to confirm if Basic Auth is enabled on the authz verification endpoint.

Chat Assistant
Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-47203. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70
EPSS Chart