Útoky na DNS servery – jak fungují a jak se proti nim chránit?

Systém doménových jmen – velký pomocník v přístupu k serverům, ale i jedna z cest, kterou se útočníci mohou dostat k vašim osobním datům a citlivým údajům. Jak DNS funguje, v čem vězí jeho slabina a jaké způsoby ochrany systému existují? To vše jsme v článku shrnuli a na závěr přidali pár tipů, díky nimž se vám s DNS ochranou bude začínat o něco lépe.

DNS
VERONIKA JAKUBOVÁ
  • VERONIKA JAKUBOVÁ

  • 20. 10. 2021
  • 7 min čtení
Zkopirovat do schránky

DNS (Domain Name System) umožňuje přiřadit k IP adresám serverů doménové jméno a místo složitých číselných kombinací vyhledávat na internetu například firmy přímo podle jejich názvu. Vyhledávací proces za nás udělá prohlížeč, který ze seznamu záznamů vybere ten správný, přiřazený k danému doménovému jménu, a v řádu milisekund nám zobrazí firemní stránky.

Vysoká ochrana pro vaše servery

Pokud si nejste jistí úrovní zabezpečení svého DNS, stačí se nám ozvat. Kromě zabezpečení systému doménových jmen poradíme i si ochranou před DDoS útoky, spamem a malware nebo navrhneme vhodné firewallové řešení.

Více o kyberbezpečnosti

Aby seznam záznamů nenabyl obrovských rozměrů a nehrozilo zesložiťování názvů kvůli jejich duplicitě, zavedla se s rostoucím počtem serverů pro doménová jména určitá hierarchie a každá úroveň domény je oddělená tečkou (znáte možná také jako subdomény – např. pro master.cz je subdoménou kariera.master.cz).

Všechny tyto informace jsou uloženy na name serverech, a právě těch se prohlížeč, potažmo počítač, dotazuje, když reaguje na to, co jsme zrovna napsali do adresního řádku.

Jak funguje DNS a proč je zranitelný

Při zadání www.master.cz se počítač nejprve zeptá lokálního DNS serveru, ten od root serveru zjistí, které name servery jsou vedeny pod doménou první úrovně, tj. „.cz“. Jmenný server má informace o subdoménách „.cz“ a odkáže DNS na servery obsahující „master.cz“. Server poskytující doménu master.cz už zná všechny její subdomény a může tak lokálnímu DNS serveru sdělit, že www.master.cz náleží IP adresa 81.31.45.146.

Schéma – jak probíhá DNS dotazování
Jak fungují doménová jména a zjišťování IP adres. Zdroj: securitydaily.net

Celý proces se odehrává na pozadí a ve spojitosti s nedostatečnou ochranou DNS serverů představuje ideální příležitost k DDoS útokům a získání citlivých dat. Protože DNS vznikl už v 80. letech minulého století, kdy bezpečnost nestála na prvním místě, poskytují DNS servery získané informace o názvech serverů a IP adres komukoli, kdo o ně požádá.

Vyšší úroveň zabezpečení vykazují privátní DNS servery v interní síti, která je chráněna firewallem. Těch se lze dotazovat pouze ze zařízení přímo zapojených v interní síti, případně přes VPN. Jenže i interní DNS servery se v určité fázi musí dotazovat externích serverů, a právě v této fázi je spojení napadnutelné.

Riziko představuje DNS cache (mezipaměť DNS), k níž se lze dostat a se záznamy manipulovat. Přepisem záznamu mohou útočníci snadno přesměrovat klienta na falešnou stránku, což klient sám nemusí ani poznat. Půjde-li například o ověřený e-shop, může mít manipulace s mezipamětí za následek odcizení bankovních údajů.

Typy útoků, kterým podléhají DNS servery

  • DDoS útoky – k napadení autoritativního DNS serveru stačí několik infikovaných zařízení (tzv. botnet), která server zahltí tisícovkami dotazů z běžných počítačů s relativně nízkým výkonem. Dalším častým terčem jsou rekurzivní DNS servery, což jsou právě ty, které se dotazují name serverů na doménová jména a odpovídají na dotazy klientů. Infikovaný rekurzivní server však odpovídá na dotazy, které oběť nikdy neposlala (tzv. reflektovaný DDoS útok). Výsledkem kombinace amplifikovaného a reflektovaného útoku může být velice silný a účinný DDoS.
  • Cache poisoning – jedná se o formu DNS spoofingu, která se zaměřuje na podvržení záznamů uložených v mezipaměti (cache) rekurzivních DNS serverů. Prostředkem bývá většinou zneužití software nebo slabin UDP (User Datagram Protocol) protokolu.
  • Exfiltrace dat – využívá techniku tunelování DNS s jejíž pomocí lze vedle poměrně neškodných úkonů, jako je obejití pravidel pro připojení k WiFi, provést např. SSH over DNS, tj. prolomení pravidel firemního firewallu a zisk přístupu k citlivým informacím a aktivním síťovým prvkům. V případě napadení směrovačů a přepínačů sítě lze třeba změnit jejich konfiguraci atp. Pokud se útočníci dostanou do sítě, dokážou citlivá data maskovat jako DNS dotazy a odesílat je na vlastní servery, kde je znovu rekonstruují.
  • DNS hijacking – za pomocí malware upravuje konfiguraci DNS serverů, umožňuje útočníkům sledovat, jaké dotazy uživatel posílá, a přesměrovává uživatele na podvrženou stránku.
  • Infiltrace malware – Malware bývá často maskován za DNS dotazy či odpovědi. Jde o jednu z příležitostí, jak napadat zařízení, ale i celé sítě.

