jak działa DNS

[Droga Bezpiecznika] Jak działa DNS i jak go chronić – #3

Zastanawiałeś się kiedyś, jak działa internet? A jeszcze lepiej: jak internet nie działa? Ostatnia awaria AWS-a dość mocno to zobrazowała. Jeżeli przestanie działać Zoom albo Slack, to jeszcze jakoś sobie poradzimy. Ale gdy przestaje działać strona Poczty Polskiej, to jak ci biedni ludzie wyślą nam awizo? To już są realne problemy, a najczęściej stoi za nimi DNS. Czasem też routing, ale o tym opowiem w osobnym materiale.

W tym materiale patrzymy na DNS z dwóch perspektyw. Pierwsza to strona sieciowca i zwykłego użytkownika: gdzie DNS jest ustawiony, jak go zmienić i jak w ogóle działa. Druga to strona bezpiecznika: co można na DNS-ie zaatakować i co da się z tym zrobić, zarówno w firmie, jak i w domu.

Gdzie sprawdzić, jakiego DNS używasz

Zacznijmy od strony łatwiejszej, czyli od tego, gdzie i w jaki sposób DNS jest skonfigurowany.
Jeżeli używasz Windowsa, adresy serwerów DNS znajdziesz we właściwościach karty sieciowej. Jeśli nie ma tam wpisanych żadnych adresów, to znaczy, że są pobierane automatycznie z serwera DHCP, czyli z urządzenia, które rozdaje w sieci ustawienia (najczęściej z Twojego routera). Mam nadzieję, że wiesz już, co to jest DHCP. Jeśli nie, sprawdź poprzedni materiał z wcześniejszego posta.
Najprościej podejrzeć aktualnie używany DNS w stanie połączenia sieciowego, w szczegółach połączenia. Znajdziesz tam adres serwera, z którego faktycznie korzysta Twój komputer.

jak działa DNS

Jak zmienić DNS

Jeżeli ten DNS Ci nie pasuje, możesz go zmienić na dowolny inny. Masz dwie drogi:

Gdzie zmieniasz Czego dotyczy zmiana Kiedy to wybrać
Właściwości karty sieciowej (przewodowej lub bezprzewodowej) na komputerze Tylko to jedno urządzenie Chcesz przetestować DNS u siebie, bez ruszania reszty domu
Ustawienia na routerze Wszystkie urządzenia w sieci domowej Chcesz, żeby nowy DNS obowiązywał całą rodzinę

Dlaczego wybór DNS ma znaczenie

Ponieważ są serwery DNS, które znacząco wpływają na Twoje bezpieczeństwo w sieci. Przykładowo, jeżeli użyjesz DNS-ów Cloudflare w wersji filtrującej, strony rozpoznane jako malware (złośliwe oprogramowanie) czy phishing zostaną zablokowane automatycznie. Jest też wariant, który blokuje dodatkowo treści dla dorosłych. Ustawisz taki DNS dziecku i na strony pornograficzne po prostu nie wejdzie.

Adres Kto dostarcza Co robi
1.1.1.1 Cloudflare Zwykły, niefiltrujący
1.1.1.2 Cloudflare Blokuje malware i phishing
1.1.1.3 Cloudflare Blokuje malware, phishing i treści dla dorosłych
8.8.8.8 Google Zwykły, niefiltrujący

Takich DNS-ów jest bardzo dużo. Sporo firm oferuje gotowe prekonfiguracje z wykluczonymi kategoriami: hazard, treści dla dorosłych i inne. Od Ciebie zależy, który wybierzesz.

Jest jeszcze jeden efekt uboczny. Bardzo dużo stron jest hostowanych na Cloudflare, więc po wpisaniu DNS-ów Cloudflare może Ci się wydawać, że część stron ładuje się szybciej. One są już w cache (podręcznej pamięci serwera), więc odpowiedź przychodzi błyskawicznie. Potrafi to wyglądać na znaczącą poprawę szybkości internetu.

