Kas ir DNS tunelēšana? Atklāšanas instrukcijas

Kas ir DNS tunelēšana? Atklāšanas instrukcijas

DNS tunelēšana pārvērš domēna vārdu sistēmu par hakeru ieroci. DNS būtībā ir milzīga interneta tālruņu grāmata. DNS ir arī pamatā esošais protokols, kas ļauj administratoriem veikt vaicājumus DNS servera datu bāzē. Pagaidām viss šķiet skaidrs. Taču viltīgie hakeri saprata, ka var slepeni sazināties ar upura datoru, ievadot vadības komandas un datus DNS protokolā. Šī ideja ir DNS tunelēšanas pamatā.

Kā darbojas DNS tunelēšana

Kas ir DNS tunelēšana? Atklāšanas instrukcijas

Visam internetā ir savs atsevišķs protokols. Un DNS atbalsts ir salīdzinoši vienkāršs protokols pieprasījuma-atbildes veids. Ja vēlaties redzēt, kā tas darbojas, varat palaist nslookup, galveno DNS vaicājumu veikšanas rīku. Varat pieprasīt adresi, vienkārši norādot jūs interesējošo domēna nosaukumu, piemēram:

Kas ir DNS tunelēšana? Atklāšanas instrukcijas

Mūsu gadījumā protokols atbildēja ar domēna IP adresi. Runājot par DNS protokolu, es veicu adreses pieprasījumu vai tā saukto pieprasījumu. "A" tips. Ir arī citi pieprasījumu veidi, un DNS protokols atbildēs ar atšķirīgu datu lauku kopu, ko, kā redzēsim vēlāk, var izmantot hakeri.

Vienā vai otrā veidā DNS protokols ir saistīts ar pieprasījuma pārsūtīšanu serverim un tā atbildi atpakaļ klientam. Ko darīt, ja uzbrucējs domēna vārda pieprasījumam pievieno slēptu ziņojumu? Piemēram, tā vietā, lai ievadītu pilnīgi likumīgu URL, viņš ievadīs datus, ko vēlas pārsūtīt:

Kas ir DNS tunelēšana? Atklāšanas instrukcijas

Pieņemsim, ka uzbrucējs kontrolē DNS serveri. Pēc tam tas var pārsūtīt datus, piemēram, personas datus, bez nepieciešamības to atklāt. Galu galā, kāpēc DNS vaicājums pēkšņi kļūtu par nelikumīgu?

Kontrolējot serveri, hakeri var viltot atbildes un nosūtīt datus atpakaļ uz mērķa sistēmu. Tas ļauj viņiem nosūtīt ziņojumus, kas paslēpti dažādos DNS atbildes laukos, ļaunprogrammatūrai inficētajā datorā ar tādiem norādījumiem kā meklēšana noteiktā mapē.

Šī uzbrukuma "tunelēšanas" daļa ir slēpšana dati un komandas, kas iegūtas, izmantojot uzraudzības sistēmas. Hakeri var izmantot base32, base64 utt. rakstzīmju kopas vai pat šifrēt datus. Vienkāršas draudu noteikšanas utilītas, kas meklē vienkāršā tekstā, šādu kodējumu nepamanīs.

Un šī ir DNS tunelēšana!

DNS tunelēšanas uzbrukumu vēsture

Visam ir sākums, ieskaitot ideju par DNS protokola nolaupīšanu uzlaušanas nolūkos. Cik varam spriest, pirmais diskusija Šo uzbrukumu 1998. gada aprīlī veica Oskars Pīrsons Bugtraq adresātu sarakstā.

Līdz 2004. gadam DNS tunelēšana tika ieviesta Black Hat kā uzlaušanas paņēmiens Dan Kaminsky prezentācijā. Tādējādi ideja ļoti ātri pārauga par īstu uzbrukuma rīku.

Mūsdienās DNS tunelēšana kartē ieņem pārliecinošu pozīciju potenciālie draudi (un informācijas drošības emuāru autoriem bieži tiek lūgts to izskaidrot).

Vai esat dzirdējuši par Jūras bruņurupucis ? Šī ir nepārtraukta kibernoziedznieku grupu kampaņa, kas, visticamāk, ir valsts sponsorēta, lai nolaupītu likumīgus DNS serverus, lai novirzītu DNS pieprasījumus uz saviem serveriem. Tas nozīmē, ka organizācijas saņems "sliktas" IP adreses, kas norāda uz viltotām tīmekļa lapām, kuras pārvalda hakeri, piemēram, Google vai FedEx. Tajā pašā laikā uzbrucēji varēs iegūt lietotāju kontus un paroles, kuras neapzināti ievadīs tos šādās viltus vietnēs. Tā nav DNS tunelēšana, bet tikai vēl vienas neveiksmīgas sekas, ko rada hakeri, kas kontrolē DNS serverus.

DNS tunelēšanas draudi

Kas ir DNS tunelēšana? Atklāšanas instrukcijas

