Atak DNS Spoofing – jak manipulacja DNS może zagrozić danym użytkownika?
Korzystając z Internetu, większość użytkowników zwraca uwagę przede wszystkim na adres strony, kłódkę HTTPS oraz wygląd witryny. Znacznie rzadziej zastanawiamy się nad tym, w jaki sposób komputer ustalił, z którym serwerem powinien się połączyć.
Za ten proces odpowiada między innymi DNS, czyli Domain Name System.
Jeżeli informacje DNS zostaną zmanipulowane, użytkownik może zostać skierowany do innego serwera niż ten, którego oczekiwał. Właśnie dlatego Atak DNS Spoofing jest istotnym zagrożeniem z punktu widzenia bezpieczeństwa użytkowników i administratorów.
DNS jako cyfrowa książka adresowa
DNS można w uproszczeniu porównać do książki adresowej Internetu.
Użytkownik wpisuje:
bank.example
System musi ustalić, jaki adres IP odpowiada tej nazwie.
W typowym scenariuszu wygląda to tak:
nazwa domeny → resolver DNS → adres IP → serwer
Dopiero po uzyskaniu adresu IP aplikacja może rozpocząć właściwą komunikację.
Jeżeli odpowiedź DNS zostanie zmieniona, zmienia się również miejsce, do którego urządzenie próbuje nawiązać połączenie.
Co może oznaczać manipulacja DNS?
Najbardziej niebezpieczny scenariusz pojawia się wtedy, gdy użytkownik zostaje przekierowany do infrastruktury kontrolowanej przez cyberprzestępcę.
Może to być między innymi:
fałszywa strona logowania,
strona phishingowa,
serwer dystrybuujący malware,
serwer pośredniczący w dalszym ataku,
infrastruktura wykorzystywana do kradzieży informacji.
Szczególnie istotny jest fakt, że użytkownik nie musi kliknąć podejrzanego linku.
Może samodzielnie wpisać prawidłową nazwę domeny, a mimo tego otrzymać niewłaściwy adres IP.
Czy atakujący może przejąć hasło?
Sam DNS Spoofing nie oznacza automatycznie przejęcia hasła.
Atakujący musi jeszcze doprowadzić do tego, aby użytkownik przekazał dane lub aby możliwe było przeprowadzenie kolejnego etapu ataku.
Przykładowo może powstać fałszywa strona logowania przypominająca oryginalną.
Użytkownik wpisuje login i hasło, a dane trafiają do atakującego.
Dlatego DNS Spoofing może być elementem większego łańcucha ataku phishingowego.
Rola HTTPS
HTTPS jest bardzo ważną warstwą ochrony.
Przeglądarka podczas nawiązywania bezpiecznego połączenia sprawdza certyfikat serwera.
Jeżeli użytkownik zostanie przekierowany na fałszywy serwer, atakujący zazwyczaj nie będzie posiadał prawidłowego certyfikatu dla zaatakowanej domeny.
Przeglądarka może wtedy wyświetlić ostrzeżenie.
To jeden z powodów, dla których nie należy ignorować komunikatów dotyczących bezpieczeństwa połączenia.
Ważna zasada
Jeżeli przeglądarka informuje o problemie z certyfikatem podczas logowania do banku, poczty, panelu administracyjnego lub innej ważnej usługi, nie powinno się bezrefleksyjnie kontynuować połączenia.
Ostrzeżenie może mieć wiele przyczyn, ale zawsze wymaga wyjaśnienia.
DNS Cache Poisoning
Jednym ze scenariuszy związanych z DNS Spoofing jest DNS Cache Poisoning.
Resolver DNS przechowuje odpowiedzi w pamięci podręcznej, dzięki czemu nie musi za każdym razem wykonywać pełnego procesu rozwiązywania domeny.
Jeżeli do cache trafi fałszywa informacja, kolejne zapytania mogą zwracać niewłaściwy adres.
Skala problemu zależy od tego, gdzie nastąpiła manipulacja.
Jeżeli dotyczy pojedynczego urządzenia, skutki mogą być lokalne.
Jeżeli problem dotyczy wspólnego resolvera, może potencjalnie wpłynąć na znacznie większą grupę użytkowników.
Szersze omówienie DNS Spoofing, DNS Cache Poisoning oraz innych metod atakowania systemu nazw domen znajduje się w artykule Ataki na DNS – jak cyberprzestępcy manipulują systemem nazw domen.
DNS Hijacking to nie to samo
Warto rozróżnić kilka podobnych pojęć.
DNS Spoofing odnosi się do dostarczania fałszywych informacji DNS.
DNS Cache Poisoning dotyczy między innymi wprowadzania fałszywych danych do pamięci podręcznej resolvera.
DNS Hijacking może natomiast polegać na przejęciu kontroli nad konfiguracją DNS.
Przykładowo atakujący może zmienić ustawienia routera i spowodować, że urządzenia w sieci zaczną korzystać z innego resolvera.
Dla użytkownika końcowy efekt może być podobny — ruch zaczyna być rozwiązywany przez infrastrukturę, której nie powinien używać.
Dlaczego DNSSEC jest ważny?
DNSSEC został zaprojektowany właśnie po to, aby umożliwić kryptograficzną weryfikację danych DNS.
Mechanizm wykorzystuje podpisy kryptograficzne oraz łańcuch zaufania.
Resolver wykonujący walidację może sprawdzić, czy otrzymane dane są zgodne z podpisanymi informacjami.
Jeżeli walidacja się nie powiedzie, odpowiedź może zostać odrzucona.
DNSSEC nie zapewnia poufności zapytań DNS. Jego głównym zadaniem jest ochrona integralności i autentyczności danych DNS.
DNS Spoofing a bankowość internetowa
Bankowość jest dobrym przykładem tego, dlaczego bezpieczeństwo DNS ma znaczenie.
Użytkownik może:
wpisać prawidłowy adres banku,
wysłać zapytanie DNS,
otrzymać zmanipulowany adres IP,
zostać skierowany do innego serwera.
Jeżeli kolejne mechanizmy bezpieczeństwa zadziałają prawidłowo, fałszywy serwer powinien zostać wykryty między innymi przez problem z certyfikatem TLS.
Jeżeli jednak użytkownik zignoruje ostrzeżenie albo atak wykorzystuje dodatkowe techniki, zagrożenie może stać się poważniejsze.
Dlatego bezpieczeństwo DNS, TLS i urządzenia końcowego powinno być traktowane jako jeden system ochrony.
Jak użytkownik może się chronić?
Podstawowe zasady są proste.
Nie ignoruj ostrzeżeń HTTPS
Jeżeli przeglądarka zgłasza problem z certyfikatem, nie należy traktować go jako zwykłego komunikatu technicznego.
Zabezpiecz router
Router powinien mieć aktualne oprogramowanie i silne hasło administratora.
Korzystaj z bezpiecznych usług DNS
Warto wiedzieć, jaki resolver jest wykorzystywany przez urządzenie i skąd pochodzi jego konfiguracja.
Stosuj MFA
Nawet jeżeli hasło zostanie przejęte, dodatkowy czynnik uwierzytelniania może ograniczyć możliwość przejęcia konta.
Aktualizuj system
DNS Spoofing może być jednym z elementów większego ataku. Aktualny system i przeglądarka ograniczają ryzyko wykorzystania innych podatności.
Co powinien robić administrator?
W środowisku firmowym zakres ochrony jest znacznie większy.
Administrator powinien monitorować:
konfigurację resolverów,
zmiany rekordów DNS,
adresy serwerów DNS,
logi zapytań,
nietypowe wzorce ruchu,
konfigurację routerów,
serwery DHCP,
konta administracyjne.
Warto również wdrożyć DNSSEC tam, gdzie jest to odpowiednie, oraz kontrolować mechanizmy aktualizacji i zarządzania kluczami.
DNS może również pomagać w wykrywaniu ataków
DNS nie musi być wyłącznie celem ataku.
Zapytania DNS mogą dostarczać informacji przydatnych do wykrywania incydentów.
Nietypowe zapytania mogą wskazywać między innymi na:
malware,
komunikację z serwerem C2,
DNS tunneling,
podejrzane domeny,
nietypowe zachowanie urządzeń.
Dlatego monitoring DNS może być elementem większego systemu bezpieczeństwa.
Najważniejsze wnioski
DNS jest jednym z fundamentów działania Internetu, dlatego jego bezpieczeństwo ma bezpośrednie znaczenie dla użytkowników.
Atak DNS Spoofing może zostać wykorzystany do przekierowania użytkownika na niewłaściwy serwer i stać się elementem większego ataku.
Nie oznacza to jednak, że każdy taki atak prowadzi automatycznie do kradzieży danych. DNSSEC, TLS, bezpieczna konfiguracja infrastruktury, MFA oraz monitoring tworzą kolejne warstwy ochrony.
Najważniejsze jest więc nie traktowanie DNS jako niewidocznego mechanizmu działającego gdzieś w tle, ale jako jednego z krytycznych elementów bezpieczeństwa całej infrastruktury IT.