DNS Filtering – filtrowanie DNS jako warstwa bezpieczeństwa
Sieci komputerowe

DNS Filtering – filtrowanie DNS jako warstwa bezpieczeństwa

DNS Filtering – filtrowanie DNS jako warstwa bezpieczeństwa

DNS Filtering to mechanizm bezpieczeństwa polegający na kontrolowaniu zapytań DNS i blokowaniu domen uznanych za złośliwe, niebezpieczne albo niepożądane.

To jedna z prostszych, a jednocześnie bardzo skutecznych warstw ochrony, ponieważ praktycznie każda komunikacja z usługą internetową zaczyna się od rozwiązania nazwy domenowej.


Jak działa DNS Filtering?

Normalnie komputer wykonuje:

Komputer
   |
   | DNS: example.com?
   v
DNS Resolver
   |
   v
IP address

Przy filtrowaniu DNS pojawia się dodatkowy etap:

Komputer
   |
   | DNS query
   v
DNS Filtering
   |
   +---- BLOCK
   |
   +---- ALLOW
   |
   v
DNS Resolver

Jeżeli domena znajduje się na liście zagrożeń, odpowiedź może zostać zablokowana.


Przykład

Załóżmy, że użytkownik kliknął link prowadzący do:

malicious-example.com

Komputer próbuje wykonać:

DNS query
       |
       v
malicious-example.com

System DNS Filtering sprawdza domenę:

Domain Reputation
       |
       v
MALICIOUS
       |
       v
BLOCK

Połączenie do serwera może dzięki temu nie zostać nawet rozpoczęte.


Dlaczego DNS jest dobrym miejscem do ochrony?

DNS znajduje się bardzo wcześnie w procesie komunikacji.

Schemat:

User
 |
 v
Domain
 |
 v
DNS
 |
 v
IP
 |
 v
Connection

Jeżeli zablokujemy domenę na poziomie DNS:

Domain
 |
 v
DNS Filter
 |
 X
BLOCK

nie trzeba czekać na analizę całego ruchu aplikacyjnego.


Co można blokować?

DNS Filtering może wykorzystywać kategorie.

Przykładowo:

Malware
Phishing
C2
Botnets
Spam
Cryptomining
Tracking
Advertising
Adult
Gambling

W środowisku firmowym można więc stworzyć politykę:

Corporate DNS

ALLOW
Business
Cloud
Security
Development

BLOCK
Malware
Phishing
C2
Cryptomining

DNS Filtering a malware

To jeden z najważniejszych przypadków użycia.

Zainfekowany komputer może próbować znaleźć serwer C2:

Malware
   |
   | DNS query
   v
evil-c2.example
   |
   v
DNS Filter
   |
   X
BLOCK

Malware może wtedy nie być w stanie rozwiązać domeny C2.


DNS Filtering a phishing

Podobnie można blokować znane domeny phishingowe:

User
 |
 v
Phishing Link
 |
 v
DNS
 |
 v
Threat Intelligence
 |
 X
BLOCK

Użytkownik może otrzymać stronę blokującą zamiast strony atakującego.


DNS Sinkhole

Jedną z ciekawszych technik jest DNS Sinkhole.

Zamiast zwracać prawdziwy adres:

malicious.example
        |
        v
203.0.113.50

DNS zwraca kontrolowany adres:

malicious.example
        |
        v
10.10.10.10

Schemat:

Compromised Host
       |
       | DNS
       v
   DNS Sinkhole
       |
       v
Internal Server

Dzięki temu administrator może również wykrywać zainfekowane urządzenia.


Sinkhole jako mechanizm detekcji

To bardzo interesujący przypadek.

Jeżeli komputer próbuje rozwiązać domenę należącą do botnetu:

PC-25
  |
  v
malware-c2.example
  |
  v
DNS Sinkhole

można wygenerować alert:

ALERT:
PC-25 contacted known C2 domain

DNS staje się więc nie tylko filtrem, ale również źródłem informacji dla SOC.


DNS Filtering + SIEM

Dane DNS można przesyłać do SIEM:

Clients
   |
   v
DNS Resolver
   |
   v
DNS Filtering
   |
   v
SIEM

Przykładowe dane:

Timestamp
Client IP
Domain
Category
Action
Threat Intelligence

Dzięki temu analityk może zobaczyć:

192.168.10.25
       |
       +--> suspicious-domain.com
       |
       +--> malware-domain.net
       |
       +--> c2-example.org

DNS Filtering + Zeek

To dobrze łączy się z poprzednim tematem.

Zeek może monitorować DNS:

Network Traffic
       |
       v
      Zeek
       |
       v
    dns.log

DNS Filtering może natomiast blokować domeny.

Razem:

              DNS
               |
       +-------+-------+
       |               |
   DNS Filter         Zeek
       |               |
     BLOCK             LOG
       |               |
       +-------+-------+
               |
              SIEM

DNS Filtering + Suricata

Jeszcze ciekawsza jest kombinacja:

DNS Filtering
      |
      v
Domain Blocking
      |
      v
Suricata
      |
      v
Network Detection

DNS zatrzymuje część zagrożeń na początku, a IPS analizuje ruch, który przejdzie dalej.


DNS Filtering + Firewall

Przykładowa architektura:

Client
  |
  v
Firewall
  |
  v
DNS Filtering
  |
  v
Internet

Firewall może dodatkowo wymusić korzystanie z firmowego resolvera.

Przykładowo:

LAN
 |
 +--> DNS Server → ALLOW
 |
 +--> External DNS → BLOCK

To ważne, ponieważ użytkownik może próbować ominąć filtr:

PC
 |
 +--> Corporate DNS
 |
 +--> 8.8.8.8
 |
 +--> 1.1.1.1

Jeżeli firewall pozwala na dowolny DNS, filtrowanie może być łatwo obchodzone.


DNS over HTTPS

Pojawia się tutaj kolejny problem: DoH (DNS over HTTPS).

Klasyczny DNS:

Client
 |
 | DNS
 v
Resolver

DoH:

Client
 |
 | HTTPS
 v
DoH Server

DNS jest wtedy transportowany przez HTTPS.

Jeżeli organizacja chce wymuszać własne DNS Filtering, musi odpowiednio kontrolować DoH.


DNS over TLS

Podobnie działa DoT (DNS over TLS):

Client
 |
 | TLS
 v
DNS Resolver

Z punktu widzenia klasycznego filtrowania DNS pojawia się dodatkowa warstwa szyfrowania.


Jak ograniczyć obchodzenie DNS Filtering?

Jedna z podstawowych strategii:

LAN
 |
 v
Firewall
 |
 +---- UDP/53 → Corporate DNS
 +---- TCP/53 → Corporate DNS
 +---- DoH/DoT → Policy
 |
 v
Internet

Nie należy jednak opierać całej polityki wyłącznie na blokowaniu pojedynczych adresów publicznych resolverów, ponieważ mechanizmy DoH mogą zmieniać się i korzystać z różnych infrastruktur.


DNS Filtering a HTTPS

DNS Filtering nie odszyfrowuje HTTPS.

Przykład:

DNS:
example.com → 93.184.216.34

Filtr wie, że użytkownik chce połączyć się z określoną domeną.

Ale po rozpoczęciu HTTPS:

Client
 |
 | encrypted HTTPS
 v
Server

zawartość pozostaje szyfrowana.

Dlatego DNS Filtering świetnie uzupełnia TLS Inspection, ale go nie zastępuje.


DNS Filtering + TLS Inspection

Bardzo dobra kombinacja:

                   INTERNET
                       |
                       v
                DNS Filtering
                       |
                       v
                 TLS Inspection
                       |
              +--------+--------+
              |                 |
             IPS               DLP
              |                 |
              +--------+--------+
                       |
                       v
                    Network

DNS może zablokować domenę, a TLS Inspection umożliwić głębszą analizę ruchu, który został dopuszczony.

 

DNS Filtering – filtrowanie DNS jako warstwa bezpieczeństwa
DNS Filtering – filtrowanie DNS jako warstwa bezpieczeństwa

DNS Filtering a malware wykorzystujący IP

Tu pojawia się ograniczenie.

Jeżeli malware nie używa domeny:

Malware
 |
 | HTTPS
 v
198.51.100.20

DNS Filtering może nie mieć czego zablokować.

Dlatego potrzebne są również:

  • firewall,
  • IP reputation,
  • IDS/IPS,
  • EDR,
  • threat intelligence.

DNS Filtering nie jest pełnym IDS

DNS Filtering może powiedzieć:

malicious-domain.com → BLOCK

Ale nie analizuje całej komunikacji tak jak IDS/NSM.

Dlatego:

DNS Filtering
      |
Domain-level protection

natomiast:

Zeek
      |
Network-level visibility

i:

Suricata
      |
Network detection / prevention

DNS Filtering dla firmy

Przykładowa architektura:

                     INTERNET
                        |
                        v
                    Firewall
                        |
              +---------+---------+
              |                   |
          DNS Filter           Web Traffic
              |                   |
              |               TLS Inspection
              |                   |
              +---------+---------+
                        |
                    Suricata
                        |
                       LAN
                        |
               +--------+--------+
               |        |        |
              PC      Server     WiFi

Do tego:

                SIEM
                 ^
                 |
        +--------+--------+
        |        |        |
       DNS      Zeek    Suricata

DNS Filtering w domu

Mechanizm można wykorzystać również w małej sieci.

Przykład:

Internet
   |
Router
   |
DNS Filtering
   |
LAN
 +---+---+---+
 PC  TV  IoT

Można blokować:

  • malware,
  • phishing,
  • reklamy,
  • trackery,
  • wybrane kategorie stron.

Jest to szczególnie interesujące w sieciach z dużą liczbą urządzeń IoT.


DNS Filtering i IoT

Urządzenia IoT często mają ograniczone możliwości zabezpieczenia.

