Read the docs
TI-2024-15666 Aliases CVE-2024-23647GHSA-mrx3-gxjx-hjqj

PKCE downgrade attack in Authentik

Priority MEDIUM 41CWE-287Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
Required
Attack complexity
Low
Impact type
Security bypass
Confidentiality · integrity · availability
High · High · High
Fix status
Fixed

Attack profile from CVSS 3.1 · NVD. Fix status from CNA and GitHub. Impact type from CWE-287.

Summary

Authentik is an open-source Identity Provider. There is a bug in our implementation of PKCE that allows an attacker to circumvent the protection that PKCE offers. PKCE adds the code_challenge parameter to the authorization request and adds the code_verifier parameter to the token request. Prior to 2023.8.7 and 2023.10.7, a downgrade scenario is possible: if the attacker removes the code_challenge parameter from the authorization request, authentik will not do the PKCE check. Because of this bug, an attacker can circumvent the protection PKCE offers, such as CSRF attacks and code injection attacks. Versions 2023.8.7 and 2023.10.7 fix the issue.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00549 46th percentileScored 2026-11-07
Fix Fixed authentik (goauthentik): 2023.8.7, 2023.10.7goauthentik.io (Go): 2023.10.7, 2023.8.7

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Total

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
goauthentikauthentikbefore 2023.8.7; 2023.10.0 to before 2023.10.72023.8.7, 2023.10.7Patch availableCNA
—goauthentik.io (Go)2023.10.0 to before 2023.10.72023.10.7Patch availableGHSA-mrx3-gxjx-hjqj
—goauthentik.io (Go)before 2023.8.72023.8.7Patch availableGHSA-mrx3-gxjx-hjqj
  • authentik Vendorgoauthentik Affected before 2023.8.7; 2023.10.0 to before 2023.10.7 Fixed in 2023.8.7, 2023.10.7 Patch available CNA
  • goauthentik.io (Go) Vendor— Affected 2023.10.0 to before 2023.10.7 Fixed in 2023.10.7 Patch available GHSA-mrx3-gxjx-hjqj
  • goauthentik.io (Go) Vendor— Affected before 2023.8.7 Fixed in 2023.8.7 Patch available GHSA-mrx3-gxjx-hjqj

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:goauthentik:authentik:*:*:*:*:*:*:*:*before 2023.8.7; 2023.10.0 to before 2023.10.7Vulnerablegoauthentik
  • cpe:2.3:a:goauthentik:authentik:*:*:*:*:*:*:*:* Versions before 2023.8.7; 2023.10.0 to before 2023.10.7 Vulnerable ·goauthentik

Remediation

  • Fix · CNA authentik (goauthentik) Fixed in 2023.8.7, 2023.10.7
  • Fix · GHSA-mrx3-gxjx-hjqj goauthentik.io (Go) Fixed in 2023.10.7 Advisory →
  • Fix · GHSA-mrx3-gxjx-hjqj goauthentik.io (Go) Fixed in 2023.8.7 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2024-23647
  2. 2026-10-03 Alias added: GHSA-mrx3-gxjx-hjqj

References

  • TI-2026-36603 authentik: SourceStage bypass via empty POST CVSS 3.1CRITICAL 9.8
  • TI-2022-07608 authentik vulnerable to Improper Authentication via invitation URL token reuse CVSS 3.1CRITICAL 9.4
  • TI-2026-36598 authentik: `UserSourceConnection.user` and `GroupSourceConnection.group` are changeable through the API CVSS 3.1HIGH 8.8
  • TI-2022-22816 authentik allows existing authenticated users to create arbitrary accounts CVSS 3.1MEDIUM 6.4
  • TI-2024-25628 Insufficient access control for OAuth2 Device Code flow in authentik CVSS 3.1CRITICAL 9.8
  • TI-2023-24876 authentik potential installation takeover when default admin user is deleted CVSS 3.1CRITICAL 9.8
See all 32 →

Sources