Jak działa DNS, czyli książka telefoniczna internetu

Skoro wiesz już, jaki masz DNS i jak z niego skorzystać, zobaczmy, jak ta usługa w ogóle działa.

DNS możesz traktować jak dużą książkę telefoniczną. W swojej książce telefonicznej też nie pamiętasz wszystkich numerów. Dodajesz numer i podpisujesz go nazwą, którą łatwo Ci zapamiętać. Tak samo działa DNS.

Sieci komputerowe rozmawiają ze sobą na podstawie adresów IP. Czy to router, czy serwer, komunikacja odbywa się adres IP do adresu IP. Gdybyś miał zapamiętać adres IP strony, którą często odwiedzasz, typu Facebook czy WP, byłoby to mocno niewygodne. Nikt nie chciałby wpisywać w kółko adresów IP, bo one po prostu nie nadają się do zapamiętania.

Krok po kroku: co się dzieje po wpisaniu adresu

Załóżmy, że chcesz wejść na najlepszego bloga w polskim internecie, czyli grzegorzkowalik.com. Wpisujesz adres w przeglądarkę i:

  1. Najpierw cache Twojej przeglądarki i systemu sprawdza, czy zna już adres IP tej strony.
  2. Jeśli nie zna, zapytanie idzie do serwera DNS, który wcześniej wskazałeś, na przykład do Cloudflare.
  3. Jeśli ten serwer też nie wie, gdzie ten adres się znajduje, zapytanie wędruje dalej. Nie jest bowiem tak, że jeden serwer Google czy Cloudflare trzyma bazę wszystkich stron w internecie. W DNS-ach panuje hierarchia: jeżeli jeden serwer nie ma informacji, przekierowuje zapytanie do kolejnych, aż w końcu wróci prawidłowa odpowiedź z adresem IP.

Perspektywa bezpiecznika: co można zaatakować

Tu też trzeba zrobić podział na dwie części. Inaczej wygląda sprawa, gdy pracujesz dla organizacji i chronisz firmowy DNS wewnętrzny, a inaczej, gdy jesteś zwykłym użytkownikiem i chcesz zabezpieczyć się w domu.

DNS spoofing i cache poisoning

Jeden z najczęstszych ataków na DNS to DNS spoofing, czyli podszywanie się pod serwer DNS, oraz cache poisoning, czyli zatruwanie jego pamięci podręcznej. W praktyce cyberprzestępca próbuje przechwytywać Twoje zapytania DNS i przekierowywać je na inne adresy.

Wspominałem o tym już w poprzednim materiale: to bardzo niebezpieczne. Wpisujesz w pasku adresu poprawny FQDN (pełną nazwę domenową), na przykład portal.office.com, żeby zalogować się na konto służbowe, a fałszywy DNS przekierowuje Cię na całkowicie inną stronę. Będzie łudząco podobna do oryginału, ale będzie fałszywa. Dla użytkownika cała podmiana jest praktycznie przezroczysta.

Każdy serwer DNS ma swój wbudowany cache, w którym przechowuje nazwy stron i przypisane im adresy IP. Cyberprzestępca może próbować ten cache "zatruć", podmieniając adresy IP dla znanych mu stron. Skutek jest ten sam: użytkownik wpisuje poprawny adres, a trafia gdzie indziej.

DNS tunneling

Kolejne zagrożenie to DNS tunneling, czyli próba wyprowadzenia informacji z firmy przez zapytania DNS. Wygląda to najczęściej tak, że w ruchu pojawiają się losowe, dość długie nazwy, a dane są wynoszone przez rekordy DNS. O samych rekordach DNS opowiem w następnym materiale, bo wszystko w jednym byłoby za długie.

Jak się przed tym chronić

Ochrona samego DNS-a jest skomplikowana i zależy od tego, jaki to DNS.

DNSSEC, ale nie wszędzie