Przykład:

IoT Camera
    |
    | DNS
    v
DNS Filter
    |
    +---- Known C2 → BLOCK

To może być dodatkową warstwą ochrony urządzenia, którego firmware nie pozwala na instalację EDR.


Najczęstsze błędy

❌ Pozwalanie klientom na dowolny DNS

Użytkownik może ominąć filtr.

❌ Brak kontroli DoH/DoT

Szyfrowane mechanizmy DNS mogą ominąć klasyczny resolver.

❌ Poleganie wyłącznie na DNS

Atakujący może korzystać bezpośrednio z IP.

❌ Brak aktualizacji threat intelligence

Lista domen szybko się zmienia.

❌ Brak logowania

Bez logów trudno prowadzić threat hunting.


Najlepsze praktyki

1. Centralny resolver

Clients
   |
   v
Corporate DNS

2. Blokowanie złośliwych kategorii

Malware
Phishing
C2
Botnet

3. Kontrola DNS wychodzącego

LAN → Corporate DNS → ALLOW

LAN → External DNS → BLOCK / CONTROL

4. Monitoring

DNS Logs → SIEM

5. Integracja z threat intelligence

Aktualne informacje o:

  • malware,
  • phishingu,
  • C2,
  • botnetach.

DNS Filtering w modelu Zero Trust

DNS może być jednym z sygnałów bezpieczeństwa:

User
 |
Device
 |
DNS Request
 |
Risk Evaluation
 |
Policy
 |
Application

Przykładowo urządzenie, które regularnie pyta o domeny C2, może zostać oznaczone jako potencjalnie zagrożone.


DNS Filtering – najważniejsze ograniczenia

Trzeba pamiętać:

DNS Filtering nie zatrzyma wszystkiego.

Nie pomoże w pełni, gdy:

Malware
 |
 +--> Direct IP
 |
 +--> Hardcoded IP
 |
 +--> Compromised legitimate domain
 |
 +--> Encrypted DNS bypass

Dlatego powinien być elementem Defense in Depth.


Kompletny model

Jeżeli połączymy wszystkie omawiane wcześniej technologie:

                         INTERNET
                            |
                         Firewall
                            |
              +-------------+-------------+
              |                           |
         GeoIP / Reputation          DNS Filtering
              |                           |
              +-------------+-------------+
                            |
                     TLS Inspection
                            |
              +-------------+-------------+
              |             |             |
           Suricata        Zeek           DLP
              |             |             |
              +-------------+-------------+
                            |
                           LAN
                            |
                           EDR
                            |
                           SIEM
                            |
                           SOC

Każda warstwa rozwiązuje trochę inny problem.


Podsumowanie

DNS Filtering jest prostą, ale bardzo wartościową warstwą bezpieczeństwa.

Jego największe zalety to:

  • blokowanie domen malware,
  • ochrona przed phishingiem,
  • ograniczanie C2,
  • możliwość stosowania polityk kategorii,
  • szybka reakcja,
  • niewielki koszt infrastrukturalny,
  • możliwość centralnego logowania,
  • dobra integracja z SIEM.

Najważniejsze jest jednak to:

DNS Filtering nie powinien być traktowany jako samodzielna ochrona.

Najlepszy efekt daje połączenie:

DNS Filtering
      +
Firewall
      +
IDS/IPS
      +
Zeek
      +
TLS Inspection
      +
EDR
      +
SIEM

Wtedy DNS staje się pierwszą warstwą kontroli, a pozostałe mechanizmy mogą wykrywać i zatrzymywać zagrożenia, które przejdą przez tę pierwszą barierę.

Polecane wpisy
Konfiguracja MikroTik – Część 33: Routing dynamiczny OSPF – od podstaw do praktyki
Konfiguracja MikroTik – Część 33: Routing dynamiczny OSPF – od podstaw do praktyki

Konfiguracja MikroTik – Część 33: Routing dynamiczny OSPF – od podstaw do praktyki W miarę rozrastania się infrastruktury sieciowej pojawia Czytaj dalej

Porównanie protokołów VPN: WireGuard vs OpenVPN vs IPSec
Porównanie protokołów VPN: WireGuard vs OpenVPN vs IPSec

🔐 Porównanie protokołów VPN: WireGuard vs OpenVPN vs IPSec – który jest najlepszy w 2025 roku? Wybór odpowiedniego protokołu VPN Czytaj dalej

Marek "Netbe" Lampart Inżynier informatyki Marek Lampart to doświadczony inżynier informatyki z ponad 25-letnim stażem w zawodzie. Specjalizuje się w systemach Windows i Linux, bezpieczeństwie IT, cyberbezpieczeństwie, administracji serwerami oraz diagnostyce i optymalizacji systemów. Na netbe.pl publikuje praktyczne poradniki, analizy i instrukcje krok po kroku, pomagając administratorom, specjalistom IT oraz zaawansowanym użytkownikom rozwiązywać realne problemy techniczne.