Aggiornamento: sembra un L'uomo finlandese è stato in grado di dimostrare questo " attacco "emettendo un certificato per il dominio live.fi
avendo l'indirizzo [email protected]
.
L'anno scorso, ho fatto una scommessa con un amico per ottenere un certificato attendibile dal browser con il suo nome di dominio al fine di lanciare un attacco MiTM riuscito sul suo modulo di login per rubare la sua password. Per farla breve: ho perso la scommessa; Non ero in grado di convincere nessuna delle 16 CA che ho contattato che sono il legittimo proprietario del dominio. Anche se avevo un account e-mail sul suo server di posta e avevo accesso FTP a un utente directory nella directory WWW.
Torniamo un po 'indietro. Cosa fanno le CA prima di emettere un certificato di base? Hanno un processo chiamato Domain Control Validation (DCV). La buona notizia è che DCV rende difficile per qualcuno rilasciare un certificato per tuo conto. La cattiva notizia è che ogni CA può apportare modifiche e modifiche personalizzate al DCV, il che rende impossibile stabilire quale CA sarà il link più debole.
In generale, le CA utilizzano uno dei seguenti metodi:
1. Convalida email del dominio: ti invieranno un link / codice di verifica a uno dei seguenti indirizzi email:
- Indipendentemente dall'email che hai nei record WHOIS (se hai la privacy WHOIS, ti chiederanno di contattare il tuo registratore e impostare l'inoltro della posta elettronica).
- admin @ Dominio
- administrator @ Dominio
- hostmaster @ Dominio
- root @ Dominio
- webmaster @ Dominio
- postmaster @ Dominio
2. Convalida CNAME di dominio: ti chiederanno di creare una voce CNAME personalizzata. Solitamente comporta l'hash della richiesta di firma del certificato (CSR) o di una chiave generata a caso di propria scelta. Un esempio di tale voce è
<MD5(CSR)>.yourdomain.com. CNAME <SHA1(CSR)>.CA.com
3. Convalida richiesta HTTP: ti chiederanno di caricare un file di testo specifico su root del tuo dominio. Il file dovrebbe essere accessibile con la seguente richiesta HTTP
http://YourDomain/<MD5(CSR)>.txt
E dovrebbe contenere SHA1(CSR)
.
Risultati interessanti: Durante la mia "sfida", sono riuscito a ottenere una CA (SSL.COM) per concordare il caricamento del file di testo su Domain/MyUserName/Something.txt
e inviarmi via email il link di verifica a MyUserName@Domain
. Tuttavia, hanno insistito sul fatto che dovevano verificarmi con una telefonata al numero nelle registrazioni WHOIS. Ho anche scoperto che alcune CA richiedono un telefono come verifica del primo passaggio, anche prima della verifica dell'e-mail. Tali CA non rilasciano certificati per nomi di dominio utilizzando le opzioni di privacy.
Quindi per rispondere direttamente alla tua domanda , impedisci ai tuoi utenti di creare indirizzi email speciali (menzionati sopra. Puoi anche aggiungere it@
, hostadmin@
, ecc. creando voci CNAME e, infine, impedisci loro di aggiungere file alla directory principale del tuo dominio.
Nota: solo perché 16 CA si sono dimostrate valide, ciò non significa che non ci siano persone che sono disposte a compromettersi in nome della "confidenza dei clienti".