Dostupné mechanismy a standardy zabezpečení DNS

Protože je celá DNS infrastruktura založená na principu dotazů a odpovědí, nelze pro ochranu před útoky využít blokaci této základní funkce. Aby byly DNS servery chráněny, je potřeba rozlišovat relevantní odpovědi od těch škodlivých. To se však dělá velice těžko, protože i odpovědi útočníků mohou vypadat legitimně. Pozornost proto vyžaduje především struktura a četnost odpovědí.

Tyto aspekty analyzuje metoda RRL, která na základě podobnosti shlukuje odpovědi do tříd a omezuje rychlost toku pro konkrétní třídu. Pokud v určitém časovém okně překročí počet příchozích dotazů stanovený limit, pak po nějakou dobu nejsou podobné dotazy zodpovídány. Díky tomu nedochází k zahlcení serveru. Každá implementace RRL se však chová odlišně (blíže se o těchto rozdílech rozdílech dočtete v článku CZ.NIC).

Asi nejznámějším a taky nejstarším způsobem ochrany DNS serverů je DNSSEC (Domain Name System Security Extensions). DNSSEC ověřuje jednotlivé odpovědi pomocí kryptografických klíčů – soukromého a veřejného. Přes tyto klíče dokáže DNS server ověřit, že odpověď na daný dotaz opravdu přichází od správného odesílatele a že během přenosu nedošlo ke změně jejího obsahu.

Při využití DNSSEC je téměř nemožné, aby odpovědi někdo podvrhnul. Skvěle tak poslouží proti výše zmíněnému útoku typu „cache poisoning“, který bývá prvním krokem pro rozsáhlejší DDoS útoky a jim podobné. Přesto se nejedná o stoprocentní ochranu, jelikož provoz není šifrovaný, a tak ho stále může kdokoli sledovat.

Achillovou patou celého procesu za použití DNSSEC je komunikace mezi lokálním DNS serverem a koncovým zařízením (např. mobilním telefonem nebo osobním počítačem), která není ani šifrovaná, ani chráněná. DNSSEC se totiž nehodí pro použití na uživatelském zařízení kvůli výpočetní náročnosti. K ochraně této části spojení slouží jiné mechanismy – DNS over TLS (také DoT) a DNS over HTTPS (DoH).

DNS over TLS je jedním z novějších standardů pro šifrování dotazů mezi klientem a DNS serverem. Dotazy jsou posílány přes protokol UDP (User Datagram Protocol) a díky TLS (Transport Layer Security) je spojení zašifrováno. Při připojení v interní síti vykazuje vysokou úroveň zabezpečení a soukromí.

V podstatě stejnou funkci a úroveň šifrování má také druhý standard, DNS over HTTP, který komunikuje pomocí protokolů HTTP nebo HTTP/2 a používá pro přenos i stejný port jako třeba http(s) weby. Kvůli tomu je ale hůře rozpoznatelný od ostatního provozu založeného na HTTPS.

Využití HTTP však představuje pro mnohé uživatele výhodu. Používá se například i v proxy serverech, různých programovacích jazycích nebo load balancerech a má tedy širší využití. Na rozdíl od DoT ale spolu s DNS dotazy odesílá i metadata identifikující aplikace, což může znamenat potenciální ztrátu soukromí a cestu k zneužití dat.

Jak začít s ochranou DNS?

Bezpečnost DNS rozhodně není jen o DNSSEC. Jedná se o komplexní záležitost a předchozí sekce představuje pouze stručný přehled dostupných variant zabezpečení systému doménových jmen.

Jestli se v problematice DNS příliš neorientujete, je lepší se v tomto ohledu obrátit na odborníky a probrat vhodnou formu ochrany s nimi. V některých sítích může totiž šifrování dotazů představovat spíše nevýhodu. Pro své první kroky k bezpečnějšímu DNS využijte alespoň následující tipy.

1. Proaktivně aktualizujte software

Pravidelné updaty software DNS serveru jsou s ohledem na rostoucí počet útoků na zařízení tohoto typu extrémně důležité.

2. Zajistěte si zálohu DNS

Automatizované zálohování a centrální řešení celého systému umožňuje rychlou obnovu provozu v případě selhání pod náporem DDoS.

3. Pozor na redundanci

S obrovským množstvím IPv4 adres a s nástupem IPv6 se DNS stává nepostradatelnou součástí síťové infrastruktury a webové, mailové i další služby jsou na něm zcela závislé. DNS nativně poskytuje redundanci protokolu, pojistit si ji ale v hardwarové podobě může urychlit proces obnovení.

4. Vypněte rekurzi na autoritativních serverech

Útočníci cílí buď na autoritativní nebo na rekurzivní servery. Díky zapnuté rekurzi na autoritativním serveru zabijí dvě mouchy jednou ranou. Rekurzi proto doporučujeme vypnout pro všechny klienty, kteří se nacházejí mimo síť, kde chcete rekurzivní DNS poskytovat. Pokud rekurzivní dotazování potřebujete využívat, omezte IP adresy a rozsahy, které tyto dotazy mohou odesílat.

Líbil se vám článek? Ano / Ne