DNS tunelēšana ir kā indikators slikto ziņu stadijas sākumam. Kuras? Mēs jau esam runājuši par vairākiem, bet strukturēsim tos:

  • Datu izvade (eksfiltrācija) - hakeris slepeni pārsūta kritiskos datus, izmantojot DNS. Tas noteikti nav efektīvākais informācijas pārsūtīšanas veids no cietušā datora – ņemot vērā visas izmaksas un kodējumus –, taču tas darbojas, un tajā pašā laikā – slepeni!
  • Command and Control (saīsināti C2) – hakeri izmanto DNS protokolu, lai nosūtītu vienkāršas vadības komandas, piemēram, attālās piekļuves Trojas zirgs (Attālās piekļuves Trojas zirgs, saīsināts RAT).
  • IP-over-DNS tunelēšana - Tas var izklausīties traki, taču ir utilītas, kas ievieš IP steku virs DNS protokola pieprasījumiem un atbildēm. Tas veic datu pārsūtīšanu, izmantojot FTP, Netcat, ssh utt. salīdzinoši vienkāršs uzdevums. Ārkārtīgi draudīgi!

Notiek DNS tunelēšanas noteikšana

Kas ir DNS tunelēšana? Atklāšanas instrukcijas

DNS ļaunprātīgas izmantošanas noteikšanai ir divas galvenās metodes: slodzes analīze un trafika analīze.

Pie slodzes analīze Aizstāvošā puse meklē anomālijas šurpu un atpakaļ nosūtītajos datos, kuras var noteikt ar statistiskām metodēm: dīvaini izskatās resursdatora nosaukumi, DNS ieraksta tips, kas netiek izmantots tik bieži, vai nestandarta kodējums.

Pie satiksmes analīze DNS pieprasījumu skaits katram domēnam tiek aprēķināts, salīdzinot ar statistisko vidējo. Uzbrucēji, kas izmanto DNS tunelēšanu, ģenerēs lielu trafika apjomu uz serveri. Teorētiski ievērojami pārāka par parasto DNS ziņojumu apmaiņu. Un tas ir jāuzrauga!

DNS tunelēšanas utilītas

Ja vēlaties veikt savu pentestu un redzēt, cik labi jūsu uzņēmums var atklāt šādas darbības un reaģēt uz tām, tam ir vairākas utilītas. Visi no tiem var tuneli režīmā IP-over-DNS:

  • jods – pieejams daudzās platformās (Linux, Mac OS, FreeBSD un Windows). Ļauj instalēt SSH apvalku starp mērķa un vadības datoru. Tas ir labs vadīt par joda iestatīšanu un lietošanu.
  • OzymanDNS - DNS tunelēšanas projekts no Dan Kaminsky, rakstīts Perl. Varat izveidot savienojumu ar to, izmantojot SSH.
  • DNSCat2 - "DNS tunelis, kas nesaslimst." Izveido šifrētu C2 kanālu failu nosūtīšanai/lejupielādēšanai, čaulu palaišanai utt.

DNS uzraudzības utilītas

Zemāk ir saraksts ar vairākām utilītprogrammām, kas būs noderīgas tuneļu uzbrukumu noteikšanai:

  • dnsHunter - Python modulis, kas rakstīts MercenaryHuntFramework un Mercenary-Linux. Lasa .pcap failus, izvelk DNS vaicājumus un veic ģeogrāfiskās atrašanās vietas kartēšanu, lai palīdzētu veikt analīzi.
  • reassemble_dns – Python utilīta, kas nolasa .pcap failus un analizē DNS ziņojumus.

Mikro bieži uzdotie jautājumi par DNS tunelēšanu

Noderīga informācija jautājumu un atbilžu veidā!

J: Kas ir tunelēšana?
Par: Tas ir vienkārši veids, kā pārsūtīt datus, izmantojot esošu protokolu. Pamatā esošais protokols nodrošina īpašu kanālu vai tuneli, ko pēc tam izmanto, lai paslēptu faktiski pārsūtīto informāciju.

J: Kad tika veikts pirmais DNS tunelēšanas uzbrukums?
Par: Mēs nezinām! Ja zināt, lūdzu, paziņojiet mums. Cik mums ir zināms, pirmo diskusiju par uzbrukumu aizsāka Oskars Pīrsans Bugtraq adresātu sarakstā 1998. gada aprīlī.

J: Kādi uzbrukumi ir līdzīgi DNS tunelēšanai?
Par: DNS nebūt nav vienīgais protokols, ko var izmantot tunelēšanai. Piemēram, komandēšanas un kontroles (C2) ļaunprogrammatūra bieži izmanto HTTP, lai maskētu sakaru kanālu. Tāpat kā DNS tunelēšanas gadījumā, hakeris slēpj savus datus, taču šajā gadījumā tas izskatās kā trafiks no parastas tīmekļa pārlūkprogrammas, kas piekļūst attālai vietnei (ko kontrolē uzbrucējs). To var nepamanīt uzraudzības programmas, ja tās nav konfigurētas uztveršanai draudi HTTP protokola ļaunprātīga izmantošana hakeru nolūkos.

Vai vēlaties, lai mēs palīdzam ar DNS tuneļa noteikšanu? Apskatiet mūsu moduli Varonis Edge un izmēģiniet to bez maksas demo!

Avots: www.habr.com

Pievieno komentāru