CVE Catalog
EnglishPolski(English translation not available - showing Polish)

CVE-2026-48523

MediumCVSS 5.4
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.13%

3th percentile - higher than 3% of all known CVEs

Summary

PyJWT to implementacja JSON Web Token w Pythonie. W wersjach od 2.9.0 do 2.12.1 występuje luka, która pozwala na obejście listy dozwolonych algorytmów weryfikacji, gdy wywoływane są funkcje jwt.decode() lub jwt.decode_complete() z kluczem PyJWK.

Risk Assessment

Atakujący, który kontroluje zarejestrowany klucz prywatny JWK/JWKS, może podpisać token z użyciem niedozwolonego algorytmu, co prowadzi do akceptacji tokenu mimo niezgodności algorytmu. To stwarza poważne ryzyko dla integralności i bezpieczeństwa systemu.

Recommendation

Zaleca się aktualizację do wersji 2.13.0 lub nowszej, aby usunąć tę podatność. Należy również przeanalizować i zaktualizować procedury weryfikacji tokenów w aplikacjach korzystających z PyJWT.

Related vulnerabilities

Original NVD description (English source)

PyJWT is a JSON Web Token implementation in Python. From 2.9.0 to 2.12.1, there is a verifier-side algorithm allow-list bypass when jwt.decode() or jwt.decode_complete() are called with a PyJWK key. The token header alg is checked against the caller-supplied algorithms allow-list, but signature verification is performed with the algorithm bound to the PyJWK object instead of the header algorithm. An attacker who controls a registered JWK/JWKS private key can sign with a disallowed algorithm, advertise an allowed algorithm in the JWT header, and still be accepted. The issue affects the documented PyJWKClient.get_signing_key_from_jwt(...) flow. This vulnerability is fixed in 2.13.0.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS