Un attacco ad una PKI

Ormai da parecchi anni esiste un dispositivo di rete in grado di ispezionare silenziosamente ed in modo trasparente tutto il traffico crittografato tramite il protocollo SSL/TLS.

Com’è possibile tutto questo? Nel protocollo SSL/TSL il client valida le credenziali del server con cui è collegato. Il server presenta un certificato firmato digitalmente, eventualmente più volte.

immagine pki

Il client dovrebbe controllare tutte le firme digitali presenti nel certificato fino a quando non trova la firma di un’autorità di certificazione nota e che quindi possa garantire l’integrabilità e l’attendibilità delle credenziali presentate.

Oggi come oggi, tuttavia, molte applicazioni che usano questo protocollo saltano completamente questa fase di verifica e semplicemente ignorano i certificati presentati dai server. Oppure non validano i certificati in modo sufficientemente accurato (per esempio, si limitano a verificare che i certificati siano stati rilasciati da un’autorità attendibile come VeriSign, senza tuttavia controllare che l’identità del server corrisponda effettivamente a quella prevista.

CA e PKI

Sfruttare tutto ciò non è difficile. Basterebbe riconfigurare tutti i client di una LAN in modo che utilizzino il protocollo SSL/TSL passando da un proxy. Oppure si potrebbe installare un certificato radice su tutti i client e ingannarli riguardo al reale server con cui comunicare. Basterebbe anche sostituire un certificato valido presentato da un server con uno contraffatto. In tutti questi casi i client non si accorgerebbero di nulla.

Tutto questo può essere fatto attraverso una tecnica più subdola.

Il trucco consiste nel creare una propria autorità di certificazione( CA certification authority) e di inserirla nelle infrastrutture di chiavi pubbliche PKI( public key infrastucture) già presente su Internet. Le CA sono autorità, riconosciute come fidate, che possono firmare i certificati presentati dai siti web e che permettono quindi ai client, per esempio il browser di verificare l’identità dichiarata dai server.

La PKI è la gerarchia di CA presente su Internet

Per creare una propria CA, bisogna pagare un’altra CA (o più di una), affinché controfirmi i certificati che si emettono in modo da garantirli.

Come i cattivi possono sfruttare i PKI

Supponiamo che un utente voglia andare, per esempio, sul sito di una banca e che un cattivo voglia intromettersi e agire da intermediario nella comunicazione. L’intermediario potrebbe generare un proprio certificato e garantirlo, cioè firmarlo tramite la propria CA e quindi presentarlo al vostro browser. Il browser lo validerebbe e tutto sembrerebbe normale, anche se il certificato non è quello legittimo della banca.

In questo scenario non vedreste alcun messaggio di avviso riguardante problemi di validità certificati. Avendo denaro sufficiente non è troppo difficile creare una propria CA e accreditarla nella PKI, per riuscire poi ad ingannare e danneggiare l’utente.

Articoli correlati:

  1. Perchè il protocollo HTTPS non è sicuro come dovrebbe
  2. WordPress sotto attacco da parte di worm
  3. Gmail: attacco sicurezza, sottratte password utenti

Lascia un commento