La metà dei siti web , e il loro numero è in costante aumento. Il protocollo riduce il rischio di intercettazione del traffico, ma non esclude tentativi di attacco veri e propri. Di alcuni di essi - POODLE, BEAST, DROWN e altri - e dei modi per difendersi, parleremo nel nostro articolo.
/ Flickr / / CC BY-SA
POODLE
La prima notizia dell'attacco è emersa nel 2014. La vulnerabilità nel protocollo SSL 3.0 è stata scoperta dall'esperto di sicurezza Bodo Möller e dai suoi colleghi di Google.
La sua essenza è la seguente: un hacker costringe il client a connettersi tramite SSL 3.0, simulando disconnessioni. Poi cerca nei dati crittografati in -modalità messaggi speciali e marcatori. Con una serie di richieste contraffatte, l'attaccante può ricostruire il contenuto dei dati che lo interessano, come ad esempio i cookie.
SSL 3.0 è un protocollo obsoleto. Ma la questione della sua sicurezza è ancora attuale. I clienti lo utilizzano per evitare problemi di compatibilità con i server. Secondo alcuni dati, quasi il 7% delle 100.000 più popolari siti web . Inoltre modifiche di POODLE, che prendono di mira le versioni più moderne TLS 1.0 e TLS 1.1. Quest'anno nuovi attacchi Zombie POODLE e GOLDENDOODLE, che aggirano la protezione di TLS 1.2 (sono ancora legati alla crittografia CBC).
Come proteggersi. Nel caso dell'originale POODLE, è necessario disattivare il supporto per SSL 3.0. Tuttavia, in questo caso, c'è il rischio di avere problemi di compatibilità. Una soluzione alternativa potrebbe essere il meccanismo TLS_FALLBACK_SCSV: garantisce che lo scambio di dati tramite SSL 3.0 avvenga solo con sistemi obsoleti. Gli attaccanti non possono più forzare il downgrade del protocollo. Un modo per proteggersi da Zombie POODLE e GOLDENDOODLE è disattivare il supporto per CBC nelle applicazioni basate su TLS 1.2. Una soluzione radicale sarebbe passare a TLS 1.3: nella nuova versione del protocollo non viene utilizzata la crittografia CBC. Invece, vengono utilizzati metodi più resistenti come AES e ChaCha20.
BEAST
Uno dei primi attacchi su SSL e TLS 1.0, scoperto nel 2011. Come POODLE, anche BEAST caratteristiche della crittografia CBC. Gli aggressori inseriscono un agente JavaScript o un applet Java nella macchina client, che sostituisce i messaggi durante la trasmissione dei dati su TLS o SSL. Poiché gli aggressori conoscono il contenuto dei pacchetti "falsi", possono utilizzarli per decifrare il vettore di inizializzazione e leggere gli altri messaggi al server, come ad esempio i cookie per l'autenticazione.
Ad oggi, le vulnerabilità BEAST continuano a : proxy server e applicazioni per proteggere i gateway internet locali.
Come proteggersi. L'attaccante deve inviare richieste regolarmente per decifrare i dati. In VMware ridurre la durata di SSLSessionCacheTimeout — da cinque minuti (consiglio predefinito) a 30 secondi. Questo approccio complicherà l'implementazione dei piani da parte degli aggressori, sebbene possa avere alcuni effetti negativi sulle prestazioni. Inoltre, è necessario comprendere che in un prossimo futuro la vulnerabilità BEAST potrebbe scomparire da sola — dal 2020 i principali browser il supporto per TLS 1.0 e 1.1. In ogni caso, con questi protocolli opera meno dell'1,5% di tutti gli utenti dei browser.
DROWN
Questa è un'attacco cross-protocol che sfrutta errori nell'implementazione di SSLv2 con chiavi RSA a 40 bit. L'aggressore intercetta centinaia di connessioni TLS della vittima e invia pacchetti specifici a un server con SSLv2, che utilizza la stessa chiave privata. Utilizzando l'hacker può decifrare una delle circa mille sessioni TLS del cliente.
O DROWN è stata conosciuta per la prima volta nel 2016 — allora era nel mondo. Ad oggi, non ha perso rilevanza. Tra le 150.000 siti più popolari, il 2% supporta ancora SSLv2 e meccanismi di crittografia vulnerabili.
Come proteggersi. È necessario installare le patch proposte dagli sviluppatori delle librerie crittografiche, disabilitando il supporto per SSLv2. Ad esempio, sono state presentate due di queste patch per OpenSSL (nel 2016 1.0.1s e 1.0.2g). Inoltre, aggiornamenti e istruzioni per disabilitare il protocollo vulnerabile sono stati pubblicati in , , .
"Una risorsa può essere vulnerabile a DROWN se le sue chiavi sono utilizzate da un server di terze parti con SSLv2, come un server di posta, - osserva il capo del dipartimento di sviluppo Sergey Belkin. — Questa situazione si verifica se più server utilizzano un certificato SSL condiviso. In questo caso, la supporto a SSLv2 deve essere disabilitato su tutte le macchine.
Per verificare se è necessario aggiornare il proprio sistema, è possibile utilizzare un apposito — è stato sviluppato da specialisti di sicurezza informatica che hanno scoperto DROWN. Maggiori informazioni sulle raccomandazioni relative alla protezione da questo tipo di attacchi possono essere trovate nel .
Heartbleed
Una delle vulnerabilità più gravi nel software — . È stata scoperta nel 2014 nella libreria OpenSSL. Al momento dell'annuncio dell'errore, il numero di siti web vulnerabili — circa il 17% delle risorse protette in rete.
L'attacco viene realizzato tramite un piccolo modulo di estensione TLS Heartbeat. Il protocollo TLS richiede che i dati vengano trasmessi continuamente. In caso di inattività prolungata, si verifica un'interruzione e la connessione deve essere ripristinata. Per affrontare il problema, server e client "falsano" artificialmente il canale (), inviando pacchetti di lunghezza casuale. Se questi pacchetti superano la lunghezza prevista, le versioni vulnerabili di OpenSSL leggevano la memoria oltre il buffer assegnato. In quest'area potevano trovarsi dati sensibili, inclusi le chiavi di crittografia e informazioni su altre connessioni.
La vulnerabilità era presente in tutte le versioni della libreria da 1.0.1 a 1.0.1f inclusa, così come in diversi sistemi operativi — Ubuntu fino alla 12.04.4, CentOS superiori alla 6.5, OpenBSD 5.3 e altri. Un elenco completo è disponibile . Anche se le patch contro questa vulnerabilità sono state rilasciate praticamente subito dopo la sua scoperta, il problema è tuttora attuale. Già nel 2017 , vulnerabili a Heartbleed.
Come proteggersi. È necessario alla versione 1.0.1g o superiore. È possibile anche disabilitare manualmente le richieste Heartbeat utilizzando l'opzione DOPENSSL_NO_HEARTBEATS. Dopo l'aggiornamento, gli specialisti di sicurezza informatica debbano riemettere i certificati SSL. La sostituzione è necessaria nel caso in cui i dati delle chiavi di crittografia siano stati compromessi.
Sostituzione del certificato
Tra l'utente e il server viene stabilito un nodo controllato con un certificato SSL legittimo, che intercetta attivamente il traffico. Questo nodo si finge un server legittimo, esibendo un certificato valido, e consente di condurre un attacco MITM.
Secondo Secondo dati di Mozilla, Google e vari atenei, circa l'11% delle connessioni protette in rete viene 'intercettato'. Questo è il risultato dell'installazione di certificati radice sospetti sui computer degli utenti.
Come proteggersi. Utilizzare i servizi di . Si può verificare la 'qualità' dei certificati tramite il servizio (CT). Anche i provider cloud possono aiutare nella rilevazione delle 'intercettazioni': già oggi alcune grandi aziende offrono strumenti specializzati per il monitoraggio delle connessioni tramite TLS.
Un altro modo per proteggersi sarà il nuovo ACME, che automatizza il rilascio dei certificati SSL. Introdurrà meccanismi aggiuntivi per verificare la proprietà del sito. Di più su questo .

