CVE-2026-18353
WysokieCVSS 8.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 34 - wyżej niż 34% wszystkich znanych CVE
Streszczenie
Endpoint PIA `POST /v1/upload/sbom` akceptuje JWT i sprawdza niesprawdzony claim `iss` z listą dozwolonych wystawców, używając `urlparse` w Pythonie, a następnie wykonuje OIDC discovery z `requests`. Z powodu różnic w parsowaniu przez `urlparse` i `requests`/`urllib3`, atakujący może ominąć listę dozwolonych i przekierować żądania do dowolnego hosta.
Ocena ryzyka
Atakujący może przejąć proces uwierzytelniania OIDC, co może prowadzić do nieautoryzowanego dostępu do systemu.
Rekomendacja
Zaktualizuj PIA do wersji, która zawiera poprawkę dla tej podatności.
Inne podatności w PIA
Zobacz wszystkie- CVE-2026-107597Średnie
Weryfikacja tokenów PIA (verify_token w pia/oidc.py) pobiera dokument wykrywania OIDC z dozwolonego wystawcy, a następnie podąża za zawartym w odpowiedzi jwks_uri bez parsowania go jako URL, porównania z originem zatwierdzonego wystawcy ani wymagania HTTPS. Zatwierdzony dostawca tożsamości może skierować PIA do wysłania żądania GET do dowolnego hosta i portu, w tym przez zwykły HTTP, z pozycji sieciowej PIA, zanim jakikolwiek podpis zostanie zweryfikowany.
- CVE-2026-14336Wysokie
Podatność w PIA polega na użyciu prostego sprawdzenia prefiksu ciągu znaków dla listy dozwolonych wystawców OIDC, zamiast walidacji jako w pełni kwalifikowanego URL-a z ograniczeniem do hosta. Atakujący może skonstruować złośliwego wystawcę, który spełnia warunek prefiksu, ale wskazuje na kontrolowany przez niego serwer. Umożliwia to nieuwierzytelnionemu wywołaniu endpointu POST /v1/upload/sbom wymuszenie wychodzących żądań HTTP(S) do dowolnego hosta oraz akceptację tokena JWT podpisanego kluczem atakującego.
- CVE-2026-12616Średnie
Podatność w punkcie końcowym /v1/upload/sbom pozwala nieuwierzytelnionemu atakującemu na wstrzyknięcie fałszywych wpisów do logów poprzez manipulację polem iss w tokenie JWT. Ze względu na wyłączoną weryfikację podpisu JWT oraz dosłowne renderowanie znaków nowej linii w formacie logów, atakujący może wygenerować wpisy identyczne z autentycznymi komunikatami o pomyślnym uwierzytelnieniu.
Oryginalny opis (angielski, źródło NVD)
PIA's `POST /v1/upload/sbom` endpoint accepts a Bearer JWT and checks its **unverified** `iss` claim against an issuer allowlist using Python's `urlparse` before performing OIDC discovery with `requests`. Because `urlparse` and `requests`/`urllib3` parse an authority string containing a backslash (e.g. `https://attacker-host\@ci.eclipse.org/`) into *different* hostnames, an attacker can craft an issuer that passes the allowlist check yet drives `requests` — and subsequently `urllib.request.urlopen` for JWKS retrieval — to connect to an arbitrary attacker-chosen host, port, and scheme.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

