Hvad er DNS-tunneling? Detektionsinstruktioner

Hvad er DNS-tunneling? Detektionsinstruktioner

DNS-tunneling gør domænenavnesystemet til et våben for hackere. DNS er i bund og grund internettets enorme telefonbog. DNS er også den underliggende protokol, der tillader administratorer at forespørge DNS-serverdatabasen. Indtil videre virker alt klart. Men snedige hackere indså, at de i al hemmelighed kunne kommunikere med offerets computer ved at injicere kontrolkommandoer og data i DNS-protokollen. Denne idé er grundlaget for DNS-tunneling.

Sådan fungerer DNS-tunneling

Hvad er DNS-tunneling? Detektionsinstruktioner

Alt på internettet har sin egen separate protokol. Og DNS-understøttelse er forholdsvis enkel protokol anmodning-svar type. Hvis du vil se, hvordan det virker, kan du køre nslookup, hovedværktøjet til at lave DNS-forespørgsler. Du kan anmode om en adresse ved blot at angive det domænenavn, du er interesseret i, for eksempel:

Hvad er DNS-tunneling? Detektionsinstruktioner

I vores tilfælde svarede protokollen med domænets IP-adresse. I forhold til DNS-protokollen lavede jeg en adresseanmodning eller en såkaldt anmodning. "A" type. Der er andre typer anmodninger, og DNS-protokollen vil reagere med et andet sæt datafelter, som, som vi vil se senere, kan udnyttes af hackere.

På den ene eller anden måde handler DNS-protokollen i sin kerne om at sende en anmodning til serveren og dens svar tilbage til klienten. Hvad hvis en angriber tilføjer en skjult besked i en anmodning om domænenavn? For eksempel, i stedet for at indtaste en fuldstændig legitim URL, vil han indtaste de data, han vil overføre:

Hvad er DNS-tunneling? Detektionsinstruktioner

Lad os sige, at en angriber styrer DNS-serveren. Det kan derefter transmittere data - for eksempel personlige data - uden nødvendigvis at blive opdaget. Når alt kommer til alt, hvorfor skulle en DNS-forespørgsel pludselig blive noget illegitimt?

Ved at kontrollere serveren kan hackere forfalske svar og sende data tilbage til målsystemet. Dette giver dem mulighed for at videregive meddelelser, der er skjult i forskellige felter af DNS-svaret på malwaren på den inficerede maskine, med instruktioner som f.eks. søgning i en bestemt mappe.

Den "tunneling" del af dette angreb er fortielse data og kommandoer fra detektion af overvågningssystemer. Hackere kan bruge base32, base64 osv. tegnsæt, eller endda kryptere dataene. En sådan kodning vil passere uopdaget af simple trusselsdetektionsværktøjer, der søger i klartekst.

Og dette er DNS-tunneling!

Historie om DNS-tunnelangreb

Alt har en begyndelse, inklusive ideen om at kapre DNS-protokollen til hackingformål. Så vidt vi kan se, den første diskussion Dette angreb blev udført af Oskar Pearson på Bugtraqs mailingliste i april 1998.

I 2004 blev DNS-tunneling introduceret på Black Hat som en hackingteknik i en præsentation af Dan Kaminsky. Dermed voksede ideen meget hurtigt til et rigtigt angrebsværktøj.

I dag indtager DNS-tunneling en sikker position på kortet potentielle trusler (og informationssikkerhedsbloggere bliver ofte bedt om at forklare det).

Har du hørt om Havskildpadde ? Dette er en igangværende kampagne af cyberkriminelle grupper - højst sandsynligt statssponsorerede - for at kapre legitime DNS-servere for at omdirigere DNS-anmodninger til deres egne servere. Det betyder, at organisationer vil modtage "dårlige" IP-adresser, der peger på falske websider drevet af hackere, såsom Google eller FedEx. Samtidig vil angribere være i stand til at få brugerkonti og adgangskoder, som ubevidst vil indtaste dem på sådanne falske sider. Dette er ikke DNS-tunneling, men blot endnu en uheldig konsekvens af, at hackere kontrollerer DNS-servere.

DNS-tunneling trusler

Hvad er DNS-tunneling? Detektionsinstruktioner

DNS-tunneling er som en indikator for begyndelsen af ​​fase med dårlige nyheder. Hvilke? Vi har allerede talt om flere, men lad os strukturere dem:

  • Dataoutput (eksfiltrering) – en hacker overfører i hemmelighed kritiske data over DNS. Dette er bestemt ikke den mest effektive måde at overføre informationer fra offerets computer - når man tager alle omkostninger og kodninger i betragtning - men det virker, og samtidig - hemmeligt!
  • Kommando og kontrol (forkortet C2) – hackere bruger DNS-protokollen til at sende simple kontrolkommandoer gennem f.eks. fjernadgang trojan (Remote Access Trojan, forkortet RAT).
  • IP-over-DNS-tunneling - Det lyder måske skørt, men der er hjælpeprogrammer, der implementerer en IP-stak oven på DNS-protokolanmodninger og -svar. Det foretager dataoverførsel ved hjælp af FTP, Netcat, ssh osv. en forholdsvis simpel opgave. Yderst ildevarslende!

Registrerer DNS-tunneling

Hvad er DNS-tunneling? Detektionsinstruktioner

Der er to hovedmetoder til at opdage DNS-misbrug: belastningsanalyse og trafikanalyse.

belastningsanalyse Den forsvarende part leder efter uregelmæssigheder i de data, der sendes frem og tilbage, som kan detekteres ved hjælp af statistiske metoder: underligt udseende værtsnavne, en DNS-posttype, der ikke bruges så ofte, eller ikke-standard kodning.

trafikanalyse Antallet af DNS-anmodninger til hvert domæne er estimeret sammenlignet med det statistiske gennemsnit. Angribere, der bruger DNS-tunneling, vil generere en stor mængde trafik til serveren. I teorien væsentligt bedre end normal DNS-meddelelsesudveksling. Og dette skal overvåges!

DNS-tunnelingsværktøjer

Hvis du ønsker at udføre din egen test og se, hvor godt din virksomhed kan registrere og reagere på sådan aktivitet, er der flere værktøjer til dette. Alle kan tunnelere i tilstanden IP-over-DNS:

  • Iodine – tilgængelig på mange platforme (Linux, Mac OS, FreeBSD og Windows). Giver dig mulighed for at installere en SSH-skal mellem mål- og kontrolcomputere. Det er en god en guide om opsætning og brug af Jod.
  • OzymanDNS – DNS-tunnelprojekt fra Dan Kaminsky, skrevet i Perl. Du kan oprette forbindelse til den via SSH.
  • DNSCat2 – "DNS-tunnel, der ikke gør dig syg." Opretter en krypteret C2-kanal til at sende/downloade filer, starte shells osv.

DNS-overvågningsværktøjer

Nedenfor er en liste over flere værktøjer, der vil være nyttige til at opdage tunnelangreb:

  • dnsHunter – Python-modul skrevet til MercenaryHuntFramework og Mercenary-Linux. Læser .pcap-filer, udtrækker DNS-forespørgsler og udfører geolocation-mapping for at hjælpe med analyse.
  • reassemble_dns – et Python-værktøj, der læser .pcap-filer og analyserer DNS-meddelelser.

Mikro FAQ om DNS-tunneling

Nyttig information i form af spørgsmål og svar!

Q: Hvad er tunneling?
Om: Det er simpelthen en måde at overføre data over en eksisterende protokol. Den underliggende protokol giver en dedikeret kanal eller tunnel, som derefter bruges til at skjule den information, der rent faktisk transmitteres.

Q: Hvornår blev det første DNS-tunnelingangreb udført?
Om: Vi ved det ikke! Hvis du ved det, så lad os det vide. Så vidt vi ved, blev den første diskussion af angrebet indledt af Oscar Piersan på Bugtraq-mailinglisten i april 1998.

Q: Hvilke angreb ligner DNS-tunneling?
Om: DNS er langt fra den eneste protokol, der kan bruges til tunneling. For eksempel bruger kommando og kontrol (C2) malware ofte HTTP til at maskere kommunikationskanalen. Som med DNS-tunneling skjuler hackeren sine data, men i dette tilfælde ligner det trafik fra en almindelig webbrowser, der får adgang til et eksternt websted (styret af angriberen). Dette kan gå ubemærket hen af ​​overvågningsprogrammer, hvis de ikke er konfigureret til at opfatte trussel misbrug af HTTP-protokollen til hackerformål.

Vil du have os til at hjælpe med DNS-tunneldetektion? Tjek vores modul ud Varonis Edge og prøv det gratis demo!

Kilde: www.habr.com

Tilføj en kommentar