authentik is an open-source identity provider. Redirect URIs in the OAuth2 provider in authentik are checked by RegEx comparison.
When no Redirect URIs are configured in a provider, authentik will automatically use the first redirect_uri value received as an allowed redirect URI, without escaping characters that have a special meaning in RegEx. Similarly, the documentation did not take this into consideration either. Given a provider with the Redirect URIs set to https://foo.example.com, an attacker can register a domain fooaexample.com, and it will correctly pass validation. authentik 2024.8.5 and 2024.10.3 fix this issue. As a workaround, When configuring OAuth2 providers, make sure to escape any wildcard characters that are not intended to function as a wildcard, for example replace . with \..
{
"cna_assigner": "GitHub_M",
"cwe_ids": [
"CWE-185"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/52xxx/CVE-2024-52289.json"
}{
"extracted_events": [
{
"cpe": "cpe:2.3:a:goauthentik:authentik:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0"
},
{
"fixed": "2024.8.5"
}
],
"source": "CPE_RANGE"
},
{
"cpe": "cpe:2.3:a:goauthentik:authentik:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "2024.10.0"
},
{
"fixed": "2024.10.3"
}
],
"source": "CPE_RANGE"
},
{
"range": [
{
"fixed": "85bb638243c8d7ea42ddd3b15b3f51a90d2b8c54"
}
],
"source": "REFERENCES_COMMIT"
}
]
}