Terrapin — vulnerabilità nel protocollo SSH che consente di ridurre la protezione della connessione

Un gruppo di ricercatori dell'Università di Ruhr a Bochum (Germania) ha presentato una nuova tecnica di attacco MITM su SSH — Terrapin, che sfrutta una vulnerabilità (CVE-2023-48795) nel protocollo. L'attaccante, capace di organizzare un attacco MITM, ha la possibilità di bloccare l'invio di messaggi durante la negoziazione della connessione, modificando le impostazioni delle estensioni del protocollo per ridurre il livello di sicurezza della connessione. Un prototipo di strumenti per effettuare l'attacco è stato pubblicato su GitHub.

Nel contesto di OpenSSH, la vulnerabilità consente, ad esempio, di ripristinare la connessione a utilizzo di algoritmi di autenticazione meno sicuri e disattivare la protezione contro attacchi di canali laterali, così da ricreare l'input tramite l'analisi dei ritardi fra la pressione dei tasti sulla tastiera. Nella libreria Python AsyncSSH, insieme alla vulnerabilità (CVE-2023-46446) nell'implementazione della macchina a stati interni, l'attacco Terrapin consente di infiltrarsi in una sessione SSH.

La vulnerabilità interessa tutte le implementazioni di SSH che supportano ChaCha20-Poly1305 o cifrature in modalità CBC in combinazione con la modalità ETM (Encrypt-then-MAC). Ad esempio, tali possibilità sono presenti in OpenSSH da oltre 10 anni. La vulnerabilità è stata bloccata nell'attuale versione di OpenSSH 9.6 e nelle aggiornamenti di PuTTY 0.80, libssh 0.10.6/0.9.8 e AsyncSSH 2.14.2. In Dropbear SSH la correzione è già stata aggiunta al codice, ma una nuova versione non è ancora stata rilasciata.

La vulnerabilità è causata dal fatto che un attaccante, che controlla il traffico della connessione (ad esempio, il proprietario di un hotspot wireless malevolo), può modificare i numeri di sequenza dei pacchetti durante la negoziazione della connessione e ottenere la rimozione invisibile di un numero arbitrario di messaggi di servizio SSH inviati dal client o server. Tra l'altro, l'attaccante può rimuovere i messaggi SSH_MSG_EXT_INFO, utilizzati per configurare le estensioni del protocollo applicate. Affinché l'altra parte non rilevi la mancanza di un pacchetto a causa della rottura nei numeri di sequenza, l'attaccante avvia l'invio di un pacchetto fittizio con lo stesso numero di sequenza di quello rimosso. Il pacchetto fittizio contiene un messaggio con il flag SSH_MSG_IGNORE, che viene ignorato durante l'elaborazione.

Terrapin - vulnerabilità nel protocollo SSH che consente di ridurre la protezione della connessione.

L'attacco non può essere eseguito utilizzando cifrari a flusso e CTR, poiché la violazione dell'integrità verrà rilevata a livello di applicazione. In pratica, è solo il cifrario ChaCha20-Poly1305 (chacha20-poly1305@openssh.com) ad essere vulnerabile, poiché lo stato è monitorato solo tramite i numeri di sequenza dei messaggi, e la combinazione della modalità Encrypt-Then-MAC (*-etm@openssh.com) e dei cifrari CBC.

In OpenSSH 9.6 e in altre implementazioni, è stata implementata un'estensione del protocollo "strict KEX" per bloccare l'attacco, che viene attivata automaticamente quando è supportata dal server client. Questa estensione termina la connessione quando vengono ricevuti messaggi non standard o indesiderati (ad esempio, con il flag SSH_MSG_IGNORE o SSH2_MSG_DEBUG) durante il processo di negoziazione della connessione e reimposta il contatore MAC (Message Authentication Code) dopo ogni scambio di chiavi.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster