Cyber Security Academy · Lezione

DNS tunneling ed esfiltrazione

Trasportare dati clandestinamente tramite DNS.

Lezione 3 di 413 passaggi

DNS tunneling ed esfiltrazione è una lezione Cyber Security Academy gratuita su CoddyKit. Questa è la lezione 3 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Cyber Security Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Cyber Security Academy include 4 lezioni in totale.

Trasporto clandestino di dati tramite DNS

Il tunneling DNS codifica dati arbitrari nelle query e nelle risposte DNS, trasformando il sistema dei nomi in un canale di comunicazione nascosto. Poiché quasi tutte le reti consentono al DNS di oltrepassare il perimetro, è un canale privilegiato per l'esfiltrazione dei dati e il command-and-control (C2).

Se il firewall blocca tutto, ma il resolver continua a rispondere, gli attaccanti possono instradare un canale bidirezionale completo tramite DNS.

Come funziona il canale

L'attaccante controlla il server dei nomi autorevole per un dominio, ad esempio tunnel.evil.com. L'implant codifica i dati in uscita nel sottodominio (etichetta a sinistra) delle query:

  • I dati escono come <base32-chunk>.tunnel.evil.com.
  • Il server autorevole restituisce le istruzioni nei record TXT, CNAME o NULL.

Ogni coppia query/risposta trasporta una piccola porzione di payload.

ZXhmaWx0cmF0ZWQtc2VjcmV0.tunnel.evil.com
# Encoded chunk smuggled in the query label

Scelte di codifica

Le etichette DNS non distinguono tra maiuscole e minuscole e hanno una lunghezza limitata, quindi i dati binari vengono solitamente codificati in Base32 (Base64 distingue tra maiuscole e minuscole e usa caratteri non sicuri). È necessario rispettare questi vincoli:

  • Ogni etichetta può contenere fino a 63 caratteri.
  • Il nome completo può contenere fino a 255 caratteri.
  • Di conseguenza, ogni query trasporta al massimo poche centinaia di byte.

Questo throughput ridotto rende l'esfiltrazione tramite DNS lenta e molto frequente, caratteristiche che la rendono anche rilevabile.

Tipi di record utilizzati

Tipi di record diversi consentono di massimizzare la capacità in downstream:

  • TXT — payload di testo libero di grandi dimensioni, il formato principale per le risposte C2.
  • NULL — byte grezzi, utilizzati da strumenti meno recenti come iodine.
  • CNAME / MX — capacità moderata, si confondono con il traffico legittimo.
  • A / AAAA — capacità ridotta, ma sono molto comuni e poco sospetti.

Strumenti comuni

È opportuno riconoscere queste note utility di tunneling durante i rilevamenti:

  • iodine — tunnel IP-over-DNS che utilizza record NULL/TXT.
  • dnscat2 — canale C2 cifrato tramite DNS.
  • DNSExfiltrator — esfiltrazione di file in più fasi.
  • Beacon DNS di Cobalt Strike — comune nel red team e nelle intrusioni reali.

Questi strumenti presentano pattern di query e firme di entropia riconoscibili.

Modalità lente e veloci

Gli attaccanti regolano il tunnel: un profilo a basso volume e a bassa frequenza invia poche query al minuto per eludere le soglie basate sul volume, ed è adatto all'esfiltrazione furtiva di piccoli segreti come credenziali o chiavi.

Un profilo ad alta capacità di trasmissione massimizza il numero di query per il C2 interattivo o il trasferimento in blocco, sacrificando la furtività a favore della velocità. La logica di rilevamento deve individuare entrambi gli estremi.

Indicatore di rilevamento: entropia

I sottodomini codificati sembrano stringhe casuali, quindi hanno un'entropia elevata rispetto ai nomi di dominio naturali. Il calcolo dell'entropia di Shannon per ogni etichetta è un'euristica efficace.

I nomi legittimi tendono a essere stringhe pronunciabili a bassa entropia; xj4k9d2mq7zp1.tunnel.evil.com risalta immediatamente. Segnali i domini per i quali l'entropia del sottodominio supera una soglia calibrata.

