CSRF in Authlib

CVE-2025-68158

Authlib is a Python library which builds OAuth and OpenID Connect servers. In versions 1.0.0 through 1.6.5, cache-backed state/request-token storage is not tied to the initiating user session, so CSRF is possible for any attacker that has a valid state (easily obtainable via an attacker-initiated authentication flow). When a cache is supplied to the OAuth client registry, FrameworkIntegration.set_state_data writes the entire state blob under _state_{app}_{state}, and get_state_data ignores the caller’s session altogether. This issue has been patched in version 1.6.6.

Vulnerability class: CSRF (Cross-Site Request Forgery)

Published · last modified .

CVSS v3 metric

CVSS v3 base score 5.7 (Medium). Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:N/A:N.

EPSS exploit prediction

EPSS: 0.003 (18.0th percentile), scored .

Very low probability of exploitation in the next 30 days; routine patching cadence is appropriate. 18th percentile — 18.0% of CVEs in the catalogue have a lower EPSS than this one. How to read EPSS.

EPSS trend (30 days)EPSS over the last 30 days for CVE-2025-68158: held from 0.003 to 0.003.

EPSS over last 30 days · oldest: 0.003 · newest: 0.003 · change: +0.000

Affected products

  • Authlib — versions >= 1.0.0, < 1.6.6

Weakness classification (CWE)

References

Frequently asked questions

What is CVE-2025-68158?
CVE-2025-68158 is a medium-severity vulnerability in Authlib, classified under Cross-Site Request Forgery (CSRF). CVSS score: 5.7/10. Published 2026-01-08.
How severe is CVE-2025-68158?
Medium severity. CVSS v3 base score is 5.7 out of 10.