CVE-2025-4945
NiskieCVSS 3.7Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 41 - wyżej niż 41% wszystkich znanych CVE
Streszczenie
W bibliotece HTTP libsoup, używanej w aplikacjach GNOME i innym oprogramowaniu, wykryto błąd w logice parsowania ciasteczek. Podczas przetwarzania daty wygaśnięcia ciasteczka, specjalnie spreparowana wartość może wywołać przepełnienie liczby całkowitej, prowadząc do nieokreślonego zachowania. Umożliwia to atakującemu ominięcie logiki wygaśnięcia ciasteczek, powodując ich trwałe lub niezamierzone działanie.
Ocena ryzyka
Organizacja narażona jest na ryzyko utrzymywania się nieautoryzowanych sesji lub naruszenia mechanizmów bezpieczeństwa opartych na ciasteczkach, co może prowadzić do niekontrolowanego dostępu do zasobów.
Rekomendacja
Należy niezwłocznie zaktualizować bibliotekę libsoup do najnowszej wersji zawierającej poprawkę usuwającą podatność. W międzyczasie zaleca się ograniczenie zaufania do ciasteczek pochodzących z niezaufanych źródeł.
Inne podatności w libsoup
Zobacz wszystkie- CVE-2026-102560Wysokie
W bibliotece libsoup, gdy rozszerzenie WebSocket permessage-deflate kompresuje bardzo dużą wiadomość wychodzącą, obcięte obliczenia rozmiaru używane do wzrostu GByteArray mogą się zawinąć, powodując, że zlib zapisuje poza przydzielony bufor, co prowadzi do przepełnienia sterty.
- CVE-2026-102556Wysokie
W bibliotece libsoup podczas obsługi przychodzącej ramki WebSocket Pong, SoupWebsocketConnection emitował sygnał ::pong ze wskaźnikiem GByteArray, mimo że sygnał jest zadeklarowany do przekazywania GBytes. Aplikacje podłączające handler zgodny z udokumentowanym API GBytes mogą wywołać uszkodzenie sterty lub awarię po otrzymaniu spreparowanego Ponga.
- CVE-2025-32911Krytyczne
W bibliotece libsoup odkryto podatność typu use-after-free w funkcji soup_message_headers_get_content_disposition(). Umożliwia ona złośliwemu klientowi HTTP wywołanie uszkodzenia pamięci w serwerze libsoup.
- CVE-2026-103399Średnie
W SoupServer (libsoup) wykryto lukę. Gdy klient HTTP/1.x wysyła żądanie z nagłówkiem Expect: 100-continue i ciałem żądania, a SoupServer zwraca wczesną finalną odpowiedź (nie-1xx) przed odczytaniem ciała, serwer nie opróżnia zadeklarowanych bajtów ciała ani nie zamyka połączenia. W połączeniu keep-alive pozostałe bajty są interpretowane jako kolejne żądanie HTTP.
- CVE-2026-102559Wysokie
W bibliotece libsoup, podczas konstruowania maskowanej ramki WebSocket klienta dla bardzo dużego ładunku wychodzącego, wartości rozmiaru przekazywane do funkcji alokacji GByteArray mogą zostać obcięte, podczas gdy procedura maskowania nadal używa pełnej długości, co powoduje przepełnienie bufora sterty.
- CVE-2026-102558Wysokie
W bibliotece libsoup, gdy maksymalny rozmiar przychodzącego ładunku jest nieograniczony (0), SoupWebsocketConnection może zwiększać swój przychodzący GByteArray na podstawie długości ramki kontrolowanej przez atakującego, aż długość się zawinie, co powoduje przepełnienie bufora sterty podczas odczytu danych ramki.
- CVE-2026-102555Wysokie
W bibliotece libsoup funkcja soup_uri_decode_data_uri() nieprawidłowo traktowała ładunki data-URI base64 jako ciągi zakończone NUL podczas wywoływania g_base64_decode_inplace(). Jeśli ładunek po zdekodowaniu procentowo zawierał wbudowane bajty NUL, zdekodowana długość mogła pozostać niezainicjalizowana i być użyta jako rozmiar zwracanego GBytes. Może to prowadzić do odczytu poza zakresem lub awarii aplikacji podczas przetwarzania spreparowanego data URI.
- CVE-2026-102557Wysokie
W bibliotece libsoup podczas składania fragmentowanych wiadomości WebSocket do GByteArray nie ograniczano odpowiednio całkowitego rozmiaru wiadomości w stosunku do limitów bazowego typu bufora. Zdalny peer mógł wysyłać fragmenty powodujące obcięcie rozmiaru, podczas gdy implementacja nadal używała pełnej długości, co prowadziło do uszkodzenia sterty lub awarii.
- CVE-2026-85534Średnie
W bibliotece libsoup wykryto podatność związaną z brakiem kontroli granic podczas przesyłania treści żądania HTTP/2 z nieodpytywalnego strumienia wejściowego. Złośliwy serwer HTTP/2 może zmniejszyć rozmiar okna przepływu (SETTINGS_INITIAL_WINDOW_SIZE) podczas trwającego buforowanego odczytu, co prowadzi do skopiowania pełnego bufora do mniejszego wywołania zwrotnego DATA bez kontroli granic, co może przerwać działanie procesu lub spowodować niepowodzenie sesji HTTP/2.
- CVE-2026-85197Wysokie
W bibliotece libsoup wykryto podatność use-after-free w implementacji klienta HTTP/2. Złośliwy serwer HTTP/2 lub atakujący typu man-in-the-middle może wykorzystać tę podatność, gdy aplikacja GNOME wysyła plik przez HTTP/2, a serwer wysyła ramkę GOAWAY podczas asynchronicznego odczytu treści pliku. Może to prowadzić do uszkodzenia pamięci, wycieku informacji lub wykonania dowolnego kodu.
Oryginalny opis (angielski, źródło NVD)
A flaw was found in the cookie parsing logic of the libsoup HTTP library, used in GNOME applications and other software. The vulnerability arises when processing the expiration date of cookies, where a specially crafted value can trigger an integer overflow. This may result in undefined behavior, allowing an attacker to bypass cookie expiration logic, causing persistent or unintended cookie behavior. The issue stems from improper validation of large integer inputs during date arithmetic operations within the cookie parsing routines.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

