Description
Authlib is a Python library which builds OAuth and OpenID Connect servers. In version 1.6.5 and prior, 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.
Problem types
CWE-352: Cross-Site Request Forgery (CSRF)
Product status
References
github.com/...uthlib/security/advisories/GHSA-fg6f-75jq-6523
github.com/...uthlib/security/advisories/GHSA-fg6f-75jq-6523
github.com/...ommit/2808378611dd6fb2532b189a9087877d8f0c0489
github.com/...ommit/7974f45e4d7492ab5f527577677f2770ce423228