Il tuo ISP può effettuare attacchi MITM anche se stai utilizzando SSL!
Innanzitutto, l'ISP controlla il tuo accesso a Internet, quindi non è necessario effettuare un attacco DNS, anche se potrebbe. Piuttosto, potrebbe semplicemente instradare (come nel routing IP Layer 2 o Layer 3) tutto il traffico verso un server nel mezzo (pensa al server proxy senza le impostazioni del proxy nel tuo browser).
Successivamente, il tuo browser, come la maggior parte dei browser, è probabilmente abbastanza liberale quando si tratta di certificati root di CA. Cioè, potrebbe avere dozzine o centinaia di certificati di root. Una manciata di questi sono abbastanza affidabili, alcune dozzine sono per lo più affidabili e alcune sono decisamente disastrose. Se il tuo ISP (o qualsiasi aggressore MITM) può ottenere un certificato server da una di queste CA borderline (non molto difficile), può creare con te quella che sembra essere una sessione SSL protetta (il tuo browser ha l'icona di blocco fantasia). Tuttavia, nello stile classico man-in-the-middle, la sessione SSL termina sul server centrale. Quel server crea una seconda sessione SSL con il legittimo server di back-end. Nessuna delle parti finali è più saggia.
Che cosa significa? Tutto il traffico (nomi utente, password, conti bancari, ecc.) Passa attraverso il primo tubo sicuro, in chiaro a livello di applicazione del server centrale (da catturare e successivamente rivedere) e quindi tornare al secondo tubo sicuro.
Ops! Attacco MITM e non lo sapresti mai. Potrebbe succedere? Impiegato canaglia all'ISP. Oppure, forse un paese straniero (potrebbe essere un paese straniero amico) decide di curiosare sulla tua email aziendale tramite questo metodo.
La soluzione migliore è rimuovere la maggior parte dei certificati di root dal computer, sia che si tratti tramite il browser o qualche altro keystore o entrambi. Se non ne hai bisogno o lo sai, perché crederlo? L'intero punto dei certificati radice PKI è quello di utilizzare solo quelli di cui ti fidi.
In realtà penso che questo sia più realistico di un attacco DNS. Inoltre, l'attacco DNS deve ancora apparire come una sessione SSL legittima che significa ottenere un certificato server SSL valido. Tuttavia, non ho dati reali per entrambi gli scenari.