DNS spoofing je útok, ktorý presmeruje používateľov na falošnú stránku namiesto webovej stránky, ku ktorej sa pokúšajú získať prístup. Využíva zraniteľnosť v protokole UDP a na zabránenie mu vyžaduje bezpečnostné opatrenia, ako napríklad DNSSEC (Domain Name System Security Extension).
Spoofing systému názvov domén (DNS) je prax, ktorá presmeruje používateľov internetu na falošnú stránku, keď sa pokúšajú o prístup na stránku. To sa dosahuje prekladom názvov domén na IP adresy.
Aby sa počítače pripojené k internetu mohli navzájom identifikovať a komunikovať, každý počítač musí mať jedinečnú IP adresu, ktorá je vytvorená podľa internetového protokolu (IP). Protokoly sú komunikačné konvencie, ktoré počítače používajú na vzájomné prepojenie a odosielanie údajov a sú implementované v softvéri alebo hardvéri. Najbežnejšie používané IP adresy sú dnes reprezentované číslami v štyroch poliach oddelených bodkami, napríklad „***.126.63.1“. Táto adresa by sa nemala duplikovať ani náhodne triediť a mala by jej byť priradená verejná IP adresa.
Existujú dva typy verejných IP adries: statické IP adresy, ktoré konzistentne používajú rovnaké číslo, a dynamické IP adresy, ktoré je možné prečíslovať. Dynamické IP adresy sú prideľované protokolom nazývaným DHCP. DHCP prijíma požiadavky od počítačov, ktoré potrebujú IP adresu, a priraďuje im ju. Keď počítač prestane IP adresu používať, adresa sa vráti, aby ju mohol použiť iný počítač. Na druhej strane existujú aj súkromné IP adresy, ktoré nie sú priamo prístupné na internete a identifikujú sa iba v interných sieťach.
Internet funguje na základe verejných IP adries, ale keď používame internet, používame namiesto IP adries názvy domén, ktoré sa kvôli jednoduchšiemu používaniu skladajú zo znakov ako „www.“. Na preklad názvov domén na IP adresy potrebujeme DNS a zariadenia, ktoré prevádzkujú DNS, sa nazývajú nameservery. Váš počítač musí mať zaznamenanú IP adresu nameservera a zatiaľ čo počítač s dynamickou IP adresou bude mať IP adresu nameservera automaticky zaznamenanú, keď dostane IP adresu, počítač so statickou IP adresou bude musieť mať IP adresu nameservera manuálne zaznamenanú používateľom. Poskytovatelia internetových služieb prevádzkujú nameservery, ktoré zdieľajú ich predplatitelia.
DNS je základnou súčasťou internetovej komunikácie a rýchly a presný preklad doménových mien má významný vplyv na používateľskú skúsenosť na internete. Výkon a bezpečnosť DNS sú obzvlášť dôležité pre stránky a firmy, ktoré spracovávajú veľké množstvo prevádzky. Ak server DNS zlyhá alebo je napadnutý hackermi, môže to spôsobiť masívny výpadok služby. Napríklad útok Dyn DNS v roku 2016 spôsobil chaos a zničil mnoho významných webových stránok.
Pozrime sa na to, ako sa používateľ bežne pripája k stránke. Počítač, ktorý sa pokúša získať prístup k webovej stránke, sa nazýva klient. Keď používateľ zadá názov domény stránky, ktorú chce navštíviť, do adresného riadka (alebo ju vyhľadá na portálovej stránke a klikne na ňu), klient odošle paket s dotazom na zaznamenané nameservery so žiadosťou o IP adresu zodpovedajúcu názvu domény. Ak je IP adresa v zozname, nameserver odošle paket s odpoveďou, ktorý klientovi oznámi IP adresu. Paket s odpoveďou označuje, na ktorý paket s dotazom odpovedá. Ak IP adresa nie je uvedená, nameserver odošle paket s odpoveďou, ktorý klientovi oznámi IP adresu iného nameservera, a klient sa vráti k odoslaniu paketu s dotazom na tento nameserver a proces zopakuje. Klient použije IP adresu na nájdenie stránky. Nameservery a klienti posielajú pakety tam a späť pomocou protokolu nazývaného UDP. Aby sa zabezpečilo rýchle odosielanie paketov, UDP odosiela pakety iba druhej strane a nekontroluje príchod; Dôveruje prvému paketu odpovede, ktorý príde pre konkrétny paket dotazu, a ďalší paket zahodí bez kontroly. DNS spoofing využíva tieto diery v UDP.
Pozrime sa, ako funguje DNS spoofing. Počítač infikovaný škodlivým kódom, ktorý vykonáva DNS spoofing, sa nazýva útočník. Keď klient odošle paket s dotazom na nameserver so žiadosťou o konkrétnu IP adresu, paket je preposlaný útočníkovi, ktorý odošle klientovi paket s odpoveďou s IP adresou falošnej stránky. Paket s odpoveďou od útočníka dorazí ku klientovi pred paketom s odpoveďou od nameservera a klient rozpozná paket s odpoveďou od útočníka ako správny paket a je presmerovaný na falošnú stránku.
Preto je dôležité prijať bezpečnostné opatrenia, ako napríklad DNSSEC (Domain Name System Security Extension), aby sa zabránilo útokom typu DNS spoofing. DNSSEC overuje integritu a pôvod údajov DNS, čo umožňuje klientom overiť si dôveryhodnosť údajov, ktoré prijímajú. Správcovia siete by mali tiež pravidelne monitorovať servery DNS a zisťovať anomálnu aktivitu, aby mohli okamžite reagovať. Je tiež dôležité, aby koncoví používatelia dodržiavali základné bezpečnostné postupy, ako je používanie dôveryhodného bezpečnostného softvéru a nenavštevovanie podozrivých webových stránok.