Čo je tunelovanie DNS? Pokyny na detekciu

Čo je tunelovanie DNS? Pokyny na detekciu

DNS tunelovanie mení systém doménových mien na zbraň pre hackerov. DNS je v podstate obrovský telefónny zoznam internetu. DNS je tiež základný protokol, ktorý umožňuje správcom dotazovať sa na databázu servera DNS. Zatiaľ sa zdá byť všetko jasné. Prefíkaní hackeri si však uvedomili, že môžu tajne komunikovať s počítačom obete vložením riadiacich príkazov a údajov do protokolu DNS. Táto myšlienka je základom tunelovania DNS.

Ako funguje tunelovanie DNS

Čo je tunelovanie DNS? Pokyny na detekciu

Všetko na internete má svoj samostatný protokol. A podpora DNS je pomerne jednoduchá protokol typ žiadosť-odpoveď. Ak chcete vidieť, ako to funguje, môžete spustiť nslookup, hlavný nástroj na vytváranie DNS dotazov. Môžete požiadať o adresu jednoduchým zadaním názvu domény, o ktorú máte záujem, napríklad:

Čo je tunelovanie DNS? Pokyny na detekciu

V našom prípade protokol odpovedal IP adresou domény. V zmysle DNS protokolu som zadal požiadavku na adresu alebo požiadavku tzv. "Typ. Existujú aj iné typy požiadaviek a protokol DNS odpovie inou sadou dátových polí, ktoré, ako uvidíme neskôr, môžu zneužiť hackeri.

Tak či onak, vo svojom jadre sa protokol DNS zaoberá prenosom požiadavky na server a jej odpoveďou späť klientovi. Čo ak útočník pridá skrytú správu do žiadosti o názov domény? Napríklad namiesto zadania úplne legitímnej adresy URL zadá údaje, ktoré chce preniesť:

Čo je tunelovanie DNS? Pokyny na detekciu

Povedzme, že útočník ovláda server DNS. Potom môže prenášať údaje – napríklad osobné údaje – bez toho, aby boli nevyhnutne detekované. Koniec koncov, prečo by sa dopyt DNS zrazu stal niečím nelegitímnym?

Ovládaním servera môžu hackeri falšovať odpovede a posielať dáta späť do cieľového systému. To im umožňuje posielať správy skryté v rôznych poliach odpovede DNS malvéru na infikovanom počítači s pokynmi, ako je vyhľadávanie v konkrétnom priečinku.

"Tunelová" časť tohto útoku je utajovanie údaje a príkazy z detekcie monitorovacími systémami. Hackeri môžu používať znakové sady base32, base64 atď. alebo dokonca šifrovať údaje. Takéto kódovanie prejde neodhalené jednoduchými nástrojmi na detekciu hrozieb, ktoré prehľadávajú holý text.

A toto je tunelovanie DNS!

História útokov tunelovania DNS

Všetko má svoj začiatok, vrátane myšlienky únosu protokolu DNS na účely hackerstva. Pokiaľ vieme, prvý diskusia Tento útok vykonal Oskar Pearson z mailing listu Bugtraq v apríli 1998.

V roku 2004 bolo tunelovanie DNS predstavené v Black Hat ako hackerská technika v prezentácii Dana Kaminského. Nápad tak veľmi rýchlo prerástol do skutočného útočného nástroja.

Dnes tunelovanie DNS zaujíma na mape sebavedomú pozíciu potenciálne hrozby (a blogeri o informačnej bezpečnosti sú často žiadaní, aby to vysvetlili).

Počuli ste už o Morská korytnačka ? Ide o prebiehajúcu kampaň skupín kyberzločincov – s najväčšou pravdepodobnosťou sponzorovaných štátom – s cieľom uniesť legitímne servery DNS s cieľom presmerovať požiadavky DNS na ich vlastné servery. To znamená, že organizácie dostanú „zlé“ IP adresy odkazujúce na falošné webové stránky prevádzkované hackermi, ako sú Google alebo FedEx. Zároveň budú môcť útočníci získať používateľské účty a heslá, ktoré ich nevedomky zadajú na takéto falošné stránky. Toto nie je tunelovanie DNS, ale len ďalší nešťastný dôsledok hackerov ovládajúcich servery DNS.

Hrozby tunelovania DNS

Čo je tunelovanie DNS? Pokyny na detekciu

DNS tunelovanie je ako indikátor začiatku fázy zlých správ. Ktoré? O niekoľkých sme už hovorili, ale poďme ich štruktúrovať:

  • Výstup dát (exfiltrácia) – hacker tajne prenáša kritické údaje cez DNS. Toto rozhodne nie je najefektívnejší spôsob prenosu informácií z počítača obete - berúc do úvahy všetky náklady a kódovanie - ale funguje to a zároveň - tajne!
  • Command and Control (skrátene C2) – hackeri používajú protokol DNS na odosielanie jednoduchých riadiacich príkazov, povedzme, vzdialený prístup trójsky kôň (Trójsky kôň pre vzdialený prístup, skrátene RAT).
  • IP-over-DNS tunelovanie - Môže to znieť šialene, ale existujú nástroje, ktoré implementujú zásobník IP nad požiadavky a odpovede protokolu DNS. Umožňuje prenos údajov pomocou FTP, Netcat, ssh atď. pomerne jednoduchá úloha. Mimoriadne zlovestné!

Detekcia tunelovania DNS

Čo je tunelovanie DNS? Pokyny na detekciu

Existujú dve hlavné metódy na zisťovanie zneužívania DNS: analýza zaťaženia a analýza návštevnosti.

Na analýza zaťaženia Brániaca sa strana hľadá anomálie v odosielaných údajoch tam a späť, ktoré možno zistiť štatistickými metódami: zvláštne vyzerajúce názvy hostiteľov, typ záznamu DNS, ktorý sa nepoužíva tak často, alebo neštandardné kódovanie.

Na analýza návštevnosti Počet žiadostí DNS pre každú doménu sa odhaduje v porovnaní so štatistickým priemerom. Útočníci používajúci tunelovanie DNS budú generovať veľké množstvo návštevnosti servera. Teoreticky výrazne prevyšuje normálnu výmenu správ DNS. A toto treba sledovať!

Pomôcky na tunelovanie DNS

Ak chcete vykonať svoj vlastný pentest a zistiť, ako dobre dokáže vaša spoločnosť odhaliť a reagovať na takúto aktivitu, existuje na to niekoľko nástrojov. Všetky môžu tunelovať v režime IP-over-DNS:

  • Jód – dostupné na mnohých platformách (Linux, Mac OS, FreeBSD a Windows). Umožňuje vám nainštalovať shell SSH medzi cieľový a riadiaci počítač. To je dobré sprievodca o nastavení a používaní jódu.
  • OzymanDNS – Projekt tunelovania DNS od Dana Kaminského, napísaný v jazyku Perl. Môžete sa k nemu pripojiť cez SSH.
  • DNSCat2 - "tunel DNS, z ktorého nie ste chorí." Vytvára šifrovaný kanál C2 na odosielanie/sťahovanie súborov, spúšťanie shellov atď.

Nástroje na monitorovanie DNS

Nižšie je uvedený zoznam niekoľkých nástrojov, ktoré budú užitočné pri zisťovaní tunelových útokov:

  • dnsHunter – Modul Python napísaný pre MercenaryHuntFramework a Mercenary-Linux. Číta súbory .pcap, extrahuje dotazy DNS a vykonáva mapovanie geolokácie na pomoc pri analýze.
  • reassemble_dns – pomôcka Pythonu, ktorá číta súbory .pcap a analyzuje správy DNS.

Mikročasté otázky o tunelovaní DNS

Užitočné informácie vo forme otázok a odpovedí!

Otázka: Čo je tunelovanie?
o: Je to jednoducho spôsob prenosu údajov cez existujúci protokol. Základný protokol poskytuje vyhradený kanál alebo tunel, ktorý sa potom používa na skrytie skutočne prenášaných informácií.

Otázka: Kedy bol vykonaný prvý útok tunelovania DNS?
o: Nevieme! Ak viete, dajte nám vedieť. Pokiaľ je nám známe, prvú diskusiu o útoku inicioval Oscar Piersan v zozname adries Bugtraq v apríli 1998.

Otázka: Aké útoky sú podobné tunelovaniu DNS?
o: DNS zďaleka nie je jediný protokol, ktorý možno použiť na tunelovanie. Napríklad malvér príkazov a riadenia (C2) často používa HTTP na maskovanie komunikačného kanála. Rovnako ako pri tunelovaní DNS, hacker skrýva svoje údaje, ale v tomto prípade to vyzerá ako návštevnosť z bežného webového prehliadača, ktorá pristupuje na vzdialenú stránku (kontrolovanú útočníkom). To môže zostať nepovšimnuté monitorovacími programami, ak nie sú nakonfigurované na vnímanie hrozba zneužívanie protokolu HTTP na hackerské účely.

Chcete, aby sme vám pomohli s detekciou tunela DNS? Pozrite si náš modul Varonis Edge a vyskúšať to zadarmo demonštrácie!

Zdroj: hab.com

Pridať komentár