Indicatore di rilevamento: volume e lunghezza

Altri indicatori comportamentali:

  • Un numero insolitamente elevato di query verso un singolo dominio da parte di un host.
  • Nomi di query lunghi, prossimi al limite di 255 byte.
  • Uso sproporzionato di record TXT o NULL.
  • Molti sottodomini univoci sotto lo stesso dominio padre (cardinalità elevata).
  • Query verso un dominio di recente registrazione o con reputazione bassa.
# Top talkers by unique subdomain count per parent domain
sort dns.log | awk '{print $domain}' | sort | uniq -c | sort -rn | head

Perché il filtraggio in uscita è utile

Gli endpoint non dovrebbero mai interrogare direttamente il DNS su Internet. Obblighi tutti i client a utilizzare resolver interni e blocchi il traffico UDP/TCP in uscita sulla porta 53 nel firewall.

In questo modo il DNS viene convogliato attraverso un punto di controllo in cui è possibile registrare e ispezionare il traffico e applicare la threat intelligence. Inoltre, si bloccano gli implant che utilizzano resolver esterni codificati direttamente, come 8.8.8.8.

Mitigazioni multilivello

Combini più controlli per bloccare il tunneling:

  • Centralizzi la risoluzione e blocchi direttamente la porta 53 verso l'esterno.
  • Implementi un firewall DNS / RPZ con feed di reputazione.
  • Generi avvisi in base a entropia, lunghezza delle query, tasso di NXDOMAIN e cardinalità per dominio.
  • Limiti la frequenza e, quando possibile, la dimensione delle query.
  • Monitori il DoH verso endpoint sconosciuti, che nasconde il tunneling all'interno di HTTPS.

DoH: un punto cieco per il rilevamento

Il DNS over HTTPS incapsula le query in TLS sulla porta 443, quindi il monitoraggio tradizionale della porta 53 non rileva nulla. Un implant che utilizza DoH verso un endpoint ostile può trasferire dati senza essere visibile alla registrazione DNS passiva.

Per mitigare il rischio, vincoli gli endpoint a un resolver DoH approvato, blocchi gli IP e gli hostname pubblici noti dei servizi DoH sui dispositivi gestiti e analizzi l'SNI TLS e la reputazione della destinazione.

Verifica rapida

Metta alla prova il Suo intuito nel rilevamento.

Riepilogo

Il tunneling DNS sfrutta i sottodomini delle query e i record delle risposte (TXT, NULL, CNAME) per creare un canale nascosto destinato all'esfiltrazione e al C2. Il throughput è ridotto, quindi il trasferimento è lento ma furtivo. Strumenti come iodine e dnscat2 lasciano pattern riconoscibili.

Rilevi il tunneling tramite analisi di entropia, lunghezza, volume e cardinalità delle query; lo prevenga con resolver centralizzati, filtraggio in uscita, firewall DNS/RPZ e controllo del DoH. Prossimamente: come DNSSEC e il filtraggio difendono il sistema dei nomi nel suo complesso.

Gratis per iniziare

Impara Cyber Security Academy con un tutor IA — gratis

Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.

Corsi
76
Lezioni
303

Domande Frequenti

La lezione «DNS tunneling ed esfiltrazione» è gratuita?

Sì — il testo completo di «DNS tunneling ed esfiltrazione» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Cyber Security Academy, passa a CoddyKit PRO. Il corso Cyber Security Academy include 4 lezioni in totale.

Cosa imparerò in «DNS tunneling ed esfiltrazione»?

Trasportare dati clandestinamente tramite DNS. Eserciti Cyber Security Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Cyber Security Academy?

Non è richiesta alcuna esperienza precedente. Cyber Security Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.

Quanto tempo richiede la lezione «DNS tunneling ed esfiltrazione»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Cyber Security Academy?

Sì. Ogni lezione Cyber Security Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Come funziona il DNS e quali rischi comporta
  2. DNS spoofing e cache poisoning
  3. DNS tunneling ed esfiltrazione
  4. DNSSEC e filtraggio DNS
← Torna a Cyber Security Academy