Description
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.
Metrics
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:HWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| authlib | authlib | >= 1.0.0, < 1.6.6 |
References
- https://github.com/authlib/authlib/commit/2808378611dd6fb2532b189a9087877d8f0c0489Patch
- https://github.com/authlib/authlib/commit/7974f45e4d7492ab5f527577677f2770ce423228Patch
- https://github.com/authlib/authlib/security/advisories/GHSA-fg6f-75jq-6523Exploit, Vendor Advisory
- https://github.com/authlib/authlib/security/advisories/GHSA-fg6f-75jq-6523Exploit, Vendor Advisory
Timeline
- Published
- Jan 8, 2026
- Last modified
- Oct 14, 2026
- NVD status
- Modified