Impact
The Lemur JWT verifier reads the "alg" field from an inbound token before verifying the token’s signature, then passes that value unchanged to the decoding routine in PyJWT. Because no server‑controlled whitelist of acceptable algorithms is enforced, the verifier trusts a value supplied by an attacker. Under the current configuration PyJWT rejects the "none" algorithm, so the flaw does not allow a direct authentication bypass in the shipped configuration. However, the unpinned algorithm introduces a defense‑in‑depth gap that could become exploitable after a migration to asymmetric signing or if an attacker can obtain the shared LEMUR_TOKEN_SECRET and forge an HS256 token.
Affected Systems
All installations of Netflix Lemur running a version earlier than 1.9.2 are affected. The vulnerability resides in lemur/auth/service.py lines 130‑137. No patch level is specified beyond the major/minor version boundary; the fix was introduced in the 1.9.2 release.
Risk and Exploitability
The CVSS score of 4.8 indicates a low‑to‑moderate overall risk. EPSS is not provided and the vulnerability is not listed in CISA’s KEV catalog. Exploitation would require an attacker to supply a crafted JWT to an authentication endpoint and, in most cases, to have the LEMUR_TOKEN_SECRET to forge a valid HS256 token. Because no public exploitation has been reported, administrators should treat the risk as low but monitor for anomalous "alg" values and protect the secret.
OpenCVE Enrichment
Github GHSA