GHSA-r75w-7fhp-84w8
NieznaneStreszczenie
Metoda Net::SSH::Transport::ServerVersion#read! dołącza każdy odebrany bajt do @version aż do napotkania znaku nowej linii, a następnie kopiuje do @header, bez limitu długości linii ani całkowitej liczby bajtów. Złośliwy serwer wysyłający długą linię identyfikacyjną bez znaku LF powoduje nieograniczony wzrost zużycia pamięci.
Ocena ryzyka
Atakujący serwer SSH może doprowadzić do wyczerpania pamięci klienta net-ssh podczas odczytu wersji serwera, co może skutkować odmową usługi.
Rekomendacja
Zaktualizuj bibliotekę net-ssh do wersji zawierającej poprawkę ograniczającą długość linii identyfikacyjnej. Rozważ monitorowanie zużycia pamięci w aplikacjach korzystających z net-ssh.
Inne podatności w net-ssh
Zobacz wszystkie- GHSA-vxj5-fg65-x765Wysokie
Weryfikator certyfikatów hosta w net-ssh (`Net::SSH::HostKeyEntries::CertAuthority#matches_key?`) sprawdza dokładnie dwie rzeczy, gdy serwer przedstawia certyfikat OpenSSH (`*[email protected]`) w ramach zaufanego wpisu CA `@cert-authority`: (1) certyfikat jest spójnie podpisany (signature_valid).
- GHSA-qpg5-fx6p-8cq3Wysokie
W net-ssh funkcja `Service::Forward#initialize` bezwarunkowo rejestruje procedury obsługi kanałów agenta uwierzytelniania inicjowanych przez serwer, przez co zwykłe przekierowanie portów ujawnia lokalnego agenta SSH.
- GHSA-pfqh-p9vh-wx4pNieznane
Biblioteka net-ssh ufa 4-bajtowemu polu długości pakietu przesyłanego przez sieć, nie ograniczając go do wartości 35000 bajtów zgodnie z RFC 4253 §6.1. Złośliwy serwer może przed wymianą kluczy (w trybie jawnym) zadeklarować dowolnie dużą długość pakietu i przesyłać dane, powodując nieograniczony wzrost zużycia pamięci po stronie klienta przed uwierzytelnieniem.
- GHSA-rpq3-v334-f5pmNieznane
Podczas ładowania spreparowanego klucza prywatnego ed25519 zawierającego ogromną liczbę rund, net-ssh wchodzi w nieskończoną pętlę zużywającą czas CPU przez bardzo długi czas podczas próby załadowania klucza. To, że klucz nie jest prawdziwym kluczem SSH, nie ma w tym przypadku znaczenia.
- GHSA-3x7f-q7wf-fp73Nieznane
W bibliotekach Net::SSH::Proxy::Command oraz Net::SSH::Proxy::Jump możliwa jest iniekcja poleceń powłoki. Gdy aplikacja konfiguruje proxy i przekazuje do Net::SSH.start (lub ciąg jump do Proxy::Jump.new) wartości host, port lub remote_user pod wpływem atakującego, metaznaki powłoki w tych wartościach mogą zostać zinterpretowane.
- GHSA-ggxh-cfwq-5xqcNieznane
Metoda Net::SSH::Transport::Session#poll_message umieszcza każdy pakiet odebrany podczas wymiany kluczy, który nie znajduje się na liście dozwolonych podczas KEX, w nieograniczonej kolejce @queue (tablica) bez limitu rozmiaru. Złośliwy serwer, który ukończy KEXINIT (wprowadzając net-ssh w stan oczekiwania na KEX), a następnie zalewa nie dozwolonymi pakietami, może powodować nieograniczony wzrost pamięci.
Oryginalny opis (angielski, źródło NVD)
## Summary Net::SSH::Transport::ServerVersion#read! appends each received byte to @version (@version << b) until \n, then copies to @header (@header << @version). No maximum line length or total byte cap is enforced. A malicious server sending a long identification line without LF causes unbounded
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

