Katalog CVE

CVE-2026-102271

WysokieCVSS 7.4
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

PyJWT to implementacja standardów JSON Web Token w Pythonie. Od wersji 2.4.0 do 2.14.0 funkcja HMACAlgorithm.prepare_key jest podatna, ponieważ ochrona klucza asymetrycznego opiera się na znacznikach tekstowych nieobecnych w kodowaniu DER. Gdy aplikacja miesza algorytmy HMAC i asymetryczne oraz dostarcza publiczny klucz DER jako wspólny klucz weryfikacyjny, PyJWT używa publicznych bajtów DER jako sekretu HMAC. W rezultacie atakujący znający klucz publiczny może sfałszować uwierzytelnione tokeny HMAC.

Ocena ryzyka

Atakujący może podszyć się pod dowolnego użytkownika, tworząc fałszywe tokeny HMAC, jeśli zna klucz publiczny. Prowadzi to do obejścia uwierzytelniania i nieautoryzowanego dostępu.

Rekomendacja

Zaktualizuj PyJWT do wersji 2.14.0. Nie używaj publicznych kluczy DER jako sekretów HMAC w konfiguracjach mieszających algorytmy.

Inne podatności w PyJWT

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

PyJWT is a Python implementation of JSON Web Token standards. From 2.4.0 until 2.14.0, PyJWT HMACAlgorithm.prepare_key is affected because asymmetric-key guard relies on textual markers that are absent from DER encoding. This occurs when an application mixes HMAC and asymmetric algorithms and supplies a DER public key as the shared verification key. As a result, PyJWT uses public DER bytes as an HMAC secret. Consequently, an attacker who knows the public key can forge authenticated HMAC tokens. This issue is fixed in version 2.14.0.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS