Zakaz adresów IPv6


16

Obecnie jestem przyzwyczajony do używania narzędzi takich jak fail2ban, aby powstrzymywać niechciany ruch z dala od moich serwerów poprzez blokowanie adresów IPv4: zbyt wiele złych wpisów w dzienniku na adres IP, zakaz adresu IP.

Jednak kiedy świat zakończy migrację do IPv6, banowanie pojedynczych adresów prawdopodobnie już nie będzie działać, ponieważ „normalny” komputer botnet lub atakujący ma dość wiele adresów IPv6?

Jeśli chcę zablokować użytkowników IPv6, jaki byłby najlepszy sposób na osiągnięcie tego? Używać określonej maski IP czy czegoś innego?

Co powiesz na robienie „heurystyki zwiększania skali”, gdy otrzymujesz wiele indywidualnych trafień w IPv6, a następnie blokujesz cały blok?

Dla mnie ważniejsze jest ograniczenie zagrożenia. Jeśli niektórzy biedni prawdziwi użytkownicy należą do tego samego bloku z zablokowanymi adresami IP, to jest problem między tymi osobami a ich dostawcą usług internetowych, aby usunąć ten blokada sieci.

Odpowiedzi:


6

Banowanie na / 128 nie jest skalowane, gdy do ataku używana jest podsieć o rozmiarze / 64. Otrzymasz 2 ^ 64 wpisów w tabeli, potencjalnie powodując odmowę usługi.

Użytkownicy końcowi zawsze otrzymają / 56 według globalnych zasad przypisywania adresów. Firmy zawsze otrzymają / 48 na adres globalny

Patrz: https://tools.ietf.org/html/rfc6177 / 128 nigdy nie powinien być przypisany do serwera / użytkownika, minimalne przypisanie do innej jednostki (klienta serwera / vps) powinno wynosić / 64. Minimalne przypisanie do strony powinno wynosić / 56. Wydawanie / 128s jest zasadniczo zepsute i powinno być traktowane jako błąd konfiguracji.

Dlatego zalecam tymczasowe banowanie na / 64, ponieważ typowy użytkownik końcowy będzie miał dostęp tylko do 2 ^ 8 / 64s, nie powinien wprowadzać zbyt wielu wpisów w tabeli banowania.


1
Zablokowanie całości z /64powodu jednego problematycznego adresu IP spowoduje zablokowanie legalnych użytkowników.
kasperd

1
Tak, ale tylko wtedy, gdy znajdują się w tej samej witrynie. Tak, sieć VLAN użytkownika może zostać zablokowana w jednym budynku. Lub wszystkie maszyny wirtualne należące do klienta, jeśli jedna z maszyn wirtualnych zachowuje się w chmurze. Przypisywanie / 64 do wielu użytkowników dla serwerów jest problematyczne na wiele sposobów, co jest zepsute. Ale powierzchnia blokowania ataku typu „odmowa usługi” na / 64 jest znacznie niższa niż w przypadku / 128.
Wilco Baan Hofman

10

Każda odpowiedź na twoje pytanie będzie wymagała pewnego odgadnięcia. Wdrożenia IPv6 wciąż są na tyle mało, że po prostu jeszcze nie wiemy, jak dokładnie będzie wyglądał scenariusz zagrożenia.

Duża liczba adresów IPv6 wprowadzi wiele zmian do scenariusza zagrożenia, który należy wziąć pod uwagę.

Przede wszystkim w przypadku IPv4 osoba atakująca może w pełni przeskanować domyślny numer portu w poszukiwaniu zagrożonej usługi na wszystkich 3700 milionach routowalnych adresów IPv4. Takie ataki bez celu są niemożliwe w przypadku protokołu IPv6. Te ataki, które nadal widzisz, będą musiały być bardziej ukierunkowane. To, czy oznacza to, że będziemy musieli wiele zmienić w postępowaniu z atakami, dopiero się okaże.

Głównym celem zakazania adresów IP opartych na komunikatach dziennika byłoby zmniejszenie hałasu w dziennikach i, w pewnym stopniu, zmniejszenie obciążenia systemu. Nie powinien służyć jako ochrona przed exploitami. Atakujący, który wie o słabości, będzie w środku przed rozpoczęciem banowania, więc aby się przed tym zabezpieczyć, musisz załatać luki - tak jak zawsze musiałeś.

Zakazanie pojedynczych adresów IPv6 może być wystarczające do zmniejszenia hałasu w logach. Ale to nie jest dane. Nie jest wykluczone, że osoba atakująca może użyć nowego adresu IP z zakresu dostępnego dla każdego połączenia. Jeśli atakujący mieliby się tak zachowywać, zakazanie pojedynczych adresów IPv6 nie tylko byłoby nieskuteczne, ale nawet przypadkowo spowodować atak DoS na siebie, wykorzystując całą pamięć do reguł zapory.

Nie możesz znać długości prefiksu dostępnego dla każdego atakującego. Zablokowanie zbyt krótkiego prefiksu spowoduje atak DoS, obejmując również legalnych użytkowników. Blokowanie zbyt długiego prefiksu będzie nieskuteczne. W szczególności próby użycia siły przy użyciu hasła prawdopodobnie wykorzystają dużą liczbę adresów IPv6 klienta.

Aby być skutecznym przeciwko atakującym zmieniającym adres IPv6 przy każdym żądaniu oraz w celu zmniejszenia zużycia pamięci, musisz blokować zakresy, a ponieważ nie znasz wcześniej długości prefiksów, musisz dynamicznie dostosowywać długości prefiksów.

Już teraz można wymyślić heurystykę. Jak dobrze będą działać, nie wiemy jeszcze.

Jedna heurystyka byłaby dla każdej długości prefiksu, aby zdefiniować próg liczby adresów IP potrzebnych do zablokowania prefiksu o tej długości. Blokowanie powinno być stosowane tylko na określonej długości, jeśli dłuższy prefiks nie byłby wystarczający. Innymi słowy, potrzebujesz wystarczająco indywidualnie zablokowanych adresów IP w każdej z dwóch połówek, aby faktycznie zainicjować blok.

Na przykład można zdecydować, że aby zablokować a / 48, musi być 100 zablokowanych adresów IP w każdym z dwóch / 49 tworzących / 48. Im dłuższy prefiks, tym mniejsza musiałaby być liczba adresów IP potrzebnych do jego zablokowania, ale w każdym przypadku musiałyby one być rozłożone na obie połowy.


1
Prawie 5 lat później jakieś ponowne rozpatrzenie IPv6 i Fail2ban?
Paul

2

Powinieneś trzymać się zakazu pojedynczych adresów.

Nie jest określone, ile adresów zostanie podanych użytkownikom końcowym. Niektórzy usługodawcy internetowi mogą podawać całą podsieć, a inni tylko jeden adres.


Ta sama odpowiedź na drugie pytanie. Ponieważ nie wiesz, która konfiguracja sieci jest zdefiniowana po drugiej stronie, możesz zakończyć blokowanie wielu użytkowników.
Pierre-Yves Gillier
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.