Jeżeli DNS jest wystawiony publicznie i hostujesz go gdzieś na zewnątrz, warto włączyć DNSSEC. Każdy rekord jest wtedy podpisywany cyfrowo, więc odbiorca może sprawdzić, że odpowiedź nie została po drodze podmieniona.

Jeżeli natomiast DNS działa wewnątrz organizacji, na przykład jako część Active Directory (usługi katalogowej Microsoftu, w której zarejestrowane są komputery i konta), włączanie DNSSEC nie ma większego sensu. W AD dużo rzeczy dzieje się dynamicznie: komputery rejestrują się w DNS-ie i dostają rekordy automatycznie. Każdy taki rekord musiałby być podpisywany, co potrafi utrudnić pracę, zapętlić niektóre rzeczy albo je ograniczyć, zamiast realnie poprawić bezpieczeństwo. Wewnątrz organizacji, przy lokalnym AD i lokalnym DNS-ie, ja bym DNSSEC w tym przypadku nie stosował.

W domu: DoH i DoT

Jeżeli jesteś zwykłym użytkownikiem domowym i chcesz podnieść swoje bezpieczeństwo, zastosuj DoH (DNS over HTTPS) albo DoT (DNS over TLS). Trzeba sprawdzić, czy dany serwer DNS to wspiera, ale tacy dostawcy jak Google czy Cloudflare już to obsługują i wdrożysz to bez problemu.

Co Ci to daje? Twoje zapytania DNS są szyfrowane. Standardowo DNS działa na porcie UDP 53 i idzie otwartym tekstem. Jeżeli korzystasz z DNS-a swojego operatora, to operator widzi adresy, które wpisujesz w przeglądarkę. I tryb incognito tu nie pomoże, bo on nie ukrywa zapytań DNS.

Dlatego od strony domowej najlepiej włączyć DoH albo DoT na routerze. To już trochę zabezpieczy Twoje zapytania DNS.

W firmie: analiza i twardsze ustawienia

Jeżeli jesteś bezpiecznikiem w korporacji, masz trochę więcej narzędzi. Dane z zapytań DNS pewnie i tak trafiają do SIEM-u (systemu zbierającego logi z całej infrastruktury), więc możesz je analizować.

Nie ma raczej uniwersalnego narzędzia, które ładnie zabezpieczy Cię przed spoofingiem czy cache poisoningiem, bo to dalej będą prawdziwe zapytania DNS, tylko przekierowane na fałszywe strony. Przed tym aż tak mocno zabezpieczyć się nie można.

Można za to lepiej zabezpieczyć sam kontroler domeny:

  • Wyłącz transfer stref. Jeżeli cyberprzestępca wytransferuje sobie strefę, będzie miał całą strukturę Twojego DNS-a, a za tym praktycznie wszystkie adresy IP i serwery w sieci.
  • Wdróż ACL na dodawanie rekordów do stref, tak aby nie każdy administrator i nie każdy użytkownik mógł tworzyć rekordy w Twoim DNS-ie.

Podsumowanie

  • DNS to książka telefoniczna internetu: zamienia nazwy stron na adresy IP, żebyś nie musiał pamiętać cyfr.
  • Serwer DNS sprawdzisz i zmienisz we właściwościach karty sieciowej, a dla całego domu na routerze.
  • Filtrujące DNS-y, jak 1.1.1.2 czy 1.1.1.3 od Cloudflare, blokują złośliwe strony i treści dla dorosłych bez instalowania czegokolwiek.
  • Najgroźniejsze na DNS-ie są spoofing i cache poisoning: wpisujesz poprawny adres, a trafiasz na fałszywą stronę.
  • DNSSEC ma sens dla DNS-a publicznego, a nie dla lokalnego AD. W domu włącz DoH lub DoT, bo tryb incognito nie ukrywa zapytań DNS przed operatorem.

Materiał Video

Comments

No comments yet. Why don’t you start the discussion?

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *