Wat is DNS-tunneling? Detectie-instructies

Wat is DNS-tunneling? Detectie-instructies

DNS-tunneling maakt van het domeinnaamsysteem een ​​wapen voor hackers. DNS is in wezen het enorme telefoonboek van internet. DNS is ook het onderliggende protocol waarmee beheerders de DNS-serverdatabase kunnen opvragen. Tot nu toe lijkt alles duidelijk. Maar sluwe hackers realiseerden zich dat ze in het geheim met de computer van het slachtoffer konden communiceren door besturingsopdrachten en gegevens in het DNS-protocol te injecteren. Dit idee vormt de basis van DNS-tunneling.

Hoe DNS-tunneling werkt

Wat is DNS-tunneling? Detectie-instructies

Alles op internet heeft zijn eigen aparte protocol. En DNS-ondersteuning is relatief eenvoudig protocol verzoek-antwoordtype. Als je wilt zien hoe het werkt, kun je nslookup uitvoeren, het belangrijkste hulpmiddel voor het maken van DNS-query's. U kunt een adres aanvragen door eenvoudigweg de domeinnaam op te geven waarin u geïnteresseerd bent, bijvoorbeeld:

Wat is DNS-tunneling? Detectie-instructies

In ons geval reageerde het protocol met het domein-IP-adres. Wat het DNS-protocol betreft, heb ik een adresverzoek of een zogenaamd verzoek gedaan. "Een type. Er zijn andere soorten verzoeken en het DNS-protocol zal reageren met een andere reeks gegevensvelden, die, zoals we later zullen zien, door hackers kunnen worden uitgebuit.

Op de een of andere manier houdt het DNS-protocol zich in de kern bezig met het verzenden van een verzoek naar de server en het antwoord ervan terug naar de client. Wat als een aanvaller een verborgen bericht toevoegt aan een domeinnaamverzoek? In plaats van bijvoorbeeld een volledig legitieme URL in te voeren, voert hij de gegevens in die hij wil verzenden:

Wat is DNS-tunneling? Detectie-instructies

Stel dat een aanvaller de DNS-server beheert. Vervolgens kan het gegevens (persoonlijke gegevens bijvoorbeeld) verzenden zonder noodzakelijkerwijs te worden gedetecteerd. Waarom zou een DNS-query plotseling iets onwettigs worden?

Door de server te controleren, kunnen hackers reacties vervalsen en gegevens terugsturen naar het doelsysteem. Hierdoor kunnen ze berichten doorgeven die verborgen zijn in verschillende velden van het DNS-antwoord aan de malware op de geïnfecteerde machine, met instructies zoals zoeken in een specifieke map.

Het ‘tunneling’-gedeelte van deze aanval is verhulling gegevens en opdrachten door detectie door monitoringsystemen. Hackers kunnen base32-, base64-tekensets enz. gebruiken of de gegevens zelfs versleutelen. Dergelijke codering wordt niet opgemerkt door eenvoudige hulpprogramma's voor het detecteren van bedreigingen die de leesbare tekst doorzoeken.

En dit is DNS-tunneling!

Geschiedenis van DNS-tunneling-aanvallen

Alles heeft een begin, inclusief het idee om het DNS-protocol te kapen voor hackdoeleinden. Voor zover wij weten, de eerste discussie Deze aanval werd in april 1998 uitgevoerd door Oskar Pearson op de Bugtraq-mailinglijst.

In 2004 werd DNS-tunneling bij Black Hat geïntroduceerd als een hacktechniek in een presentatie van Dan Kaminsky. Zo groeide het idee al snel uit tot een echt aanvalsinstrument.

Tegenwoordig neemt DNS-tunneling een zelfverzekerde positie in op de kaart mogelijke dreigingen (en informatiebeveiligingsbloggers wordt vaak gevraagd om dit uit te leggen).

Heb je gehoord over Zeeschildpad ? Dit is een voortdurende campagne van cybercriminele groepen – hoogstwaarschijnlijk door de staat gesponsord – om legitieme DNS-servers te kapen om DNS-verzoeken om te leiden naar hun eigen servers. Dit betekent dat organisaties ‘slechte’ IP-adressen ontvangen die verwijzen naar nep-webpagina’s die worden beheerd door hackers, zoals Google of FedEx. Tegelijkertijd zullen aanvallers gebruikersaccounts en wachtwoorden kunnen bemachtigen, die deze onbewust op dergelijke nepsites zullen invoeren. Dit is geen DNS-tunneling, maar gewoon een ongelukkig gevolg van hackers die DNS-servers controleren.

DNS-tunnelingbedreigingen

Wat is DNS-tunneling? Detectie-instructies

DNS-tunneling is een indicatie van het begin van de fase van slecht nieuws. Welke? We hebben er al over verschillende gesproken, maar laten we ze structureren:

  • Gegevensuitvoer (exfiltratie) – een hacker verzendt in het geheim kritische gegevens via DNS. Dit is zeker niet de meest efficiënte manier om informatie van de computer van het slachtoffer over te dragen - rekening houdend met alle kosten en coderingen - maar het werkt, en tegelijkertijd - in het geheim!
  • Commando en Controle (afgekort C2) – hackers gebruiken het DNS-protocol om eenvoudige besturingsopdrachten te verzenden via bijvoorbeeld trojan voor externe toegang (Remote Access Trojan, afgekort RAT).
  • IP-over-DNS-tunneling - Dit klinkt misschien gek, maar er zijn hulpprogramma's die een IP-stack implementeren bovenop DNS-protocolverzoeken en -antwoorden. Het maakt gegevensoverdracht mogelijk via FTP, Netcat, ssh, enz. een relatief eenvoudige taak. Uiterst onheilspellend!

DNS-tunneling detecteren

Wat is DNS-tunneling? Detectie-instructies

Er zijn twee hoofdmethoden voor het detecteren van DNS-misbruik: belastinganalyse en verkeersanalyse.

bij belasting analyse De verdedigende partij zoekt naar afwijkingen in de heen en weer gestuurde data die met statistische methoden kunnen worden opgespoord: vreemd ogende hostnamen, een DNS-recordtype dat niet zo vaak wordt gebruikt, of niet-standaard codering.

bij verkeersanalyse Het aantal DNS-verzoeken voor elk domein wordt geschat vergeleken met het statistische gemiddelde. Aanvallers die DNS-tunneling gebruiken, genereren een grote hoeveelheid verkeer naar de server. In theorie aanzienlijk superieur aan de normale DNS-berichtenuitwisseling. En dit moet gemonitord worden!

Hulpprogramma's voor DNS-tunneling

Als u uw eigen pentest wilt uitvoeren en wilt zien hoe goed uw bedrijf dergelijke activiteiten kan detecteren en erop kan reageren, zijn hier verschillende hulpprogramma's voor. Ze kunnen allemaal tunnelen in de modus IP-over-DNS:

  • Jodium – beschikbaar op veel platforms (Linux, Mac OS, FreeBSD en Windows). Hiermee kunt u een SSH-shell installeren tussen de doel- en controlecomputers. Dat is een goede Hyde over het instellen en gebruiken van jodium.
  • OzymanDNS – DNS-tunnelingproject van Dan Kaminsky, geschreven in Perl. Je kunt er verbinding mee maken via SSH.
  • DNSCat2 - “DNS-tunnel waar je niet ziek van wordt.” Creëert een gecodeerd C2-kanaal voor het verzenden/downloaden van bestanden, het starten van shells, enz.

Hulpprogramma's voor DNS-bewaking

Hieronder vindt u een lijst met verschillende hulpprogramma's die nuttig kunnen zijn voor het detecteren van tunnelaanvallen:

  • dnsHunter – Python-module geschreven voor MercenaryHuntFramework en Mercenary-Linux. Leest .pcap-bestanden, extraheert DNS-query's en voert geolocatiekaarten uit om te helpen bij de analyse.
  • reassemble_dns – een Python-hulpprogramma dat .pcap-bestanden leest en DNS-berichten analyseert.

Micro-veelgestelde vragen over DNS-tunneling

Nuttige informatie in de vorm van vragen en antwoorden!

Vraag: Wat is tunnelen?
О: Het is gewoon een manier om gegevens over een bestaand protocol over te dragen. Het onderliggende protocol biedt een speciaal kanaal of tunnel, die vervolgens wordt gebruikt om de informatie die daadwerkelijk wordt verzonden te verbergen.

Vraag: Wanneer werd de eerste DNS-tunnelingaanval uitgevoerd?
О: We weten het niet! Als u het weet, laat het ons dan weten. Voor zover ons bekend werd de eerste discussie over de aanval in april 1998 geïnitieerd door Oscar Piersan in de Bugtraq-mailinglijst.

Vraag: Welke aanvallen lijken op DNS-tunneling?
О: DNS is verre van het enige protocol dat voor tunneling kan worden gebruikt. Command and control (C2)-malware maakt bijvoorbeeld vaak gebruik van HTTP om het communicatiekanaal te maskeren. Net als bij DNS-tunneling verbergt de hacker zijn gegevens, maar in dit geval lijkt het alsof verkeer van een gewone webbrowser toegang krijgt tot een externe site (beheerd door de aanvaller). Dit kan onopgemerkt blijven door monitoringprogramma's als ze niet zijn geconfigureerd om waar te nemen bedreiging misbruik van het HTTP-protocol voor hackerdoeleinden.

Wilt u dat wij u helpen met DNS-tunneldetectie? Bekijk onze module Varonis Rand en probeer het gratis demonstratie!

Bron: www.habr.com

Voeg een reactie