Ataki DNS Amplification i mechanizm Rate Limiting:
Dawniej celem ataków na serwery DNS była dezaktualizacja pamięci podręcznej DNS lub znalezienie innych sposobów modyfikacji rekordów na hoście DNS. Niedawno pojawiła się nowa klasa ataków, znanych jako ataki DNS amplification. Ich celem jest wykorzystanie serwera DNS wraz z wieloma innymi serwerami DNS w celu zalania komputera ofiary obszernym strumieniem pakietów UDP do czasu, aż dojdzie do wyczerpania pasma. Jeden z najbardziej znanych ataków DNS amplification przeprowadzono w 2013 roku przeciwko serwisowi Spamhaus. Za pomocą ponad 30 000 serwerów DNS napastnikom udało się wygenerować ruch UDP o przepustowości 75 Gb/s. Ataki DNS amplification korzystają z dwóch właściwości zapytań DNS: tego, że zapytania DNS są zazwyczaj znacznie mniejsze niż ich odpowiedzi oraz że zapytania DNS używają protokołu UDP, który w przeciwieństwie do TCP może dostarczać sfałszowany źródłowy adres IP.
Podczas tradycyjnego ataku DNS amplification napastnik identyfikuje w internecie serwery DNS
open resolver — serwery, które wykonują rekursywne zapytania dla wszystkich, którzy tego zażądają. Następnie napastnik wysyła niewielkie zapytanie DNS, którego skutkiem jest obszerna odpowiedź (np. dig isc.org ANY). Ponadto fałszuje źródłowy adres IP, podstawiając za swój adres IP adres celu. Ponieważ pakiety UDP są wysyłane i zapominane, serwer DNS otrzymuje niewielkie żądanie DNS od napastnika, a w odpowiedzi wysyła obszerną odpowiedź pod sfałszowany adres IP — cel napastnika. Jeśli ta czynność zostanie powtórzona dla olbrzymiej liczby serwerów DNS w internecie, napastnik będzie mógł stworzyć obszerne pasmo ataku pomimo tego, że jego serwer ma skromną przepustowość.
Najprostszym sposobem na złagodzenie tego rodzaju ataku jest użycie instrukcji
allow-recursion, która pozwala ograniczyć listę hostów, które mogą użyć serwera DNS do realizacji rekursywnych zapytań. Rekursywne serwery typu open resolver są tradycyjnym celem takich ataków, jednak tego rodzaju ataki działają również z autorytatywnymi serwerami nazw. Po prostu napastnik musi dostosować kwerendę DNS w taki sposób, aby żądała rekordu, dla którego ten serwer DNS jest autorytatywny. Ponadto, jeśli nasz serwer korzysta z DNSSEC, to odpowiedzi DNS na niewielkie zapytania mogą stać się jeszcze bardziej obszerne. Niezależnie od tego, czy chcesz zabezpieczyć swój autorytatywny serwer DNS, czy też masz rekursywny serwer DNS, którego nie możesz odciąć od internetu, możesz zablokować napastnikowi możliwość użycia serwera w atakach typu DNS amplification za pomocą nowej własności serwera BIND — mechanizmu Response Rate Limiting. Własność tę dodano do serwera BIND w wersji 9.10, dlatego żeby z niej skorzystać, może być konieczne zaktualizowanie serwera BIND do właściwej wersji (dostępna jest także aktualizacja, którą można zastosować do serwera BIND w wersji 9.9, ale skorzystanie z niej wymaga kompilacji źródeł). Mechanizm Response Rate Limiting działa dzięki umożliwieniu ustawienia górnego limitu liczby odpowiedzi na sekundę z hosta żądającego określonego rekordu:

options {
rate-limit { responses-per-second 10; };
. . .
};

Podobnie jak z każdą zmianą ustawień, aby zaczęła ona obowiązywać, należy ponownie załadować konfigurację DNS. W tym przypadku ograniczyliśmy liczbę odpowiedzi do dziesięciu na sekundę. Jeśli jednak nie jesteś pewien, czy takie ustawienie nie zablokuje uprawnionego ruchu serwera DNS, na początek dodaj opcję, która powoduje jedynie logowanie hostów, które przekroczyły próg — bez ich blokowania:

options {
rate-limit {
responses-per-second 10;
log-only yes;
};
. . .
};

Następnie możemy pozwolić na to, by serwer DNS działał przez jakiś czas, po czym przejrzeć logi, by zobaczyć, czy odpowiedzi są odrzucane (będą zawierały frazę „rate limit drop” oraz będą oznaczone jako błąd zapytania).

ZOSTAW ODPOWIEDŹ

Please enter your comment!
Please enter your name here