9.8

CVE-2023-48228: OAuth2: PKCE can be fully circumvented

Modified
Published 21-11-2023Last modified 02-08-2024

Vulnerability summary

CVE-2023-48228 is a critical (CVSS 9.8) Improper Authentication vulnerability in goauthentik authentik. EPSS estimates a 1.25% chance of exploitation in the next 30 days, higher than 69.3% of scored vulnerabilities. 1 public exploit is recorded.

Priority
Prioritisepublic exploit

Public exploit (GitHub, Date unknown)

Source freshness unavailable

How is this decided?
CVSS score
9.8/10
010
Critical · v3.1 (NVD)
EPSS score
1.25%
0%100%
Low · +0.01 pp in 30 days
KEVNot listedNot listed by any tracked catalog.
RansomwareNot flaggedNo ransomware use recorded.
Public exploits1github

Timeline

  1. 21-11-2023
    PublishedVulnerability first disclosed.
  2. 02-08-2024
    Last modifiedVulnerability information updated.

Description

authentik is an open-source identity provider. When initialising a oauth2 flow with a `code_challenge` and `code_method` (thus requesting PKCE), the single sign-on provider (authentik) must check if there is a matching and existing `code_verifier` during the token step. Prior to versions 2023.10.4 and 2023.8.5, authentik checks if the contents of `code_verifier` is matching only when it is provided. When it is left out completely, authentik simply accepts the token request with out it; even when the flow was started with a `code_challenge`. authentik 2023.8.5 and 2023.10.4 fix this issue.

CVSS metrics

2 scores · 2 sources · 1 version

EPSS trend

Probability

1.25%

Chance of exploitation in the next 30 days

Percentile

69%

Versus all other CVEs

30-day change

Increase +0.01 pp

From 1.24% on 04-10-2026

04-10-202603-11-2026

Known exploited

Compare KEV catalogs
CISA KEV

Not in the CISA KEV catalog.

ENISA CNW

Not in the ENISA CNW catalog.

CIRCL

Not in the CIRCL catalog.

Public exploits

1 found
  • githubUnverified

    Authentik

    Maturity: poc

Weaknesses

CWE · root cause

Affected systems

Version check

Known conditions: network-reachable, no authentication, no user interaction (CVSS vector). Other conditions: not stated in public data.

Goauthentik1 product
  • authentik< 2023.10.4 | < 2023.8.5 | ≥ 2023.10.0, < 2023.10.4

1 vendor · 1 product

References

10 links