Terrapin – zranitelnost v protokolu SSH, která umožňuje snížit zabezpečení připojení

Skupina výzkumníků z Ruhr University v Bochumi (Německo) představila novou techniku ​​útoku MITM na SSH - Terrapin, která využívá zranitelnost (CVE-2023-48795) v protokolu. Útočník schopný zorganizovat útok MITM má schopnost během procesu vyjednávání o připojení zablokovat odeslání zprávy konfigurací rozšíření protokolu, aby se snížila úroveň zabezpečení připojení. Prototyp sady nástrojů pro útoky byl zveřejněn na GitHubu.

V kontextu OpenSSH vám tato zranitelnost například umožňuje vrátit zpět připojení k použití méně bezpečných ověřovacích algoritmů a deaktivovat ochranu proti útokům postranním kanálem, které znovu vytvářejí vstup pomocí analýzy zpoždění mezi stisky kláves na klávesnici. V knihovně Python AsyncSSH v kombinaci se zranitelností (CVE-2023-46446) v implementaci interního stavového automatu nám útok Terrapin umožňuje vklínit se do relace SSH.

Tato chyba zabezpečení se týká všech implementací SSH, které podporují šifry v režimu ChaCha20-Poly1305 nebo CBC v kombinaci s režimem ETM (Encrypt-then-MAC). Podobné možnosti jsou například v OpenSSH k dispozici již více než 10 let. Chyba zabezpečení je opravena v dnešním vydání OpenSSH 9.6 a také v aktualizacích PuTTY 0.80, libssh 0.10.6/0.9.8 a AsyncSSH 2.14.2. V Dropbear SSH již byla oprava přidána do kódu, ale nové vydání ještě nebylo vygenerováno.

Zranitelnost je způsobena skutečností, že útočník ovládající provoz připojení (například vlastník škodlivého bezdrátového bodu) může během procesu vyjednávání o připojení upravit pořadová čísla paketů a dosáhnout tichého smazání libovolného počtu zpráv služby SSH. zaslané klientem nebo serverem. Útočník by mimo jiné mohl smazat zprávy SSH_MSG_EXT_INFO používané ke konfiguraci používaných rozšíření protokolu. Aby druhá strana nezjistila ztrátu paketu v důsledku mezery v sekvenčních číslech, útočník zahájí odeslání fiktivního paketu se stejným pořadovým číslem jako vzdálený paket, aby se pořadové číslo posunulo. Falešný paket obsahuje zprávu s příznakem SSH_MSG_IGNORE, který je během zpracování ignorován.

Terrapin – zranitelnost v protokolu SSH, která umožňuje snížit zabezpečení připojení

Útok nelze provést pomocí proudových šifer a CTR, protože narušení integrity bude detekováno na aplikační úrovni. V praxi je k útoku náchylná pouze šifra ChaCha20-Poly1305 ([chráněno e-mailem]), ve kterém je stav sledován pouze pomocí pořadových čísel zpráv a kombinací z režimu Encrypt-Then-MAC (*[chráněno e-mailem]) a šifry CBC.

V OpenSSH 9.6 a dalších implementacích je implementováno rozšíření protokolu „strict KEX“ pro blokování útoku, který je automaticky povolen, pokud existuje podpora na straně serveru a klienta. Rozšíření ukončí připojení po přijetí jakýchkoli abnormálních nebo nepotřebných zpráv (například s příznakem SSH_MSG_IGNORE nebo SSH2_MSG_DEBUG) přijatých během procesu vyjednávání o připojení a také resetuje počítadlo MAC (Message Authentication Code) po dokončení každé výměny klíčů.

Zdroj: opennet.ru

Přidat komentář