01Cos'è l'esfiltrazione DNS
Un programma taglia un file a pezzi, codifica ogni pezzo in lettere e cifre, e chiede nomi come 4a6f686e20446f652c207061737377.x.example.com. I server dei nomi di quel dominio sono dell'attaccante: ricevono i pezzi, e le loro risposte possono riportare ordini. Strumenti come iodine o dnscat2 costruiscono così un tunnel completo.
MITRE ATT&CK, il catalogo di riferimento delle tecniche degli attaccanti, la classifica in tre tecniche: T1048 (esfiltrazione tramite un protocollo alternativo), T1071.004 (comando e controllo tramite DNS) e T1572 (tunneling di protocollo).
02Cosa controlla Warda
Sulla scheda Fughe di dati tramite DNS delle Impostazioni di protezione (gratuita, attiva per impostazione predefinita), Warda legge i nomi richiesti, sulla scatola, e nient'altro: non viene decifrato nulla, e i nomi (i dati) non vengono mai conservati.
- I nomi codificati: la parte sotto il dominio è molto lunga (100 caratteri o più), oppure la sua etichetta più lunga ha 20 caratteri o più e sembra casuale: un'entropia alta con cifre mescolate, o quasi nessuna vocale.
- In quantità: quando un dispositivo chiede 40 nomi codificati diversi sotto uno stesso dominio in 10 minuti, quel dominio viene bloccato per quel dispositivo per 24 ore, e gli amministratori ricevono un avviso.
- Da Warda 0.9.10, un secondo segnale: quando un dispositivo chiede, in 10 minuti, 30 nomi diversi sotto uno stesso dominio con un tipo di record insolito (TXT, NULL, MX, CNAME, ANY…), il dominio viene bloccato anche per quel dispositivo. Restano esclusi i nomi corti (meno di 8 caratteri sotto il dominio) e le etichette che iniziano con «_» — ciò che i server di posta e i servizi chiedono tutto il giorno: _dmarc, _domainkey, _spf. Warda 0.9.10 elenca anche i dispositivi che interrogano un server DNS diverso da Warda.
- I servizi che codificano di proposito (le liste di blocco dei server di posta, le verifiche degli antivirus, i nomi condivisi dei cloud) sono esclusi; Consentire questo dominio toglie un blocco per un servizio di cui ti fidi.
03Cosa aiuta intorno
Un tunnel ha bisogno di un dominio suo, spesso nuovo. Altre protezioni di Warda chiudono le scorciatoie:
- la categoria dei domini nuovi, da bloccare per profilo, e la reputazione dei domini, che chiede il parere del servizio di analisi di Warda su un dominio che la famiglia conosce poco (solo il dominio esce dalla scatola);
- la categoria degli aggiramenti del filtro: i servizi noti di DNS over HTTPS, VPN e proxy, bloccati per bambini e ragazzi, e Relay privato di iCloud per i loro dispositivi a casa;
- il nome di prova di Firefox, use-application-dns.net, a cui Warda risponde «non esiste»: Firefox mantiene allora il DNS della rete invece del proprio.
04I limiti, detti chiaramente
- Una richiesta inviata direttamente a 8.8.8.8 non arriva mai a Warda: chiudere le porte del DNS agli altri dispositivi è compito del router.
- Una fuga lenta non si vede: meno di circa 4 nomi codificati al minuto (40 in 10 minuti), o 3 nomi di tipi insoliti al minuto (30 in 10 minuti), resta sotto le soglie.
- Un tunnel dentro una connessione cifrata verso un resolver pubblico (DNS over HTTPS sulla porta 443) non mostra nulla a Warda, a meno che il servizio sia noto e bloccato.
- Un avviso dice che un dispositivo si comporta come un tunnel, non quale programma lo fa: controlla il dispositivo, e mettilo in quarantena nel frattempo.