DNSSEC in dettaglio

La comunicazione in Internet utilizza ampiamente il DNS per ricercare informazioni. DNSSEC rende più sicuro tale protocollo DNS, migliorando in questo modo la sicurezza dell'intera comunicazione in Internet. Di seguito vengono forniti ulteriori dettagli a riguardo.

Come funziona il DNS (Domain Name System)?

Ci si può immaginare il DNS come un elenco telefonico distribuito globalmente che assegna i nomi a dominio inequivocabili (switch.ch) di tutto il mondo agli indirizzi Internet inequivocabili (indirizzi IP come 130.59.138.34) di tutto il mondo. I nomi a dominio servono soltanto a semplificare il modo di scrivere.

Affinché le richieste non finiscano tutte su un unico server, il DNS ha una struttura gerarchica. Lo spazio del nome viene suddiviso in cosiddette zone. Per www.switch.ch si tratta, dopo la gerarchia superiore ("root zone"), dei server per la Svizzera ("ch") e poi dei server di SWITCH ("switch.ch"). Le pertinenze delle zone vengono suddivise (delegate) nella gerarchia.

Se volete accedere con il vostro computer al sito web www.switch.ch, il name server del vostro provider interrogherà successivamente tutti i livelli della gerarchia sopraccitata. Ogni livello che non è in grado di rispondere alla richiesta relativa all'indirizzo di destinazione rinvia al livello successivo. Il server più basso nella gerarchia può fornire infine l'indirizzo IP del server di destinazione.

Il Domain Name System (DNS) ha una struttura gerarchica. I name server per ".ch" inoltrano automaticamente all'indirizzo corretto le richieste di nomi a dominio con l'estensione .ch (p.es. switch.ch).

A cosa serve DNSSEC?

Immaginatevi che qualcuno riesca a modificare le voci di un elenco telefonico. Voi cercate il numero di SWITCH e trovate un numero sbagliato. Avreste la possibilità di riconoscere un uso illecito? È difficile. Un tale scenario è possibile in Internet, quando un hacker modifica la gerarchia descritta in alto. Se un hacker riesce a immettere dati falsi (Cache Poisoning), per esempio nel server del vostro provider, se voi richiamaste www.switch.ch finireste su un altro sito web. È meglio che non vi immaginiate cosa potrebbe succedere se il sito web falsificato fosse quello della vostra banca. Oppure se inviaste la più recente strategia della vostra ditta al mail server "falso" di un partner.

La gerarchia può essere modificata mediante il "Cache Poisoning".

Poiché Internet viene utilizzato oggi per tutti gli scopi possibili e immaginabili, questi attacchi degli hacker possono avere conseguenze di ampia portata. DNSSEC offre una protezione fondamentale da tali attacchi, e non solo quando si richiamano siti web.

DNSSEC non può proteggere in generale dagli attacchi di phishing. Esso offre però una protezione efficace dagli attacchi al DNS. Questo è importante, poiché la maggior parte degli attacchi di phishing può essere scoperta e impedita dagli utenti di Internet attenti. Tuttavia, persino gli esperti difficilmente possono riconoscere gli attacchi al DNS.

Come funziona DNSSEC?

DNSSEC si basa su firme o segnature crittografiche con le quali vengono firmate (segnate) le voci attuali del DNS. Chiunque è responsabile (autoritativamente) di un nome a dominio in Internet può proteggere le proprie informazioni mediante DNSSEC. Tutte le informazioni delle quali è responsabile un offerente di servizi vengono firmate con la sua chiave personale e le firme vengono riportate nel DNS (RRSIG Record).

Un'esempio con DNSSEC
Il name server del vostro provider segue di nuovo la nota gerarchia per risolvere un'interrogazione. Ma questa volta può verificare, sulla scorta delle firme
ricevute, se l'origine delle risposte è corretta e se una risposta è stata modificata strada facendo. Esso risponderà soltanto se tutte le informazioni sono corrette.

Il name server del vostro provider riconosce mediante DNSSEC una gerarchia modificata dal "Cache Poisoning".

Ma come si possono verificare tutte queste firme?

Per produrre delle firme digitali si genera una coppia di chiavi. Una tale coppia di chiavi consiste di una coppia di chiavi privata e di una coppia di chiavi pubblica
(criptosistema asimmetrico). Come già dice il nome, la parte privata è segreta e rimane presso il possessore. La parte pubblica viene pubblicata nel DNS (DNSKEY
Record). Con la chiave pubblica si può ora verificare e convalidare una firma apposta con la chiave privata.

Bisogna dunque fidarsi di una chiave pubblica prima di poter verificare una firma. Poiché non è possibile fidarsi di tutte le chiavi in Internet, si utilizza una gerarchia delle chiavi analoga alla gerarchia del DNS ("Chain of Trust"). A prima vista la cosasembra un po' sconcertante, ma questo è necessario per poter verificare tutte le firme con una singola chiave pubblica.

La "Chain of Trust" in dettaglio

Una riproduzione della chiave pubblica viene comunicata al livello successivo nella gerarchia. L'istanza superiore riporta questa riproduzione nella sua zona (DS Record) e ne garantisce l'autenticità mediante una firma. La chiave pubblica di questa istanza viene trasmessa a sua volta all'istanza superiore.

L'istanza superiore (p.es. il name server per .ch) garantisce in una "Chain of Trust" l'autenticità dei dati dell'istanza subordinata.