/ Flickr / / CC BY
Prospettive di HTTPS
Nonostante diverse vulnerabilità, i giganti IT e gli esperti di sicurezza informatica sono certi del futuro del protocollo. Per una diffusa adozione di HTTPS ha parlato il creatore del WWW, Tim Berners-Lee. Secondo lui, col tempo TLS diventerà sempre più sicuro, aumentando significativamente la sicurezza delle connessioni. Berners-Lee ha persino ipotizzato che in certificati client per l'autenticazione dell'identità. Questi aiuteranno a migliorare la protezione dei server dagli attaccanti.
Lo sviluppo della tecnologia SSL/TLS sarà anche supportato dall'apprendimento automatico: algoritmi intelligenti si occuperanno della filtrazione del traffico malevolo. Negli HTTPS, gli amministratori non hanno la possibilità di scoprire il contenuto dei messaggi criptati - nemmeno di rilevare richieste provenienti da software malevolo. Già oggi le reti neurali possono filtrare pacchetti potenzialmente pericolosi con una precisione del 90%. ().
Conclusioni
Gli attacchi su HTTPS sono per lo più legati non a problemi nel protocollo stesso, ma all'uso di meccanismi di crittografia obsoleti. L'industria IT inizia gradualmente a rinunciare ai protocolli di precedente generazione e offre nuovi strumenti per la ricerca di vulnerabilità. In futuro, questi strumenti diventeranno sempre più intelligenti.
Link aggiuntivi sull'argomento:
Fonte: habr.com
