CVE-2026-28802·Python vulnerability
Authlib is a Python library which builds OAuth and OpenID Connect servers. From version 1.6.5 to before version 1.6.7, previous tests involving passing a malicious JWT containing alg: none and an empty signature was passing the signature verification step without any changes to the application code when a failure was expected.. This issue has been patched in version 1.6.7.
- Severity
- critical
- Software
- Python
- Fixed in
- 1.6.7
- Published
- 2026-03-06
Affected versions
From: 1.6.5
Until: 1.6.7
Fixed in: 1.6.7
How to fix this CVE
Upgrade Authlib to version 1.6.7 or later to resolve a critical JWT signature bypass vulnerability. This flaw allows attackers to bypass authentication by submitting JWTs with the 'alg: none' algorithm and empty signatures, which previously passed validation incorrectly. Apply the security patch immediately across all systems running vulnerable versions of the library.
sudo dnf update python3-authlibDefensia detects this vulnerability
What an exploitation attempt looks like
Sample log line indicative of exploitation attempts:
POST|GET.*authorization.*Bearer.*\..*\. with payload containing "alg":"none"WAF mitigation (if patching is not yet possible)
Add this rule to your WAF to block exploitation attempts while you schedule the patch.
Configure WAF rules to reject or flag JWT tokens containing 'alg: none' in the header claim, and enforce that all authentication tokens include a cryptographic algorithm (e.g., RS256, HS256) with non-empty signatures.How to check if you are affected
- Check installed Authlib version: python3 -c "import authlib; print(authlib.__version__)"
- Search for Authlib imports in your application code: grep -r "from authlib" /path/to/your/app --include="*.py"
- Review authentication logs for JWT tokens with 'alg: none' claims: grep -i "alg.*none" /var/log/auth.log
- Verify the fix by confirming Authlib version is 1.6.7+: pip3 show authlib | grep Version
FAQ
What is CVE-2026-28802?
CVE-2026-28802 is a critical authentication bypass vulnerability in Authlib versions 1.6.5–1.6.6 where JWT tokens with 'alg: none' and empty signatures incorrectly pass signature verification, allowing attackers to forge valid authentication tokens without cryptographic keys.
Is CVE-2026-28802 being actively exploited?
No, this vulnerability is not currently listed in CISA's Known Exploited Vulnerabilities (KEV) catalog and no public exploits have been released, though the critical nature warrants immediate patching.
What versions of Authlib are affected by CVE-2026-28802?
Authlib versions 1.6.5 through 1.6.6 are vulnerable; version 1.6.7 and later contain the security fix.
How do I check if my server is vulnerable to CVE-2026-28802?
Run 'pip3 show authlib | grep Version' and verify the version is 1.6.7 or higher. If the output shows 1.6.5 or 1.6.6, your system is vulnerable.
Does Defensia detect CVE-2026-28802?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If Authlib is installed on a monitored server, CVE-2026-28802 will appear in your dashboard with remediation steps.
Related Python CVEs
References
- https://github.com/authlib/authlib/commit/a61c2acb807496e67f32051b5f1b1d5ccf8f0a75
- https://github.com/authlib/authlib/commit/b87c32ed07b8ae7f805873e1c9cafd1016761df7
- https://github.com/authlib/authlib/security/advisories/GHSA-7wc2-qxgw-g8gg
- https://access.redhat.com/errata/RHSA-2026:19375
- https://access.redhat.com/errata/RHSA-2026:4942
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2026-28802. Free for 1 server.
Get started free