Cosa sono i DNS e perché hanno finito con il rompere Internet
Parte fondamentale dell’infrastruttura di Internet, sono una sorta di agenda telefonica mondiale nella quale trovare gli indirizzi IP delle risorse di rete
Quindici minuti di celebrità, diceva più o meno Andy Warhol, non si rifiutano a nessuno. Nemmeno ai DNS. Rimasti nell’ombra sino al 21 ottobre 2016, hanno prepotentemente conquistato la ribalta internazionale quando hanno causato un malfunzionamento che ha messo KO Internet in mezzo mondo.
Oltre alle telecamere IP di sorveglianza e altre decine di oggetti IT, sul banco degli imputati sono saliti proprio i Domain Name System, una delle tecnologie di rete più vecchie e, ancora oggi, una delle più utilizzate. Questa infrastruttura software, infatti, consente agli utenti di non dover ricordare a memoria gli indirizzi IP dei portali web e delle altre risorse di rete (contenuti testuali e multimediali in primis, ma non solo) ma di poter accedere digitando la URL nell’apposita barra del web browser. Insomma, i DNS servono ad “alleviare” il peso mnemonico della navigazione online, automatizzandola e rendendola accessibile a tutti. Ma come accade?
IPv4, IPv6 e URL
Se siete alla ricerca di un’immagine che vi aiuti a capire, in maniera semplice e veloce, cosa sia Internet, pensate a una mappa di una città immensa e con miliardi di autostrade, strade, vicoli e vicoletti. Una mappa nella quale ogni nodo (che sia un computer, uno smartphone, un server o anche un termostato connesso) ha un indirizzo preciso e univoco al quale può essere rintracciato. Questo indirizzo, nell’ambito della rete Internet, è l’indirizzo IP.
Per decenni, l’infrastruttura che consentiva di individuare univocamente i nodi della Rete è stata basata sul protocollo IPv4. Secondo questo schema, l’indirizzo IP delle risorse è formato da quattro triplette di numeri da 0 a 255 scritte nella forma xxx.xxx.xxx.xxx: a ogni combinazione numerica (tranne alcune eccezioni) corrisponde un diverso dispositivo di rete, che può essere così individuato univocamente. La continua crescita del numero di device di rete ha però messo in crisi questo modello e dal 2011 in poi è stata messa in atto una vera e propri rivoluzione che sta portando, pian piano, all’adozione di un nuovo standard, l’IPv6.
Rispetto al suo predecessore, l’IPv6 consente di collegare alla Rete un numero infinitamente maggiore di dispositivi (questo protocollo può gestire circa 3,4 × 1038 indirizzi, contro i circa 4,3 x 109 del suo predecessore) ma, se possibile, assume una forma “standard” ancora più strana e difficile da ricordare. Un indirizzo IPv6 è composto da 8 gruppi di quattro cifre esadecimali in cui le lettere sono scritte in forma minuscola. Se un indirizzo IPv4 valido è scritto nella forma 56.124.36.192, un indirizzo IPv6 valido assume la forma 2001:0db8:85a3:0000:1319:8a2e:0370:7344.
Per evitare che gli internauti dovessero ricordare a mente stringhe così composte, sono state ideate e introdotte le URL (acronimo di Uniform Resource Locator), una sorta di scorciatoia mnemonica facile da adottare. Come gli indirizzi IP, infatti, la URL identifica univocamente una risorsa di rete (dal documento di testo alla pagina HTML, passando per qualunque tipologia di file multimediale), ma a loro differenza sono composte da una sequenza di lettere e numeri di senso compiuto e, per questo, facilmente memorizzabili anche dalla mente umana.
Cosa sono i DNS
A questo punto entrano in gioco i DNS. Il Domain Name System svolge la funzione di elenco telefonico di Internet con lo scopo di facilitare le richieste di accesso a siti web e specifiche risorse archiviate su server o content delivery network (abbreviati in CDN). Per farla breve, quando un utente inserisce una URL all’interno della barra degli indirizzi di un browser, la richiesta di accesso alla risorsa passa, prima di tutto, tramite i server DNS: questa infrastruttura si occupa di tradurre la URL nel corrispondente indirizzo IP (sia esso in formato IPv4 o IPv6), così da esser sicuri che l’internauta ottenga la risorsa desiderata. In questa fase dobbiamo immaginare il software che gestisce il Domain Name System come se accedesse a un’immensa rubrica telefonica nella quale trovare le corrispondenze tra indirizzo IP e URL di tutta la Rete.
Va da sé che più i server DNS rispondono in fretta, più velocemente avverrà il caricamento di una pagina o un portale web. Detto in parole povere, un Domain Name System veloce implica una connessione Internet più veloce. Per questo motivo, l’infrastruttura della rete DNS è stata organizzata in modo tale da garantire le migliori prestazioni possibili a tutti gli utenti. Ciò implica una fitta rete di server distribuita in tutto il mondo e organizzata in maniera gerarchica, sempre pronta a dare la risposta esatta alla richiesta degli utenti. Ogni volta che l’utente vuole accedere a una risorsa di rete, questa sua richiesta transita per una serie di server (come il resolving name servers, l’authoritative name servers, il domain registrars e così via) sino a che non ottiene l’accesso sperato. Il fatto più sorprendente è che, nonostante la lunga trafila “burocratica”, tutto avviene nel giro di pochi istanti, tanto che l’utente non ha idea del procedimento piuttosto complesso che sta avvenendo.
Come attaccare i server DNS
Nonostante la loro importanza strategica, attaccare un server DNS (o un gestore di servizi DNS) è meno complicato di quanto si potrebbe immaginare. E l’attacco del 21 ottobre 2016 dimostra questo assunto in tutta la sua dirompenza. È stato sufficiente un attacco DDoS, per quanto potente e di vasta portata, per mettere KO Internet in gran parte dell’America e in alcune zone dell’Europa. È bastato un esercito di telecamere IP di sorveglianza e di videoregistratori digitali infettati e compromessi (una botnet, insomma) per far sì che portali come Twitter e Amazon, servizi web come Skype e il PlayStation Network fossero irraggiungibili per diverse ore.
Un attacco a un gestore di servizi DNS, poi, amplifica ulteriormente gli effetti negativi dell’attacco stesso. Nel caso gli hacker avessero deciso di “puntare” i datacenter di Facebook e fossero riusciti nel loro intento, avrebbero “solamente” reso inaccessibile il più grande tra tutti i social network oggi esistenti. Mettendo nel mirino dei server DNS, invece, ci si pone lo scopo di creare danni e disservizi molto più ampi, che possono andare a colpire i portali e i servizi web più disparati. Ed è esattamente quello che è accaduto in seguito all’attacco a DynDNS.
Nel corso di un attacco DDoS a un Domain Name System, infatti, il browser prova a interrogare “l’elenco telefonico” senza riuscire, però, a ottenere risposta. Non sapendo dove dirigere la propria richiesta di accesso, dunque, continua a girovagare senza meta, sino a che il processo cade in time out e il tentativo di accesso al sito viene abortito.
Come possiamo proteggerci
Anche se sono loro a subire – in parte – gli effetti negativi di un attacco DDoS, gli internauti possono farci davvero ben poco. L’obiettivo primario degli hacker, infatti, è l’infrastruttura di rete, mentre l’utente finale è un obiettivo solo di “riflesso”. Il carico della sicurezza informatica, in questo caso, grava tutto sulle spalle dei team e delle società che fanno della lotta al crimine informatico la loro ragione di vita. E anche se di contromisure effettive contro un attacco DDoS non ce ne sono, si possono mettere in campo delle tattiche che, quanto meno, ne mitighino gli effetti.
Nel caso dei gestori di servizi DNS, ad esempio, la parola chiave è ridondanza. Creare una rete di server “doppioni”, qualsiasi livello gerarchico essi appartengano, permette di avere a disposizione degli “elenchi telefonici” supplementari cui fare ricorso in caso di emergenza, evitando così di interrompere il servizio. Si tratta di una scelta particolarmente pesante da un punto di vista economico, ma a lungo andare ripaga sicuramente: si avranno minori problematiche legate a possibili attacchi hacker e si potrà garantire ai propri clienti un servizio più affidabile e duraturo.