Attacchi potenziali su HTTPS e come proteggersi da essi.

Meta metà dei siti utilizza HTTPS, e il loro numero è in costante aumento. Il protocollo riduce il rischio di intercettazione del traffico, ma non esclude le tentativi di attacco. Alcuni di essi — POODLE, BEAST, DROWN e altri — e i metodi di protezione, li descriveremo nel nostro materiale.

Attacchi potenziali su HTTPS e come proteggersi da essi.
/ Flickr / Sven Graeme / CC BY-SA

POODLE

La prima notizia sull'attacco POODLE è emersa nel 2014. La vulnerabilità nel protocollo SSL 3.0 è stata scoperta dall'esperto di sicurezza Bodo Möller insieme ai colleghi di Google.

La sostanza consiste nel seguente: un hacker costringe il cliente a connettersi utilizzando SSL 3.0, emulando interruzioni della connessione. Poi cerca nel traffico crittografato in CBC-modalità messaggi speciali e marcatori. Attraverso una serie di richieste fasulle, il malintenzionato riesce a ricostruire il contenuto dei dati di interesse, 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% dei 100.000 siti più popolari supporta ancora SSL 3.0. Inoltre esistono modifiche POODLE, mirate a TLS 1.0 e TLS 1.1 più moderni. Quest'anno sono emerse nuovi attacchi di Zombie POODLE e GOLDENDOODLE, che aggirano la protezione di TLS 1.2 (sono ancora collegati 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 utilizzando SSL 3.0 avvenga solo con i vecchi sistemi. I malintenzionati non potranno più avviare il downgrade del protocollo. Un modo per proteggersi dagli attacchi Zombie POODLE e GOLDENDOODLE è disattivare il supporto di CBC nelle applicazioni basate su TLS 1.2. Una soluzione radicale sarà il passaggio a TLS 1.3 — nella nuova versione del protocollo non viene utilizzata la crittografia CBC. Invece, sono usati algoritmi più robusti come AES e ChaCha20.

BEAST

Uno dei primi attacchi su SSL e TLS 1.0, scoperto nel 2011. Come POODLE, BEAST utilizza fa leva sulle peculiarità della crittografia CBC. I malintenzionati installano sulla macchina client un agente JavaScript o un applet Java, che sostituisce i messaggi durante la trasmissione dei dati tramite TLS o SSL. Poiché i malintenzionati conoscono il contenuto dei pacchetti ‘falsi’, possono utilizzarli per decrittografare il vettore di inizializzazione e leggere altri messaggi destinati al server, come i cookie per l'autenticazione.

Ad oggi, le vulnerabilità di BEAST sono ancora soggette a una serie di strumenti di rete: server proxy e applicazioni per la protezione dei gateway Internet locali.

Come proteggersi. L'attaccante deve inviare continuamente richieste per decrittografare i dati. In VMware leggere ridurre la durata del SSLSessionCacheTimeout — da cinque minuti (raccomandazione predefinita) a 30 secondi. Questo approccio complicherà i piani dei malintenzionati, sebbene possa avere un certo impatto negativo sulle prestazioni. Inoltre, bisogna capire che presto la vulnerabilità BEAST potrebbe scomparire da sola — a partire dal 2020, i principali browser smetteranno di supportare TLS 1.0 e 1.1. In ogni caso, con questi protocolli lavora meno dell'1,5% di tutti gli utenti browser.

DROWN

Questa è un'attacco cross-protocol che sfrutta le vulnerabilità dell'implementazione di SSLv2 con chiavi RSA a 40 bit. L'attaccante intercetta centinaia di connessioni TLS della vittima e invia pacchetti speciali al server con SSLv2, usando la stessa chiave privata. Utilizzando l'attacco di Bleichenbacher, l'hacker può decrittografare una delle circa mille sessioni TLS del cliente.

DROWN è stata resa nota per la prima volta nel 2016 — allora risultava vulnerata un terzo dei server nel mondo. A oggi, non ha perso rilevanza. Su 150.000 siti più popolari, il 2% supporta ancora supportano SSLv2 e meccanismi di crittografia vulnerabili.

Come proteggersi. È necessario installare le patch fornite dagli sviluppatori delle librerie crittografiche, che disabilitano il supporto per SSLv2. Ad esempio, due di queste patch sono state fornite per OpenSSL (nel 2016 erano aggiornamenti 1.0.1s e 1.0.2g). Anche aggiornamenti e istruzioni su come disabilitare il protocollo vulnerabile sono stati pubblicati in Red Hat, Apache, Debian.

«La risorsa potrebbe essere vulnerabile a DROWN se le sue chiavi sono condivise con un server esterno che utilizza SSLv2, ad esempio un server di posta», sottolinea il responsabile dello sviluppo di IaaS-provider 1cloud.ru Sergei Belkin. — Questa situazione si verifica se più server utilizzano un certificato SSL comune. In questo caso, disabilitare il supporto per SSLv2 è necessario su tutte le macchine.»

