CVE-2026-24061: krytyczna luka w GNU InetUtils telnetd umożliwia zdalne obejście uwierzytelniania i przejęcie roota - Security Bez Tabu

CVE-2026-24061: krytyczna luka w GNU InetUtils telnetd umożliwia zdalne obejście uwierzytelniania i przejęcie roota

Cybersecurity news

Wprowadzenie do problemu / definicja

Publicznie opisany exploit dla GNU InetUtils telnetd ujawnia krytyczny problem bezpieczeństwa w procesie logowania usługi Telnet. Podatność dotyczy niewłaściwej obsługi zmiennej środowiskowej USER, którą atakujący może przekazać podczas negocjacji protokołu. W efekcie możliwe jest uruchomienie procesu logowania z parametrami prowadzącymi do obejścia standardowej autoryzacji i uzyskania dostępu z uprawnieniami roota.

W skrócie

  • Podatność została oznaczona jako CVE-2026-24061.
  • Dotyczy GNU InetUtils telnetd w wersjach od 2.0 do 2.6.
  • Problem wynika z braku odpowiedniej walidacji wartości przekazywanej w zmiennej USER w ramach opcji NEW-ENVIRON.
  • Odpowiednio spreparowana wartość, taka jak -f root, może zostać przekazana do programu /bin/login jako argument.
  • Skutkiem może być zdalne obejście uwierzytelniania i uzyskanie uprzywilejowanej powłoki.

Kontekst / historia

Telnet to historyczny protokół wykorzystywany do zdalnej administracji, od dawna uznawany za technologię wysokiego ryzyka. Brak natywnego szyfrowania oraz długotrwała obecność słabych implementacji sprawiły, że w nowoczesnych środowiskach został niemal całkowicie zastąpiony przez SSH. Mimo to nadal występuje w starszych systemach, laboratoriach, urządzeniach wbudowanych i środowiskach wymagających kompatybilności wstecznej.

W analizowanym przypadku problem dotyczy implementacji telnetd w pakiecie GNU InetUtils. Charakter błędu wpisuje się w znany wzorzec podatności polegający na niebezpiecznym przekazywaniu danych wejściowych do uprzywilejowanego programu systemowego odpowiedzialnego za logowanie. Tego typu błędy są szczególnie niebezpieczne, ponieważ pojawiają się na styku usługi sieciowej i mechanizmów uwierzytelniania systemu operacyjnego.

Analiza techniczna

Źródłem podatności jest sposób obsługi opcji NEW-ENVIRON w protokole Telnet. Mechanizm ten pozwala klientowi przekazywać wybrane zmienne środowiskowe do serwera. W opublikowanym opisie wskazano, że serwer akceptuje zmienną USER, a następnie przekazuje jej wartość do /bin/login bez wystarczającej sanityzacji.

Atak wykorzystuje klasyczny mechanizm argument injection. Jeśli atakujący prześle jako wartość USER ciąg -f root, a serwer potraktuje go jak parametr programu zamiast zwykłej nazwy użytkownika, proces logowania może zostać uruchomiony w sposób pomijający standardową ścieżkę uwierzytelniania. W praktyce otwiera to drogę do uzyskania sesji roota bez znajomości hasła.

Przebieg wykorzystania podatności można opisać w kilku etapach:

  • nawiązanie połączenia z usługą Telnet na porcie 23,
  • obsługa negocjacji opcji protokołu, w tym aktywacja NEW-ENVIRON,
  • przekazanie zmiennej USER z wartością interpretowaną jako opcja dla /bin/login,
  • uruchomienie procesu logowania z niezamierzoną semantyką argumentów.

Istotne jest to, że problem nie wynika z samego istnienia opcji środowiskowych w Telnet, lecz z błędnego mapowania danych wejściowych na argumenty procesu systemowego. Z punktu widzenia bezpieczeństwa jest to połączenie zdalnego obejścia uwierzytelniania z eskalacją uprawnień do najwyższego poziomu w systemie.

Konsekwencje / ryzyko

Ryzyko należy ocenić jako krytyczne wszędzie tam, gdzie podatny telnetd jest dostępny z sieci lokalnej, segmentów administracyjnych lub bezpośrednio z Internetu. Udane wykorzystanie luki może skutkować pełnym przejęciem hosta i dalszym ruchem bocznym w infrastrukturze.

  • uzyskanie dostępu roota bez poprawnego uwierzytelnienia,
  • uruchamianie dowolnych poleceń i złośliwego oprogramowania,
  • modyfikacja konfiguracji systemu oraz mechanizmów logowania,
  • kradzież danych i poświadczeń zapisanych lokalnie,
  • utrwalenie dostępu przez zmiany w usługach startowych, cronie lub kontach,
  • wykorzystanie przejętego systemu do dalszych ataków wewnętrznych.

Szczególnie niebezpieczne są środowiska, w których Telnet funkcjonuje jako stara usługa administracyjna, często poza głównym cyklem aktualizacji. Publiczna dostępność kodu proof-of-concept dodatkowo obniża próg wejścia dla napastników i zwiększa prawdopodobieństwo szybkiego wykorzystania podatności w praktyce.

Rekomendacje

Organizacje powinny potraktować problem priorytetowo i połączyć działania doraźne z trwałą redukcją ryzyka.

  • zidentyfikować wszystkie systemy korzystające z GNU InetUtils telnetd, zwłaszcza w wersjach 2.0–2.6,
  • wyłączyć Telnet wszędzie tam, gdzie nie jest on bezwzględnie wymagany,
  • zastąpić Telnet protokołem SSH jako bezpieczniejszym standardem zdalnej administracji,
  • wdrożyć poprawki producenta lub zaktualizowaną wersję pakietu,
  • ograniczyć dostęp do portu 23 wyłącznie do zaufanych adresów administracyjnych,
  • odseparować hosty z aktywnym Telnetem do wydzielonych segmentów sieci,
  • monitorować logi pod kątem nietypowych logowań uprzywilejowanych i anomalii w negocjacji NEW-ENVIRON,
  • wdrożyć reguły IDS/IPS wykrywające próby przekazania spreparowanej wartości zmiennej USER.

Zespoły SOC i IR powinny dodatkowo przeprowadzić hunting pod kątem oznak kompromitacji, sprawdzając historię sesji uprzywilejowanych, nietypowe uruchomienia powłok, zmiany w usługach startowych, kluczach SSH, harmonogramach zadań i ruchu wychodzącym z hostów oferujących Telnet.

Podsumowanie

CVE-2026-24061 pokazuje, że nawet schyłkowe i rzadziej używane usługi nadal mogą być wektorem pełnego przejęcia systemu. W tym przypadku brak odpowiedniej sanityzacji zmiennej USER podczas negocjacji NEW-ENVIRON umożliwia wstrzyknięcie argumentu do procesu logowania i potencjalne uzyskanie dostępu roota bez hasła. Najważniejsze działania obronne to szybka identyfikacja podatnych instancji, wyłączenie Telnetu tam, gdzie to możliwe, aktualizacja pakietów oraz aktywne monitorowanie prób wykorzystania tej luki.

Źródła

  1. https://www.exploit-db.com/exploits/52524
  2. https://nvd.nist.gov/vuln/detail/CVE-2026-24061
  3. https://www.gnu.org/software/inetutils/
  4. https://ftp.gnu.org/gnu/inetutils/
  5. https://datatracker.ietf.org/doc/html/rfc1572