Siamo abituati a ritenere che la risoluzione dei nomi avvenga tramite una richiesta in chiaro con protocollo UDP sulla porta 53 di uno dei server specificati nella configurazione dell’host. Per estensione, siamo abituati a credere che se si controllano in un qualche modo i server DNS impostati in un host, si può controllare il modo in cui l’host accede a determinati nomi a dominio.
DoH (DNS over HTTPS) potrebbe cambiare le regole del gioco e le nostre granitiche certezze.
DoH è documentato in RFC8484 e permette di eseguire una richiesta (query) ad un server DNS attraverso un URI trasmesso via HTTPS con metodo GET o POST; il server risponderà con l’indirizzo IP richiesto.
Ad esempio il browser esegue un GET sul server che supporta DoH con questo URI:
https://doh.server.org/dns-query?dns=xxxxxxxxxxxxxxxxxx
dove al posto della fila di x c’è la query in formato base64url.
Il server risponderà con il risultato della query identificato da un content type application/dns-message.
Questa tecnologia permette di rendere completamente anonimi gli accessi a Internet. Con il protocollo DNS normale le query viaggiano in chiaro e sono facilmente intercettabili. Con questo sistema anche le richieste ai DNS sono cifrate e il provider o chi per lui non ha traccia dei nomi a dominio di cui un utente ha chiesto la risoluzione.
I vecchi trucchi di invalidazione di un nome a dominio potrebbero non funzionare più. Fin’ora se un’organizzazione in cui tutti gli host erano forzati ad usare un server DNS voleva impedire facilmente l’accesso a PIPPO.COM creava una zona autoritaria di PIPPO.COM nel proprio server DNS sovrascrivendo di fatto la vera zona di PIPPO.COM e bloccando l’accesso al sito.
Di contro, gli autori dei malware potrebbero utilizzare questo protocollo per evadere i blocchi come quello descritto sopra.
Per abilitare DoH in Firefox è necessaria almeno la versione 62 del programma, quindi scrivere nella barra dell’URL about:config per accedere ai parametri di configurazione.
Nel campo di ricerca scrivere network.trr per visualizzare solamente le impostazioni DoH (trr sta per Trusted Recursive Resolver).
Il campo network.trr.mode indica lo stato di DoH e può essere 0 (disabilitato di default), 1 (Firefox decide se usare DoH o DNS a seconda delle performance), 2 (usa DoH come metodo principale, ma passa a DNS se questo non funziona), 3 (usa solamente DoH) o 5 (DoH disabilitato in maniera esplicita). Per usare DoH assegnare a questo campo 2 o 3.
Verificare che network.trr.uri sia impostato a https://mozilla.cloudflare-dns.com/dns-query e chiudere la pagina.
Per verificare che Firefox stia effettivamente utilizzando DoH visitare la pagina https://www.cloudflare.com/ssl/encrypted-sni/ in cui Secure DNS deve risultare attivo. In alternativa si può visitare https://1.1.1.1/help e verificare che DoH sia attivo.
A fine aprile 2019 Chrome non supporta ancora DoH.
Al momento solamente Cloudflare e Google offrono un servizio pubblico di risoluzione nomi attraverso HTTPS.
Lascia un commento