CVE-2016-9121
KrytyczneStreszczenie
Biblioteka go-jose w wersjach przed 1.0.4 jest podatna na atak związany z nieprawidłową krzywą w algorytmie ECDH-ES. Podczas generowania wspólnego klucza, go-jose nie sprawdza, czy otrzymany klucz publiczny jest na tej samej krzywej co statyczny klucz prywatny odbiorcy.
Ocena ryzyka
Atakujący może wykorzystać tę podatność do przejęcia klucza szyfrującego, co prowadzi do odszyfrowania poufnych danych. To stwarza poważne zagrożenie dla bezpieczeństwa komunikacji w organizacji.
Rekomendacja
Zaleca się aktualizację biblioteki go-jose do wersji 1.0.4 lub nowszej, aby zabezpieczyć się przed tym atakiem. Dodatkowo, warto wdrożyć mechanizmy weryfikacji krzywych w używanych algorytmach ECDH.
Inne podatności w go-jose
Zobacz wszystkie- CVE-2016-9123Wysokie
Biblioteka go-jose w wersjach przed 1.0.5 ma problem z przepełnieniem całkowitym w algorytmie CBC-HMAC na architekturach 32-bitowych. Przepełnienie całkowite może prowadzić do ominięcia uwierzytelniania dla zaszyfrowanych tekstów CBC-HMAC na tych architekturach.
- CVE-2026-116587Wysokie
Go JOSE, implementacja standardów JOSE w Go (JWE, JWS, JWT), przed wersją 4.1.6 parsuje kontrolowane przez atakującego wartości modułu i liczb pierwszych RSA z JWK bez egzekwowania ograniczeń rozmiaru i spójności przed przekazaniem ich do crypto/rsa.PrivateKey.Validate. W Go 1.24 i nowszych spreparowane duże lub zdegenerowane parametry RSA mogą powodować sześcienne zużycie CPU podczas walidacji, umożliwiając zdalną odmowę usługi.
- CVE-2026-116586Średnie
Biblioteka go-jose przed wersją 4.1.5 nie ogranicza głębokości zagnieżdżenia podczas parsowania JSON kontrolowanego przez atakującego. Głęboko zagnieżdżone tablice lub obiekty przekraczają limit stosu Go, powodując przepełnienie stosu i awarię aplikacji.
- CVE-2026-116585Średnie
W go-jose przed wersją 4.1.5 odszyfrowywanie niezaufanego szyfrogramu JWE z algorytmami A128CBC-HS256, A192CBC-HS384 lub A256CBC-HS512 może przekazać pusty bufor do odpadkowania CBC-HMAC. Niewystarczająca walidacja powoduje indeksowanie pustego bufora, panikę i odmowę usługi.
- CVE-2026-34986Wysokie
Go JOSE przed wersjami 4.1.4 i 3.0.5 zawiera podatność, w której deszyfrowanie obiektu JWE może spowodować panic, jeśli pole alg wskazuje na algorytm zawijania klucza (kończący się na KW, z wyjątkiem A128GCMKW, A192GCMKW i A256GCMKW), a pole encrypted_key jest puste. Panic występuje przy próbie alokacji wycinka o zerowej lub ujemnej długości. Może to prowadzić do odmowy usługi.
Oryginalny opis (angielski, źródło NVD)
go-jose before 1.0.4 suffers from an invalid curve attack for the ECDH-ES algorithm. When deriving a shared key using ECDH-ES for an encrypted message, go-jose neglected to check that the received public key on a message is on the same curve as the static private key of the receiver, thus making it vulnerable to an invalid curve attack.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

