Katalog CVE

CVE-2017-11424

Wysokie
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

W wersjach PyJWT 1.5.0 i wcześniejszych, sprawdzenie `invalid_strings` w `HMACAlgorithm.prepare_key` nie uwzględnia wszystkich kluczy publicznych zakodowanych w formacie PEM. Szczególnie format PKCS1 PEM jest dozwolony, co umożliwia ataki związane z myleniem kluczy symetrycznych i asymetrycznych.

Ocena ryzyka

Atakujący może stworzyć fałszywe JWT, co prowadzi do poważnych luk w zabezpieczeniach aplikacji korzystających z kluczy PKCS1 PEM. To może skutkować nieautoryzowanym dostępem do danych użytkowników.

Rekomendacja

Zaleca się aktualizację PyJWT do wersji powyżej 1.5.0, aby zlikwidować tę lukę. Dodatkowo, należy przeprowadzić audyt używanych kluczy publicznych w aplikacji.

Inne podatności w PyJWT

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

In PyJWT 1.5.0 and below the `invalid_strings` check in `HMACAlgorithm.prepare_key` does not account for all PEM encoded public keys. Specifically, the PKCS1 PEM encoded format would be allowed because it is prefaced with the string `-----BEGIN RSA PUBLIC KEY-----` which is not accounted for. This enables symmetric/asymmetric key confusion attacks against users using the PKCS1 PEM encoded public keys, which would allow an attacker to craft JWTs from scratch.

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