Cosa impedisce a un uomo nel mezzo di richiedere un certificato per il tuo server?

24

Supponiamo che tu abbia un server in shop.example.com e stai richiedendo un certificato da qualche CA di fiducia come Comodo (dicono che lo pubblicheranno entro pochi minuti online).

  • Prima di tutto, come possono assicurarsi di essere davvero un amministratore di shop.example.com ? Forse è stato un attaccante che ha richiesto questo certificato per poter eseguire un attacco man-in-the-middle.

  • E in secondo luogo, diciamo che sei stato davvero tu e hai ottenuto quel certificato. Cosa impedisce allo stesso utente malintenzionato di richiedere un certificato per lo stesso dominio da qualche altra CA?

  • Esiste una memoria comune di tutte le richieste in modo che le CA possano rilevare facilmente tali duplicati? O ci sono altri modi per prevenirlo?

  • Qualcuno può anche ottenere facilmente un certificato per shop.example.net e sperare in alcuni utenti che digitano errori di digitazione?

posta Ilya Chernomordik 24.07.2015 - 15:39
fonte

5 risposte

32

Si suppone che una CA si assicuri che i certificati che emette contengano solo informazioni veritiere. In che modo fanno ciò sono affari loro; si suppone che le CA serie pubblichino dettagliatamente "Certification Practice Statements" che documentano le loro procedure.

In pratica, quando desideri acquistare un certificato per un dominio www.myshop.com , la CA "ti sfida", in modo da dimostrare di avere effettivamente il controllo di quel dominio. Alcuni metodi classici includono:

  • La CA ti invia una porzione di dati casuali, da includere come nome host nel dominio. Dimostri così il tuo controllo del DNS relativo al dominio.

  • La CA ti invia una porzione di dati casuali che devi scaricare per il download (su un semplice HTTP) dal sito www.myshop.com . Dimostri così che controlli il server principale che corrisponde al dominio.

  • La CA invia quella parte di dati casuali su un'email inviata a [email protected] . Si restituisce loro tali dati, dimostrando in tal modo che è possibile leggere le e-mail inviate all'amministratore del dominio.

