{"kind": "product", "path": "vulns/debian-12/python-authlib", "name": "python-authlib", "product": "python-authlib", "ecosystem": "Debian:12", "items": [{"id": "CVE-2026-114620", "noindex": false, "published": "2026-10-22T21:34:11.909Z", "modified": "2026-10-22T21:34:11.909Z", "cvss": 5.4, "cvss_vector": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N", "severity": "medium", "epss": 0.0029, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-114620", "title": "Authlib: Unvalidated request_uri fetch in JWT-secured authorization request (JAR) leading to SSRF", "description": "Authlib is a Python library which builds OAuth and OpenID Connect servers. Prior to 1.9.0, Authlib's RFC 9101 JWTAuthenticationRequest passes the unauthenticated, client-controlled request_uri parameter to the abstract get_request_object() hook before applying a destination or registration policy; the hook itself performs no network request, while the documentation demonstrates an unrestricted HTTP fetch. In deployments whose integrator implements that hook as an unrestricted outbound fetch, a remote attacker who knows a valid public client identifier can make the authorization server request internal, link-local, or otherwise unintended URLs", "references": ["https://github.com/authlib/authlib/security/advisories/GHSA-x4rv-c3wx-4cr8", "https://github.com/authlib/authlib/pull/949", "https://github.com/authlib/authlib/commit/6563f6f7a8c2f71d2f85ee7511d72a4fbae3acc0"], "fixes": [], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}, {"id": "CVE-2026-114619", "noindex": false, "published": "2026-10-22T21:31:02.929Z", "modified": "2026-10-22T21:31:02.929Z", "cvss": 4.6, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N", "severity": "medium", "epss": 0.00157, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-114619", "title": "Authlib: OpenID implicit grant checks raw scope instead of allowed scope before issuing ID tokens", "description": "Authlib is a Python library which builds OAuth and OpenID Connect servers. Prior to 1.9.0, OpenIDImplicitGrant.validate_authorization_request() checks the client-controlled raw request.payload.scope for openid after the parent grant has filtered allowed scopes into request.scope. A registered client permitted an ID token response type but not the openid scope can add openid to the request, obtain user consent, and receive a signed ID token containing the user's subject and allowed profile claims. Authorization code flow and deployments that allow openid for every client permitted an ID token response are not affected. In authlib/oidc/core/gra", "references": ["https://github.com/authlib/authlib/security/advisories/GHSA-q686-2qmg-hqc7", "https://github.com/authlib/authlib/pull/945", "https://github.com/authlib/authlib/commit/e3bd41cb29dcfee434453b135ffb487884baeedf"], "fixes": [], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}, {"id": "CVE-2026-114618", "noindex": false, "published": "2026-10-22T21:28:37.879Z", "modified": "2026-10-22T21:28:37.879Z", "cvss": 6.8, "cvss_vector": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N", "severity": "medium", "epss": 0.00225, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-114618", "title": "Authlib: Default JWT bearer grant accepts assertions for the wrong audience", "description": "Authlib is a Python library which builds OAuth and OpenID Connect servers. Prior to 1.9.0, the default RFC 7523 JWTBearerGrant.get_audiences() returns an empty list, causing JWTBearerGrant.verify_claims() to require only that an aud claim exists without matching the current authorization server. An attacker holding a legitimate assertion for another service can present it to a server that shares the signing key and uses the default grant, obtaining an access token across a trust boundary. Implementations that override get_audiences() with the server's valid audience identifiers are not affected. This issue is fixed in version 1.9.0.", "references": ["https://github.com/authlib/authlib/security/advisories/GHSA-fch4-3c6x-j4gc", "https://github.com/authlib/authlib/pull/945", "https://github.com/authlib/authlib/commit/e3bd41cb29dcfee434453b135ffb487884baeedf"], "fixes": [], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}, {"id": "CVE-2026-114617", "noindex": false, "published": "2026-10-22T21:25:31.732Z", "modified": "2026-10-23T15:00:16.051Z", "cvss": 4.2, "cvss_vector": "CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:L/A:N", "severity": "medium", "epss": 0.00188, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-114617", "title": "Authlib: ID token can disable its own nonce validation via the nonce_supported claim", "description": "Authlib is a Python library which builds OAuth and OpenID Connect servers. Prior to 1.9.0, OpenIDMixin.parse_id_token() reads the nonce_supported decision from the untrusted ID token being validated and sets the expected nonce to null when that claim is the JSON boolean false. In implicit and hybrid relying parties, or applications that directly accept externally supplied ID tokens, an attacker with a captured validly signed token can bypass the nonce-to-session binding and replay the victim's token into an attacker-controlled session. Plain authorization code flow is not affected, and the token must still pass signature, issuer, and audience", "references": ["https://github.com/authlib/authlib/security/advisories/GHSA-c5mf-xmp2-59rc", "https://github.com/authlib/authlib/pull/949", "https://github.com/authlib/authlib/commit/6563f6f7a8c2f71d2f85ee7511d72a4fbae3acc0"], "fixes": [], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}, {"id": "CVE-2026-114616", "noindex": false, "published": "2026-10-22T21:14:03.060Z", "modified": "2026-10-22T21:14:03.060Z", "cvss": 7.4, "cvss_vector": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N", "severity": "high", "epss": 0.00212, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-114616", "title": "Authlib accepts an empty HMAC key, allowing JWS/JWT signature forgery (HS256/HS384/HS512)", "description": "Authlib is a Python library which builds OAuth and OpenID Connect servers. Prior to 1.9.1, Authlib's OctKey.import_key() and HMAC signing and verification path accept zero-length key material. If an application's secret lookup can return an empty string or empty bytes, a remote attacker can compute the deterministic HS256, HS384, or HS512 signature for arbitrary token claims and have Authlib treat the token as authentic. This issue is fixed in version 1.9.1.", "references": ["https://github.com/authlib/authlib/security/advisories/GHSA-8m4g-j4wp-wgcg", "https://github.com/authlib/authlib/commit/4ff30db442c70e29486e1982cb0ad37c037f5f4b", "https://github.com/authlib/authlib/releases/tag/v1.9.1"], "fixes": [], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}, {"id": "CVE-2026-114615", "noindex": false, "published": "2026-10-22T21:10:02.023Z", "modified": "2026-10-22T21:10:02.023Z", "cvss": 7.4, "cvss_vector": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N", "severity": "high", "epss": 0.00127, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-114615", "title": "Authlib incomplete algorithm-confusion fix permits HMAC forgery with prefixed public keys", "description": "Authlib is a Python library which builds OAuth and OpenID Connect servers. From 1.3.1 until 1.9.0, OctKey.import_key() checks asymmetric-key markers only at byte zero while Authlib's PEM loaders accept leading whitespace, comments, or a byte-order mark. In deployments that use the documented mixed algorithm registry and already configure verification with PEM or certificate bytes containing such a prefix, an unauthenticated attacker who knows those same public-key bytes can use them as an HMAC secret and forge HS256 tokens with arbitrary identity or authorization claims. This is a bypass of the remediation for CVE-2024-37568. The module-level", "references": ["https://github.com/authlib/authlib/security/advisories/GHSA-7vr2-2fgp-9w7p", "https://github.com/authlib/authlib/pull/945", "https://github.com/authlib/authlib/commit/e3bd41cb29dcfee434453b135ffb487884baeedf"], "fixes": [], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}, {"id": "CVE-2026-114614", "noindex": false, "published": "2026-10-22T21:00:14.354Z", "modified": "2026-10-22T21:00:14.354Z", "cvss": 2.6, "cvss_vector": "CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:N/A:N", "severity": "low", "epss": 0.00177, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-114614", "title": "Authlib: is_secure_transport() loopback exemption can be bypassed with a userinfo component, allowing cleartext-HTTP URLs to non-loopback hosts", "description": "Authlib is a Python library which builds OAuth and OpenID Connect servers. From 0.13 until 1.8.0, authlib.common.security.is_secure_transport() uses a textual prefix comparison for loopback HTTP exemptions, so a URL whose userinfo begins with a loopback host can be accepted even when its parsed host is an external non-loopback system. An external party able to supply a URL to OIDC RP-Initiated Logout registration, authorization-server metadata validation, or another call site can bypass the TLS-required guard and cause cleartext redirection or acceptance of cleartext endpoints. The issue does not bypass redirect URI exact matching and does no", "references": ["https://github.com/authlib/authlib/security/advisories/GHSA-jj7h-c3hg-m23x", "https://github.com/authlib/authlib/commit/95ad1f90acf0c7b9cf2a8f25e6eb3f1135b8dc70", "https://github.com/authlib/authlib/releases/tag/v1.8.0"], "fixes": [], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}, {"id": "CVE-2026-104056", "noindex": false, "published": "2026-10-01T18:03:27.484Z", "modified": "2026-10-05T18:21:14.480Z", "cvss": 9.8, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", "severity": "critical", "epss": 0.00167, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-104056", "title": "CVE-2026-104056", "description": "Authlib version 1.7.2 and below contains a vulnerability where discovery JSON metadata is cached without validation or issuer-origin binding. This allows a poisoned discovery response to replace all endpoint values with attacker-controlled values rather than endpoint URLs that share the origin of the configured server metadata URL.", "references": ["https://uziii2208.github.io/post/cve-2026-104056/", "https://nvd.nist.gov/vuln/detail/CVE-2026-104056"], "fixes": [], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}, {"id": "CVE-2026-96760", "noindex": false, "published": "2026-09-28T19:37:58.973Z", "modified": "2026-10-01T13:58:32.806Z", "cvss": 9.8, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", "severity": "critical", "epss": 0.00278, "kev": false, "exploits": ["public-poc"], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-96760", "title": "Authlib library contains a signature‑verification bypass vulnerability", "description": "Authlib (v1.7.2 and below) contains a signature verification bypass vulnerability. The JsonWebSignature.deserialize_json() method accepts a JSON Serialization JWS object and returns the payload as successfully verified without checking for a signature and without requiring a cryptographic key.", "references": ["https://github.com/authlib/authlib", "https://kb.cert.org/vuls/id/762428", "https://www.kb.cert.org/vuls/id/762428"], "fixes": [], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}, {"id": "CVE-2026-44681", "noindex": false, "published": "2026-05-27T19:20:44.122Z", "modified": "2026-06-02T16:56:48.017Z", "cvss": 6.1, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N", "severity": "medium", "epss": 0.00291, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-44681", "title": "Authlib: Open Redirect in Authlib OIDC Implicit/Hybrid Authorization", "description": "Authlib is a Python library which builds OAuth and OpenID Connect servers. Prior to 1.6.12 and 1.7.1, an unauthenticated open redirect in Authlib's OpenIDImplicitGrant and OpenIDHybridGrant authorization endpoint lets a remote attacker cause the authorization server to issue an HTTP 302 to an attacker-chosen URL by submitting an authorization request that omits the openid scope. This vulnerability is fixed in 1.6.12 and 1.7.1.", "references": ["https://github.com/authlib/authlib/security/advisories/GHSA-r95x-qfjj-fjj2", "https://nvd.nist.gov/vuln/detail/CVE-2026-44681"], "fixes": ["1.2.0-1+deb12u2"], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}, {"id": "CVE-2026-41425", "noindex": false, "published": "2026-04-24T19:14:37.904Z", "modified": "2026-04-27T13:35:01.596Z", "cvss": 5.4, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N", "severity": "medium", "epss": 0.00137, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-41425", "title": "Authlib: Cross-site request forging when using cache", "description": "Authlib is a Python library which builds OAuth and OpenID Connect servers. Prior to 1.6.11, there is no CSRF protection on the cache feature in authlib.integrations.starlette_client.OAuth.  This vulnerability is fixed in 1.6.11.", "references": ["https://github.com/authlib/authlib/security/advisories/GHSA-jj8c-mmj3-mmgv", "https://nvd.nist.gov/vuln/detail/CVE-2026-41425"], "fixes": ["1.2.0-1+deb12u2"], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}, {"id": "CVE-2026-28498", "noindex": false, "published": "2026-03-16T18:03:28.821Z", "modified": "2026-09-10T12:04:48.234Z", "cvss": 8.2, "cvss_vector": "CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N", "severity": "high", "epss": 0.00267, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-28498", "title": "Authlib: Fail-Open Cryptographic Verification in OIDC Hash Binding", "description": "Authlib is a Python library which builds OAuth and OpenID Connect servers. Prior to version 1.6.9, a library-level vulnerability was identified in the Authlib Python library concerning the validation of OpenID Connect (OIDC) ID Tokens. Specifically, the internal hash verification logic (_verify_hash) responsible for validating the at_hash (Access Token Hash) and c_hash (Authorization Code Hash) claims exhibits a fail-open behavior when encountering an unsupported or unknown cryptographic algorithm. This flaw allows an attacker to bypass mandatory integrity protections by supplying a forged ID Token with a deliberately unrecognized alg header ", "references": ["https://github.com/authlib/authlib/security/advisories/GHSA-m344-f55w-2m6j", "https://github.com/authlib/authlib/commit/b9bb2b25bf8b7e01512d847a95c1749646eaa72b", "https://github.com/authlib/authlib/releases/tag/v1.6.9"], "fixes": ["1.2.0-1+deb12u2"], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}, {"id": "CVE-2026-28490", "noindex": false, "published": "2026-03-16T17:37:57.425Z", "modified": "2026-03-16T18:17:35.003Z", "cvss": 8.3, "cvss_vector": "CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N", "severity": "high", "epss": 0.00165, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-28490", "title": "Authlib Vulnerable to JWE RSA1_5 Bleichenbacher Padding Oracle", "description": "Authlib is a Python library which builds OAuth and OpenID Connect servers. Prior to version 1.6.9, a cryptographic padding oracle vulnerability was identified in the Authlib Python library concerning the implementation of the JSON Web Encryption (JWE) RSA1_5 key management algorithm. Authlib registers RSA1_5 in its default algorithm registry without requiring explicit opt-in, and actively destroys the constant-time Bleichenbacher mitigation that the underlying cryptography library implements correctly. This issue has been patched in version 1.6.9.", "references": ["https://github.com/authlib/authlib/security/advisories/GHSA-7432-952r-cw78", "https://github.com/authlib/authlib/commit/48b345f29f6c459f11c6a40162b6c0b742ef2e22", "https://github.com/authlib/authlib/releases/tag/v1.6.9"], "fixes": ["1.2.0-1+deb12u2"], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}, {"id": "CVE-2026-27962", "noindex": false, "published": "2026-03-16T17:34:38.946Z", "modified": "2026-09-10T12:04:56.626Z", "cvss": 9.1, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N", "severity": "critical", "epss": 0.00537, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-27962", "title": "Authlib JWS JWK Header Injection: Signature Verification Bypass", "description": "Authlib is a Python library which builds OAuth and OpenID Connect servers. Prior to version 1.6.9, a JWK Header Injection vulnerability in authlib's JWS implementation allows an unauthenticated attacker to forge arbitrary JWT tokens that pass signature verification. When key=None is passed to any JWS deserialization function, the library extracts and uses the cryptographic key embedded in the attacker-controlled JWT jwk header field. An attacker can sign a token with their own private key, embed the matching public key in the header, and have the server accept the forged token as cryptographically valid — bypassing authentication and authoriz", "references": ["https://github.com/authlib/authlib/security/advisories/GHSA-wvwj-cvrp-7pv5", "https://github.com/authlib/authlib/commit/a5d4b2d4c9e46bfa11c82f85fdc2bcc0b50ae681", "https://github.com/authlib/authlib/releases/tag/v1.6.9"], "fixes": ["1.2.0-1+deb12u2"], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}, {"id": "CVE-2025-68158", "noindex": false, "published": "2026-01-08T17:58:17.724Z", "modified": "2026-03-30T12:20:39.207Z", "cvss": 5.7, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:N/A:N", "severity": "medium", "epss": 0.00272, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2025-68158", "title": "Authlib: 1-click Account Takeover", "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.", "references": ["https://github.com/authlib/authlib/security/advisories/GHSA-fg6f-75jq-6523", "https://github.com/authlib/authlib/commit/2808378611dd6fb2532b189a9087877d8f0c0489", "https://github.com/authlib/authlib/commit/7974f45e4d7492ab5f527577677f2770ce423228"], "fixes": ["1.2.0-1+deb12u1"], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}, {"id": "CVE-2025-62706", "noindex": false, "published": "2025-10-22T21:31:10.997Z", "modified": "2025-11-03T17:45:27.594Z", "cvss": 6.5, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H", "severity": "medium", "epss": 0.00458, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2025-62706", "title": "Authlib : JWE zip=DEF decompression bomb enables DoS", "description": "Authlib is a Python library which builds OAuth and OpenID Connect servers. Prior to version 1.6.5, Authlib’s JWE zip=DEF path performs unbounded DEFLATE decompression. A very small ciphertext can expand into tens or hundreds of megabytes on decrypt, allowing an attacker who can supply decryptable tokens to exhaust memory and CPU and cause denial of service. This issue has been patched in version 1.6.5. Workarounds for this issue involve rejecting or stripping zip=DEF for inbound JWEs at the application boundary, forking and add a bounded decompression guard via decompressobj().decompress(data, MAX_SIZE)) and returning an error when output exc", "references": ["https://github.com/authlib/authlib/security/advisories/GHSA-g7f3-828f-7h7m", "https://github.com/authlib/authlib/commit/e0863d5129316b1790eee5f14cece32a03b8184d", "https://lists.debian.org/debian-lts-announce/2025/10/msg00032.html"], "fixes": ["1.2.0-1+deb12u1"], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}, {"id": "CVE-2025-61920", "noindex": false, "published": "2025-10-10T19:25:07.679Z", "modified": "2025-11-03T17:45:23.708Z", "cvss": 7.5, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H", "severity": "high", "epss": 0.00638, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2025-61920", "title": "Authlib is vulnerable to Denial of Service via Oversized JOSE Segments", "description": "Authlib is a Python library which builds OAuth and OpenID Connect servers. Prior to version 1.6.5, Authlib’s JOSE implementation accepts unbounded JWS/JWT header and signature segments. A remote attacker can craft a token whose base64url‑encoded header or signature spans hundreds of megabytes. During verification, Authlib decodes and parses the full input before it is rejected, driving CPU and memory consumption to hostile levels and enabling denial of service. Version 1.6.5 patches the issue. Some temporary workarounds are available. Enforce input size limits before handing tokens to Authlib and/or use application-level throttling to reduce ", "references": ["https://github.com/authlib/authlib/security/advisories/GHSA-pq5p-34cr-23v9", "https://github.com/authlib/authlib/commit/867e3f87b072347a1ae9cf6983cc8bbf88447e5e", "https://lists.debian.org/debian-lts-announce/2025/10/msg00032.html"], "fixes": ["1.2.0-1+deb12u1"], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}, {"id": "CVE-2025-59420", "noindex": false, "published": "2025-09-22T17:28:53.869Z", "modified": "2025-11-03T17:45:19.901Z", "cvss": 7.5, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N", "severity": "high", "epss": 0.00262, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2025-59420", "title": "Authlib: JWS/JWT accepts unknown crit headers (RFC violation → possible authz bypass)", "description": "Authlib is a Python library which builds OAuth and OpenID Connect servers. Prior to version 1.6.4, Authlib’s JWS verification accepts tokens that declare unknown critical header parameters (crit), violating RFC 7515 “must‑understand” semantics. An attacker can craft a signed token with a critical header (for example, bork or cnf) that strict verifiers reject but Authlib accepts. In mixed‑language fleets, this enables split‑brain verification and can lead to policy bypass, replay, or privilege escalation. This issue has been patched in version 1.6.4.", "references": ["https://github.com/authlib/authlib/security/advisories/GHSA-9ggr-2464-2j32", "https://github.com/authlib/authlib/commit/6b1813e4392eb7c168c276099ff7783b176479df", "https://lists.debian.org/debian-lts-announce/2025/10/msg00032.html"], "fixes": ["1.2.0-1+deb12u1"], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}, {"id": "CVE-2024-37568", "noindex": false, "published": "2024-06-09T00:00:00.000Z", "modified": "2025-11-03T17:31:16.986Z", "cvss": 7.5, "cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N", "severity": "high", "epss": 0.00382, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2024-37568", "title": "CVE-2024-37568", "description": "lepture Authlib before 1.3.1 has algorithm confusion with asymmetric public keys. Unless an algorithm is specified in a jwt.decode call, HMAC verification is allowed with any asymmetric public key. (This is similar to CVE-2022-29217 and CVE-2024-33663.)", "references": ["https://github.com/lepture/authlib/issues/654", "https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/IZI7HYGN7VZAYFV6UV3SRLYF7QGERXIU/", "https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/FHJI32SN4FNAUVNALVGOKWHNSQ6XS3M5/"], "fixes": ["1.2.0-1+deb12u1"], "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}]}], "total": 19, "unknown_count": 0, "release_unconfirmed": false, "page": 1, "pages": 1, "filtered": false, "noindex": false, "filters": {}, "page_size": 20, "products": [{"name": "python-authlib", "path": "vulns/debian-12/python-authlib", "ecosystem": "Debian:12"}], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}, {"name": "web", "path": "vulns/stack/web", "slug": "web"}, {"name": "php", "path": "vulns/stack/php", "slug": "php"}, {"name": "python", "path": "vulns/stack/python", "slug": "python"}, {"name": "node", "path": "vulns/stack/node", "slug": "node"}, {"name": "database", "path": "vulns/stack/database", "slug": "database"}, {"name": "containers", "path": "vulns/stack/containers", "slug": "containers"}, {"name": "network", "path": "vulns/stack/network", "slug": "network"}, {"name": "applications", "path": "vulns/stack/applications", "slug": "applications"}], "versions": [], "stats": {"recent": 9, "kev": 0}, "lastmod": "2026-10-23T15:00:16.051Z", "early_advisories": [], "license": "Puedes utilizar libremente la selección de PatchFirst y nuestras aportaciones (prioridades, alertas tempranas, textos, resúmenes y agregados) para tus propios fines, incluido el uso interno de tu empresa. La reventa, la distribución comercial y la creación masiva de réplicas de esta selección o de estas aportaciones requieren un acuerdo escrito con el operador. Siempre que uses o publiques la selección o nuestras aportaciones, cita a PatchFirst (https://patchfirst.dev/vulns/) con este enlace a la página del flujo de tu región. Los registros originales de fuentes abiertas siguen sujetos a sus respectivas licencias y condiciones. Estas condiciones no limitan tus derechos sobre los datos originales, que puedes obtener directamente de esas fuentes.", "terms_url": "https://patchfirst.dev/es/vulns/#feed-terms", "attribution": {"name": "PatchFirst", "url": "https://patchfirst.dev/vulns/"}, "source_changes": "PatchFirst selecciona, normaliza y combina los registros; se pueden añadir resúmenes y traducciones. Las noticias incluyen un enlace a la fuente original en cada entrada.", "sources": [{"id": "cve", "name": "CVE List / CVE.org", "url": "https://www.cve.org/", "license": "CVE Terms of Use", "terms_url": "https://www.cve.org/Legal/TermsOfUse", "notice": "Copyright © 1999–2021, The MITRE Corporation. LICENSE Submissions : For all materials you submit to the Common Vulnerabilities and Exposures (CVE™), you hereby grant to The MITRE Corporation (MITRE) and all CVE Numbering Authorities (CNAs) a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute such materials and derivative works. Unless required by applicable law or agreed to in writing, you provide such materials on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. CVE Usage : MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE™). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy. DISCLAIMERS ALL DOCUMENTS AND THE INFORMATION CONTAINED THEREIN PROVIDED BY MITRE ARE PROVIDED ON AN \"AS IS\" BASIS AND THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE MITRE CORPORATION, ITS BOARD OF TRUSTEES, OFFICERS, AGENTS, AND EMPLOYEES, DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION THEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE."}, {"id": "osv", "name": "OSV", "url": "https://osv.dev/", "terms_url": "https://google.github.io/osv.dev/data/", "terms": "Las licencias de las bases originales varían; consulta el catálogo de fuentes."}, {"id": "kev", "name": "CISA KEV", "url": "https://www.cisa.gov/known-exploited-vulnerabilities-catalog", "license": "CC0-1.0", "terms_url": "https://github.com/cisagov/kev-data/blob/develop/LICENSE"}, {"id": "epss", "name": "FIRST EPSS", "url": "https://www.first.org/epss/", "terms_url": "https://www.first.org/epss/faq", "terms": "Puntuaciones públicas gratuitas; se solicita atribución (FIRST EPSS, puntuaciones generadas por Empirical Security)."}, {"id": "github-advisory", "name": "GitHub Advisory Database", "url": "https://github.com/advisories", "license": "CC-BY-4.0", "terms_url": "https://github.com/github/advisory-database/blob/main/LICENSE.md"}, {"id": "exploitdb", "name": "Exploit-DB", "url": "https://www.exploit-db.com/", "license": "GPL-2.0", "terms_url": "https://gitlab.com/exploit-database/exploitdb/-/blob/main/LICENSE.md"}, {"id": "metasploit", "name": "Metasploit", "url": "https://github.com/rapid7/metasploit-framework", "license": "BSD-3-Clause", "terms_url": "https://github.com/rapid7/metasploit-framework/blob/master/LICENSE", "notice": "Copyright (c) 2006-2026, Rapid7, Inc.\nLicense: BSD-3-clause\n Redistribution and use in source and binary forms, with or without modification,\n are permitted provided that the following conditions are met:\n .\n * Redistributions of source code must retain the above copyright notice,\n this list of conditions and the following disclaimer.\n .\n * Redistributions in binary form must reproduce the above copyright notice,\n this list of conditions and the following disclaimer in the documentation\n and/or other materials provided with the distribution.\n .\n * Neither the name of Rapid7, Inc. nor the names of its contributors\n may be used to endorse or promote products derived from this software\n without specific prior written permission.\n .\n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\n ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\n WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR\n ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\n LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON\n ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."}, {"id": "nuclei", "name": "Nuclei Templates", "url": "https://github.com/projectdiscovery/nuclei-templates", "license": "MIT", "terms_url": "https://github.com/projectdiscovery/nuclei-templates/blob/main/LICENSE.md", "notice": "MIT License\n\nCopyright (c) 2025 ProjectDiscovery, Inc.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE."}, {"id": "linux-kernel", "name": "Linux kernel releases", "url": "https://www.kernel.org/", "license": "CC-BY-SA-4.0", "terms_url": "https://www.kernel.org/legal.html", "notice": "Copyright (C) 1997-2014 by The Linux Kernel Organization, Inc."}]}