CVE-2021-22898
NiskieCVSS 3.1Prawdopodobieństwo exploitacji (EPSS)
Bardzo wysokie ryzykoPercentyl 91 - wyżej niż 91% wszystkich znanych CVE
Streszczenie
curl w wersjach od 7.7 do 7.76.1 ujawnia informacje, gdy opcja wiersza poleceń `-t` (CURLOPT_TELNETOPTIONS w libcurl) jest używana do wysyłania par zmienna=wartość do serwerów TELNET. Błąd parsera opcji powodował przekazanie niezainicjalizowanych danych ze stosu do serwera.
Ocena ryzyka
Do serwera TELNET mogą wyciec poufne dane wewnętrzne z pamięci procesu, co stanowi naruszenie poufności przesyłane nieszyfrowanym protokołem.
Rekomendacja
Zaktualizuj curl/libcurl do wersji nowszej niż 7.76.1 i unikaj używania opcji TELNET z niezaufanymi serwerami.
Inne podatności w curl
Zobacz wszystkie- CVE-2026-92392Nieznane
Podatność w curl podczas przesyłania plików polega na nieprawidłowym obsłużeniu ramki HTTP/2 RST_STREAM otrzymanej od serwera, co prowadzi do użycia po zwolnieniu (use-after-free) obiektu struct Curl_easy.
- CVE-2024-11053Niskie
Gdy curl jest proszony o użycie pliku `.netrc` do uwierzytelnienia oraz o podążanie za przekierowaniami HTTP, może wyciec hasło użyte dla pierwszego hosta do hosta docelowego po przekierowaniu w pewnych okolicznościach. Problem występuje tylko, jeśli plik netrc zawiera wpis pasujący do hosta docelowego.
- CVE-2024-8096Średnie
Gdy curl ma używać rozszerzenia TLS Certificate Status Request (OCSP stapling) do weryfikacji certyfikatu serwera, może nie wykryć niektórych problemów OCSP i błędnie uznać odpowiedź za poprawną, jeśli zwrócony status zgłasza inny błąd niż oczekiwany.
- CVE-2024-9681Średnie
Gdy curl ma używać HSTS, czas wygaśnięcia dla subdomeny może nadpisać wpis w pamięci podręcznej domeny nadrzędnej, powodując wcześniejsze lub późniejsze wygaśnięcie niż zamierzono. Dotyczy to aplikacji używających HSTS i adresów URL z niebezpiecznym schematem HTTP://.
- CVE-2026-8926Krytyczne
Gdy curl używa pliku .netrc do znalezienia poświadczeń i jednocześnie podano URL z nazwą użytkownika (bez hasła), curl może błędnie pobrać i użyć hasła innego użytkownika z .netrc dla tego hosta, jeśli nie ma dopasowania dla podanego użytkownika.
- CVE-2026-8925Krytyczne
W bibliotece curl wykryto podwójne zwolnienie pamięci (double-free) w mechanizmie uwierzytelniania SASL. Błąd powoduje, że kontekst GSASL jest czyszczony dwukrotnie bez wyzerowania wskaźnika, co prowadzi do wywołania funkcji free() na tym samym obszarze pamięci.
- CVE-2026-8924Krytyczne
Błąd w logice parsowania ciasteczek w curl pozwala złośliwemu serwerowi HTTP ustawiać "super cookies", które omijają sprawdzanie Public Suffix List, umożliwiając wstrzykiwanie ciasteczek do niepowiązanych domen trzecich.
- CVE-2023-38545Krytyczne
Podatność CVE-2023-38545 dotyczy przepełnienia bufora w pamięci sterty podczas handshake'u proxy SOCKS5 w narzędziu curl. Problem występuje, gdy curl przekazuje zbyt długą nazwę hosta do proxy, co prowadzi do nieprawidłowego kopiowania danych.
- CVE-2021-22925Średnie
curl obsługuje opcję linii poleceń -t, znaną jako CURLOPT_TELNETOPTIONS w libcurl. Ta rzadko używana opcja służy do wysyłania par zmienna=treść do serwerów TELNET. Z powodu błędu w parserze opcji do wysyłania zmiennych NEW_ENV, libcurl może przekazać niezainicjalizowane dane z bufora na stosie do serwera, potencjalnie ujawniając wrażliwe informacje wewnętrzne serwerowi przy użyciu protokołu przesyłanego jawnym tekstem. Stało się tak, ponieważ curl nie wywoływał i nie używał poprawnie funkcji sscanf() podczas parsowania ciągu dostarczonego przez aplikację.
- CVE-2021-22922Średnie
Gdy curl jest instruowany do pobierania treści za pomocą funkcji metalink, zawartość jest weryfikowana względem hasha podanego w pliku XML metalink. Plik metalink wskazuje klientowi, jak uzyskać tę samą treść z różnych adresów URL, potencjalnie hostowanych przez różne serwery. Jeśli jeden z serwerów hostujących treść został naruszony, a zawartość pliku na tym serwerze została zastąpiona zmodyfikowanym ładunkiem, curl powinien to wykryć, gdy hash pliku nie zgadza się po zakończonym pobieraniu. Powinien usunąć zawartość i spróbować pobrać ją z innego adresu URL. Tak się nie dzieje; zamiast tego taka niezgodność hasha jest tylko wspomniana w tekście, a potencjalnie złośliwa zawartość pozostaje w pliku na dysku.
Oryginalny opis (angielski, źródło NVD)
curl 7.7 through 7.76.1 suffers from an information disclosure when the `-t` command line option, known as `CURLOPT_TELNETOPTIONS` in libcurl, is used to send variable=content pairs to TELNET servers. Due to a flaw in the option parser for sending NEW_ENV variables, libcurl could be made to pass on uninitialized data from a stack based buffer to the server, resulting in potentially revealing sensitive internal information to the server using a clear-text network protocol.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