Nessuno di questi meccanismi è veramente strong; e, inoltre, è sufficiente che un utente malintenzionato riesca a ingannare una una CA tra le centinaia di utenti affidabili di solito dai normali browser Web. Tuttavia, i certificati fraudolenti sembrano essere una rarità (diciamo, una o due volte l'anno, in tutto il mondo), quindi bisogna ammettere che questi meccanismi di autenticazione, per quanto leggeri sembrino, devono essere abbastanza buoni per il lavoro.

Come per il dominio inesistente, è un metodo molto classico che viene comunemente gestito acquistando domini mal digeriti o scatenando i tuoi avvocati su chiunque tenti di acquistare un dominio che sembra essere "troppo vicino" al tuo dominio.

    
risposta data 24.07.2015 - 15:58
fonte
14

Le autorità di certificazione si guadagnano da vivere basandosi sulla loro reputazione di dare solo certificati agli amministratori legittimi di un dominio. Se una CA inizia a distribuire troppi certificati fraudolenti, i browser estraggono il loro certificato di base e la CA va in bancarotta, quindi è nell'interesse della CA non farlo.

Esattamente come una CA verifica che l'identità del richiedente varia a seconda della CA e di quanto il cliente è disposto a spendere per il certificato. A grandi linee, ci sono diversi livelli di certificati: Domain Validated (DV) che esegue solo controlli automatici e Extended Validation (EV) che richiede la validazione da uomo a uomo come telefonate telefoniche con l'amministratore delegato dell'azienda richiedente, incontri faccia a faccia, ecc. ma sono più costosi da acquistare.

Per rispondere alla domanda, Nel caso DV più semplice, cosa impedisce a un man-in-the-middle di ottenere un certificato per il tuo dominio? I metodi di verifica comuni includono:

  • Dimostra che puoi ricevere email su uno dei seguenti indirizzi: admin@<domain.com> , administrator@<domain.com> , hostmaster@<domain.com> , postmaster@<domain.com> , webmaster@<domain.com> , oltre a poter ricevere e-mail all'indirizzo elencato nella lista WHOIS del dominio. (esempio: GlobalSign )

  • Ti forniscono un blocco di HTML, tra cui (credo) l'hash della richiesta di firma del certificato (CSR) che hai inviato, che devi inserire nella home page del tuo sito. Ciò dimostra che il richiedente ha diritti di amministratore sul server. (esempio: GlobalSign )

  • Inserisci l'hash del CSR in un file .txt nella radice del tuo dominio, ad esempio http://yourdomain.com/<Upper case value of MD5 hash of CSR>.txt . (esempio: Comodo )

risposta data 24.07.2015 - 16:09
fonte
5

how can they ensure that you are really an admin of this myshop.com, perhaps it was an attacker who requested this certificate to be able to perform man in the middle attack?

Non possono. Se puoi ricevere posta per [email protected] , puoi ottenere un certificato per quel sito.

what prevents the same attacker from requesting the certificate for the same domain from some other CA?

Niente. Tuttavia, una richiesta di un certificato per un dominio di alto valore può attivare avvisi interni e verifiche manuali. Che cosa è esattamente un "dominio di alto valore", non è specificato. Forse l'Alexa Top 10000 siti web o qualcosa del genere. (La pagina informativa Informazioni per il pubblico del CABForum parla di questo. (Archiviato qui .))

Can someone also easily get a certificate for myhsop.com and hope for some mistyping users?

In linea di principio, sì. Con l'eccezione "dominio di alto valore" sopra menzionata. I dettagli su come le CA cercano di rilevare la somiglianza (e con cosa) non sono di dominio pubblico.

Is there a common storage of all requests so that CAs can detect it easily or some other means of preventing it?

No. Ma esiste l'iniziativa " Trasparenza certificata " di Google (CT). L'idea è che ci sia un registro pubblico di tutti i certificati emessi. E tu, come preoccupato proprietario di un dominio, puoi guardare questi registri per vedere se ci sono stati certificati emessi di recente per uno dei tuoi domini. Ciò consentirebbe almeno di rilevare rapidamente le doppie emissioni dopo il fatto. - Se e solo se tutte le CA partecipano effettivamente allo sforzo CT. E se i browser fanno rispettare questo. (Nessuna voce di registro? Nessun traffico!)

    
risposta data 24.07.2015 - 16:13
fonte
4

Dal momento che tutte le altre sottoquestioni hanno ricevuto una risposta adeguata, cercherò di rispondere alla domanda riguardante la registrazione di domini simili all'originale.

Questa azione è conosciuta come typosquatting e poiché il typosquatter possiede il dominio, avrà il controllo completo sulle richieste di verifica che l'autorità di certificazione SSL invia. Pertanto, saranno in grado di ottenere un certificato, che è a tutti gli effetti legittimo per la CA.

L'unica tecnica per difendersi da questa forma di attacco sarebbe quella di acquisire difensivamente domini typo, o di intraprendere azioni legali contro i typosquatter, come ha fatto Lego .

    
risposta data 24.07.2015 - 17:34
fonte
3

Un fornitore di certificati convalidati da domini ti chiederà in genere di creare un record DNS TXT di loro scelta per myshop.com o di mettere online una pagina web di loro scelta su link , per dimostrare che sei il proprietario del dominio. In genere questo impedisce a un utente malintenzionato di ottenere un certificato SSL per il tuo dominio, a meno che non abbia già compromesso il tuo DNS o il tuo server web. Per i certificati EV (quelli che generalmente danno una barra verde nel browser) i controlli sono più rigorosi, motivo per cui tali certificati sono più costosi.

Non esiste un registro centrale delle richieste di certificati SSL e quindi non possono essere incrociate tra diverse CA come suggerito.

Chiunque possieda il dominio myhsop.com può ottenere un certificato SSL per quel dominio. Se sei preoccupato per gli errori di battitura, registra i domini per gli errori di battitura che ti preoccupano.

    
risposta data 24.07.2015 - 16:00
fonte

Leggi altre domande sui tag