Controllare se è necessario aggiornare il sistema è possibile utilizzare uno utility — sviluppato da esperti di sicurezza che hanno scoperto DROWN. Maggiori informazioni sulle raccomandazioni relative alla protezione contro questo tipo di attacchi possono essere lette nel post sul sito di OpenSSL.

Heartbleed

Una delle più grandi vulnerabilità nel software — Heartbleed. È stata scoperta nel 2014 nella libreria OpenSSL. Al momento dell'annuncio del difetto, il numero di siti web vulnerabili era valutato attorno a mezzo milione , che corrisponde a circa il 17% delle risorse protette in rete.

L'attacco si realizza tramite un piccolo modulo Heartbeat dell'estensione TLS. Il protocollo TLS richiede che i dati siano trasmessi in modo continuo. In caso di inattività prolungata, la connessione si interrompe e deve essere ripristinata. Per affrontare il problema, server e client generano artificialmente "rumore" nel canale (RFC 6520, p.5), inviando pacchetti di lunghezza casuale. Se risultava più grande del pacchetto principale, le versioni vulnerabili di OpenSSL leggeva la memoria oltre il buffer assegnato. In questa area potevano trovarsi dati di qualsiasi tipo, incluse le chiavi di crittografia e informazioni su altre connessioni.

La vulnerabilità era presente in tutte le versioni della libreria tra 1.0.1 e 1.0.1f inclusa, oltre che in diversi sistemi operativi — Ubuntu fino alla 12.04.4, CentOS superiori alla 6.5, OpenBSD 5.3 e altri. Un elenco completo è disponibile sul sito dedicato a Heartbleed. Anche se le patch per questa vulnerabilità sono state rilasciate praticamente subito dopo la sua scoperta, il problema rimane attuale fino ad oggi. Già nel 2017 quasi 200.000 siti web, erano vulnerabili a Heartbleed.

Come proteggersi. È necessario aggiornare OpenSSL alla versione 1.0.1g o superiore. È anche possibile disabilitare manualmente le richieste Heartbeat utilizzando l'opzione DOPENSSL_NO_HEARTBEATS. Dopo l'aggiornamento, gli esperti di sicurezza informatica leggere devono riemissionare i certificati SSL. È necessaria la sostituzione nel caso in cui le informazioni sulle chiavi di crittografia siano state catturate dai hacker.

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 presenta come server legittimo mostrando un certificato valido, permettendo così di effettuare un attacco MITM.

Secondo uno studio Gruppi di Mozilla, Google e diverse università affermano che quasi l'11% delle connessioni protette in rete viene "ascoltato". Questo è il risultato dell'installazione di certificati radice sospetti sui computer degli utenti.

Come proteggersi. Utilizzare i servizi di fornitori SSL affidabili. Controllare la "qualità" dei certificati può essere fatto tramite il servizio Trasparenza del Certificato (CT). Anche i fornitori di servizi cloud possono aiutare a scoprire "ascolti" — già oggi alcune grandi aziende offrono strumenti specializzati per monitorare le connessioni TLS.

Un altro modo di protezione sarà il nuovo standard ACME, che automatizza l'ottenimento dei certificati SSL. In questo modo, aggiungerà meccanismi aggiuntivi per verificare la proprietà del sito. Maggiori dettagli su di esso li abbiamo trattati in uno dei nostri articoli precedenti.

Attacchi potenziali su HTTPS e come proteggersi da essi.
/ Flickr / Yuri Samoilov / CC BY

Prospettive di HTTPS

Nonostante diverse vulnerabilità, i giganti IT e gli esperti di sicurezza informatica sono fiduciosi nel futuro del protocollo. Per la promozione attiva di HTTPS è il creatore del WWW Tim Berners-Lee. Secondo lui, col tempo TLS diventerà più sicuro, aumentando notevolmente la sicurezza delle connessioni. Berners-Lee ha persino ipotizzato che in futuro appariranno certificati client per l'autenticazione dell'identità. Essi aiuteranno a migliorare la protezione dei server da intrusi.

La tecnologia SSL/TLS sarà anche sviluppata tramite l'apprendimento automatico — gli algoritmi intelligenti saranno responsabili della filtrazione del traffico malevolo. Nelle connessioni HTTPS, gli amministratori non possono conoscere il contenuto dei messaggi cifrati — inclusi i richieste da software nocivo. Già oggi, le reti neurali possono filtrare pacchetti potenzialmente pericolosi con una precisione del 90%. (slide 23 della presentazione).

Conclusioni

Gli attacchi su HTTPS sono per lo più legati non ai problemi del protocollo stesso, ma al supporto di meccanismi di crittografia obsoleti. L'industria IT inizia gradualmente ad abbandonare i protocolli della generazione precedente e propone nuovi strumenti per la ricerca delle vulnerabilità. In futuro, questi strumenti diventeranno sempre più intelligenti.

Link aggiuntivi sull'argomento:

Fonte: habr.com

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