Attacchi DoS e MitM ai domini mediante certificati ancora attivi

28 Ago 2018

I certificati HTTPS rappresentano uno dei pilastri della sicurezza su Internet. Ma non sempre è tutto rose e fiori; sappiamo, infatti, che i meccanismi esistenti spesso non riescono a garantire la totale sicurezza degli utenti.

Due certificati validi per lo stesso dominio

La registrazione del domino e il certificato HTTPS sono spesso controllati da diverse organizzazioni e la loro validità può non corrispondere. Ciò porta a situazioni in cui i precedenti proprietari e quelli attuali posseggano contemporaneamente certificati validi per lo stesso dominio.

Cosa può andare storto e quanto è diffuso questo problema? In occasione della DEF CON 26, i ricercatori Ian Foster e Dylan Ayrey hanno presentato uno studio che analizza la situazione e, secondo loro, le complicazioni che ne derivano sono maggiori di quello che si pensa e si tratta di una situazione piuttosto comune.

Il problema più ovvio è piuttosto evidente, se consideriamo uno scenario in cui qualcun altro possiede un certificato valido per il vostro dominio: è possibile che venga perpetrato un attacco Man-in-the-Middle ai danni degli utenti del vostro sito.

Foster e Ayrey si sono avvalsi del database di certificati del progetto Certificate Transparency e hanno individuato 1,5 milioni di certificati affetti da questo problema, corrispondente allo 0,5% di tutti i siti Internet disponibili. In un quarto dei casi, il vecchio certificato resta valido, lasciando 375 mila domini vulnerabili a attacchi Man-in-the-Middle.

E non è tutto. È pratica comune creare un certificato per diversi domini, a volte di decine o centinaia. Ad esempio, Foster e Ayrey hanno trovato un certificato che copriva 700 domini contemporaneamente e nell’elenco erano presenti anche domini piuttosto popolari.

Ovviamente di questi 700 domini alcuni potevano essere presi tranquillamente, ottenendo il certificato HTTPS. A questo punto ci domandiamo: il nuovo proprietario del dominio ha il diritto di revocare il certificato precedentemente emesso per proteggere il proprio sito da attacchi Man-in-the-Middle?

Come revocare il certificato?

Effettivamente i certificati possono essere revocati. La procedura ammessa dai centri di certificazione offre la revoca solo se “le informazioni presenti nel Certificato non sono accurate o portano a fraintendimenti” e la revoca ha effetto 24 ore dopo aver ricevuto la notifica di conferma.

Foster e Ayrey hanno dato un’occhiata a cosa avviene nella vita reale e si sono resi conto che la procedura varia molto a seconda del centro. Let’s Encrypt, ad esempio, impiega tool automatizzati che snelliscono molto la procedura, che avviene quasi in tempo reale. Per quanto riguarda altri centri, invece, bisogna mettersi in contatto con l’altra parte, il che rallenta il tutto. A volte, per ottenere la revoca bisogna armarsi di molta perseveranza e i tempi di attesa vanno ben oltre le 24 ore che sarebbero in teoria necessarie. Nel peggiore dei casi, non si arriva ad ottenere il risultato sperato: ad esempio, la conversazione tra i ricercatori e Comodo si conclude con il suggerimento di dimenticarsi dell’SSL in questione e di richiedere un nuovo certificato.

 

In un modo nell’altro, comunque si dovrebbe arrivare alla revoca del certificato ancora attivo e la notizia è buona e cattiva allo stesso tempo. Da un lato, il nuovo proprietario del dominio nella maggior parte dei casi riuscirà a proteggersi da attacchi Man-in-the-Middle, che potrebbero sfruttare la vulnerabilità di questo certificato. Dall’altro, però, vuol dire che qualcun altro potrebbe acquistare un dominio libero tra quelli coperti dal certificato “condiviso” e farselo revocare, minando considerevolmente l’utilizzo dei siti associati.

Qual è l’effettiva diffusione di questa situazione? Ancora più del primo caso: 7 milioni di domini (oltre il 2% di Internet!) condividono i propri certificati con domini il cui registro è già scaduto. Il 41% dei certificati anteriori sono ancora validi e quindi ci sono vari milioni di domini esposti ad attacchi DoS che sfruttano la vulnerabilità della revoca dei certificati.

 

Ritorniamo per un momento al certificato dai 700 domini. Per dimostrare l’urgenza del problema, i ricercatori hanno acquistato uno dei domini disponibili coperti da questo certificato e così, in teoria, potrebbero avere la possibilità di lanciare un attacco DoS a centinaia di siti attivi.

Come difendersi 

Un totale di 375 mila domini è vulnerabile ad attacchi MitM e milioni di domini ad attacchi DoS mediante i certificati ancora attivi, e anche i vostri domini potrebbero essere nella lista. Grazie al report presentato alla conferenza di hacking più grande a livello mondiale, ora sapete che qualcuno è già alla ricerca di domini vulnerabili, probabilmente proprio in questo momento mentre state leggendo questo articolo. Cosa possono fare i proprietari dei siti per proteggersi? Foster e Ayrey suggeriscono quanto segue:

  • Utilizzate un header HTTP Expect-CT con direttiva “enforce” per essere sicuri che solo i certificati presenti nel database di Certificate Transparency siano affidabili per il vostro dominio;
  • Utilizzate il database di Certificate Transparency per verificare se esistono certificati validi emessi a favore dei precedenti proprietari. Per fare ciò, potete ricorrere al tool Monitoraggio della trasparenza dei certificati di Facebook. Per rendere più semplice questo compito, i ricercatori offrono un tool che loro stessi hanno progettato e che chiunque può utilizzare per cercare i domini esposti alle vulnerabilità descritte.

E aggiungiamo anche qualche altro consiglio:

  • Effettuate l’inventario completo dei vostri siti aziendali per verificare se ci sono certificati ancora attivi che coinvolgono i vostri domini. Se ne doveste trovare qualcuno, provate a mettervi in contatto con il centro che ha emesso i certificati per revocarli;
  • Evitate un certificato valido per diversi domini, soprattutto se nella vostra azienda di prassi si creano numerosi siti e vi si associano domini senza un efficace monitoraggio dell’operatività. Se scade la registrazione di questi domini “abbandonati” e qualcun altro se ne appropria, per far smettere di funzionare il vostro sito non deve fare altro che revocare il certificato;
  • Tenete in considerazione in anticipo l’eventuale compromissione del certificato. Va revocato con urgenza e alcuni centri possono metterci del tempo a rispondere, per cui meglio avere a che fare con centri dalla risposta più rapida.