CVE-2026-59891
KrytyczneCVSS 9.6Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 41 - wyżej niż 41% wszystkich znanych CVE
Streszczenie
W bibliotece sigstore-js przed wersją 0.7.1 funkcja getRegistryCredentials() odczytuje dane uwierzytelniające z pliku konfiguracyjnego Dockera i wybiera wpis na podstawie tego, czy skonfigurowany klucz auth zawiera docelowy ciąg rejestru. Ponieważ jest to dopasowanie podciągu, a nie dokładne dopasowanie hosta, dane uwierzytelniające skonfigurowane dla jednego rejestru mogą zostać wybrane i przesłane do innego rejestru, którego nazwa hosta ma relację podciągu ze skonfigurowanym kluczem auth.
Ocena ryzyka
Ryzyko polega na nieautoryzowanym ujawnieniu danych uwierzytelniających do rejestru kontenerów, co może prowadzić do kradzieży tożsamości lub nieautoryzowanego dostępu do zasobów w organizacji.
Rekomendacja
Należy natychmiast zaktualizować bibliotekę sigstore-js do wersji 0.7.1 lub nowszej, która zawiera poprawkę eliminującą podatność na dopasowanie podciągu.
Inne podatności w sigstore-js
Zobacz wszystkie- CVE-2026-118763Wysokie
W sigstore-js przed wersją 0.7.2 metoda RegistryClient.signIn() w packages/oci/src/registry.ts przechowuje nagłówki autoryzacji rejestru i konfiguracji Docker jako domyślne w współdzielonym kliencie HTTP, podczas gdy RegistryClient.uploadBlob() wysyła nowe żądanie PUT do bezwzględnego adresu Location przekazanego przez rejestr bez sprawdzenia zgodności origin lub schematu z rejestrem. Złośliwy lub przejęty rejestr może skierować użytkownika przesyłającego artefakt przez attachArtifactToImage() do hosta kontrolowanego przez atakującego i odebrać token bearer rejestru, dane uwierzytelniające Basic lub niestandardowe nagłówki uwierzytelniania. Wersja 0.7.2 naprawia problem, oddzielając dane uwierzytelniające rejestru od domyślnych ustawień klienta i wysyłając je wyłącznie do origin rejestru.
- CVE-2026-48816Średnie
Podatność w bibliotece sigstore-js (wersje przed 3.1.1) pozwala atakującemu na manipulację znacznikiem czasu z dziennika przejrzystości (transparency log) dla wpisów typu inclusionProof-only w pakietach v0.2. Ponieważ ścieżka dowodu włączenia nie kryptograficznie wiąże znacznika czasu, atakujący może wpływać na decyzje dotyczące ważności certyfikatu i weryfikacji progów czasowych.
- CVE-2026-48815Wysokie
W bibliotece sigstore-js przed wersją 4.1.1 opcja certificateOIDs w funkcji sigstore.verify() jest akceptowana przez publiczne API, ale odrzucana przed weryfikacją. Oznacza to, że wymagane rozszerzenia certyfikatów nigdy nie są sprawdzane, a aplikacje polegające na certificateOIDs w celu ograniczenia, które certyfikaty mogą podpisywać artefakty, mogą akceptować nieautoryzowane certyfikaty.
- CVE-2026-48758Średnie
Podatność w bibliotece sigstore-js (wersje przed 3.2.1) pozwala na modyfikację typu ładunku po podpisaniu bez unieważnienia podpisu, co narusza gwarancję wiązania typu w DSSE. Funkcja preAuthEncoding używa kodowania ASCII Node.js, co umożliwia manipulację polem payloadType.
Oryginalny opis (angielski, źródło NVD)
sigstore-js provides JavaScript libraries for interacting with Sigstore services. Prior to 0.7.1, getRegistryCredentials() reads credentials from the Docker config file and selects an entry by checking whether any configured auth key contains the target registry string. Because this is a substring match rather than an exact host match, credentials configured for one registry can be selected for and transmitted to a different registry whose hostname has a substring relationship with a configured auth key. This issue is fixed in version 0.7.1.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

