„Otwarty program rozpoznawania nazw DNS” to serwer DNS, który jest w stanie rozwiązywać rekurencyjne wyszukiwania DNS dla każdego w Internecie. Przypomina to otwarty przekaźnik SMTP, ponieważ prosty brak uwierzytelnienia umożliwia złośliwym stronom trzecim rozpowszechnianie swoich ładunków przy użyciu niezabezpieczonego sprzętu. W przypadku otwartych przekaźników SMTP problem polega na tym, że przekazują spam. W przypadku otwartych programów rozpoznawania nazw DNS problemem jest to, że umożliwiają one atak typu „odmowa usługi” znany jako atak DNS Amplification.
Sposób działania tego ataku jest dość prosty - ponieważ Twój serwer rozwiąże rekurencyjne zapytania DNS od kogokolwiek, osoba atakująca może spowodować, że weźmie on udział w DDoS, wysyłając do serwera rekurencyjne zapytanie DNS, które zwróci dużą ilość danych, znacznie większą niż oryginalny pakiet żądania DNS. Podszywając się (podszywając) pod swój adres IP, kierują ten dodatkowy ruch na komputery swoich ofiar zamiast na własne, i oczywiście będą wysyłać jak najwięcej zapytań tak szybko, jak to możliwe, na twój serwer i inne otwarte DNS resolwery mogą znaleźć. W ten sposób ktoś ze stosunkowo małą rurą może „wzmocnić” atak typu „odmowa usługi”, wykorzystując całą przepustowość swojej rury, aby skierować znacznie większy ruch na swoje ofiary.
ArsTechnica napisał przyzwoity artykuł na temat ostatniego ataku DDoS na DNS Amplification przeciwko Spamhausowi i warto go szybko przeczytać, aby uzyskać podstawy (i dobrą grafikę wzmocnienia).
Najprostszym sposobem ochrony systemu przed nadużyciami w ten sposób jest ograniczenie adresów, na których serwer będzie przeprowadzał rekurencyjne wyszukiwania do lokalnych podsieci. (Specyfika zależy oczywiście od używanego serwera DNS).
Na przykład, jeśli korzystałem z BIND 9 i chciałem po prostu zapobiec rekursji DNS z adresów zewnętrznych, użyłbym następującego kodu w mojej konfiguracji:
options {
directory "/var/named/master";
allow-recursion { 127.0.0.1; 10.0.0.0/8; 192.168.0.0/16; 172.16.0.0/12; };
Ten wiersz kodu mówi mojemu serwerowi BIND, aby przetwarzał tylko rekurencyjne żądania DNS dla lokalnego adresu sprzężenia zwrotnego (który, jak sądzę, mógłbym / powinienem ustawić na lokalny blok sprzężenia zwrotnego, cały / 8) i 3 prywatne przestrzenie adresowe IPv4.
W przypadku systemu Windows Server 2012, z którego korzystasz, masz następujące opcje.
1. Oddziel swój serwer DNS od serwera IIS.
- Przynajmniej w idealnym świecie nie ma powodu, aby korzystać z DNS na tym samym urządzeniu co IIS.
- Umieść DNS na wewnętrznym polu, które nie jest NATed, aby świat zewnętrzny nie mógł się do niego dostać, i pozwól IIS rezydować na zewnętrznym polu, do którego może dostać się reszta świata. Możesz użyć reguł podwójnego bazowania lub zapory, aby selektywnie zezwolić na dostęp do serwera DNS z serwera IIS.
2. Blokuj zewnętrzne żądania DNS za pomocą zapory ogniowej, takiej jak wbudowana zapora systemu Windows.
- Ku mojemu zdziwieniu, Windows DNS nie pozwala na ograniczenie adresów, do których honorowane są rekurencyjne żądania DNS, więc jest to właściwie zalecana metoda firmy Microsoft.
-
- Wybierz reguły DNS (TCP i UDP), przejdź do
Remote IP address
sekcji i dodaj podsieci używane w sieci LAN, a także wszelkie publicznie dostępne adresy IP serwerów, które potrzebują dostępu do Active Directory. Podobnie jak w przykładzie BIND, prywatnymi przestrzeniami adresów IPv4 są 127.0.0.0/8
10.0.0.0/8
192.168.0.0/16
i 172.16.0.0/12
.
- Naprawdę nie jestem pewien, jaki będzie to miało wpływ na twoje środowisko, ponieważ tak naprawdę nie określiłeś, jak DNS i AD są skonfigurowane w twoim środowisku, a zatem jest to ostatnia opcja.
-
- Otwórz Menedżera DNS.
- W drzewie konsoli kliknij prawym przyciskiem myszy odpowiedni serwer DNS, a następnie kliknij polecenie Właściwości.
- Gdzie?
- DNS / odpowiedni serwer DNS
- Kliknij kartę Zaawansowane.
- W Opcjach serwera zaznacz pole wyboru Wyłącz rekurencję, a następnie kliknij OK.
- Ponieważ mamy środowisko obejmujące wiele lasów i używamy do tego warunkowego przesyłania dalej, nie zamierzam zaznaczać tego pola. To może być również coś do rozważenia.