Se sfruttati, questi difetti possono consentire agli aggressori di ottenere l'accesso non autorizzato a informazioni riservate o, in generale, causare problemi
Qualche giorno fa è giunta la notizia che un team di ricercatori dell'Università della California , San Diego, aveva dimostrato la capacità di ricreare le chiavi private RSA di un server SSH analizzando passivamente il traffico SSH.
La ricerca pubblicata mostrare che quando vengono utilizzate le firme digitali basato sul algoritmo RSA in SSH, li lega insiemeches che utilizzano il metodo Lattice (Attacco per colpa) per ricreare la chiave RSA privata è composta da adatto per firme digitali in caso de una visita Falla de Software o hardware durante il processo di calcolo della firma. IL essenza del metodo è che al comparar firme digitali RSA corrette e errate, puoi determinare il più grande comune divisore, generando così Uno dei numeri primi utilizzati per generare la chiave.
La crittografia RSA si basa sull'operazione di esponenziazione di un numero elevato, mentre la chiave pubblica contiene il modulo e il grado. Il modulo è formato da due numeri primi casuali, che solo il proprietario della chiave privata conosce. L'attacco può essere applicato alle implementazioni RSA utilizzando il teorema cinese del resto e schemi di riempimento deterministici come PKCS#1 v1.5.
È possibile effettuare un attacco a server in cui, a causa di una combinazione di circostanze o azioni dell'attaccante, si verificano errori durante il calcolo della firma digitale al momento della creazione di una connessione SSH. Questi errori possono essere di natura software (esecuzione errata di operazioni matematiche, corruzione della memoria) o hardware (errori nel funzionamento di NVRAM e DRAM o guasti durante interruzioni di corrente).
Un modo per indurre malfunzionamenti potrebbe essere tramite attacchi RowHammer , che, tra le altre cose, consentono la distorsione di singoli bit di memoria durante letture cicliche intensive di celle di memoria adiacenti, da remoto o elaborando codice JavaScript in un browser . Un altro modo per causare malfunzionamenti potrebbe essere sfruttando vulnerabilità che portano a buffer overflow e corruzione dei dati che coinvolgono chiavi in ​​memoria.
Per condurre un attacco, è sufficiente monitorare passivamente le connessioni legittime al server SSH fino a quando non viene identificata una firma digitale errata nel traffico. Questa firma può quindi essere utilizzata per ricostruire la chiave privata RSA. Dopo aver ricreato la chiave RSA dell'host, un aggressore può utilizzare un attacco man-in-the-middle (MITM) per reindirizzare silenziosamente le richieste a un host fasullo che impersona un server SSH compromesso e intercettare i dati trasmessi.
Esaminando una raccolta di dati di rete intercettati che includeva circa 5200 miliardi di record associati all'uso del protocollo SSH, i ricercatori hanno identificato circa 3200 miliardi di chiavi host pubbliche e firme digitali utilizzate durante la negoziazione delle sessioni SSH. Di questi, 1.200 miliardi (39,1%) sono stati generati utilizzando l’algoritmo RSA.
Il gruppo di ricercatori afferma che:
In 593671 casi (0,048%) la firma RSA era danneggiata e non poteva essere verificata, mentre per 4962 firme fallite, siamo stati in grado di utilizzare il metodo di fattorizzazione Lattice per determinare la chiave privata dalla chiave pubblica nota, ottenendo la ricostruzione di 189 RSA univoci coppie di chiavi (in molti casi, le stesse chiavi e dispositivi guasti sono stati utilizzati per generare diverse firme danneggiate). Sono state necessarie circa 26 ore di CPU per ricreare le chiavi.
Il problema riguarda solo specifiche implementazioni del protocollo SSH, utilizzate principalmente su dispositivi embedded. Si precisa inoltre che OpenSSH non è interessato perché utilizza la libreria OpenSSL (o LibreSSL) per generare le chiavi, libreria che è protetta dagli attacchi di vulnerabilità sin dal 2001.
Inoltre, in OpenSSH, lo schema di firma digitale ssh-rsa (basato su sha1) è stato deprecato dal 2020 e disabilitato nella versione 8.8 (rimane il supporto per gli schemi rsa-sha2-256 e rsa-sha2-512). L'attacco potrebbe potenzialmente essere applicabile al protocollo IPsec, ma i ricercatori non disponevano di dati sperimentali sufficienti per confermare nella pratica un simile attacco.
Infine, se siete interessati ad approfondire l'argomento, potete trovare maggiori dettagli al seguente link.