DHCP Snooping

Damian Stelmach

Praktycznie w każdej sieci komputerowej stosuje się protokół DHCP do przydzielania adresów IP na komputerach użytkowników. Usługa DHCP, bardzo przydatna i ułatwiająca codzienną pracę administratorów narażona jest niestety na ataki sieciowe. Odpowiednie oprogramowanie uruchomione w sieci przez hakera potrafi unieszkodliwić poprawnie działający serwer DHCP, dzięki czemu napastnik może podłączyć własny, fałszywy serwer DHCP i rozsyłać na komputery użytkowników fałszywe adresy IP. Na szczęście przełączniki sieciowe posiadają funkcjonalność zwaną DHCP Snooping, która pozwala na wskazanie właściwego serwera DHCP w sieci, a dodatkowo ogranicza ilość możliwych do wysłania z komputera użytkownika do serwera DHCP komunikatów mogących unieszkodliwić ten serwer. Dzięki takiej konfiguracji zadecydowanie ograniczymy możliwość wykonania ataku na serwer DHCP. Aby taką funkcjonalność skonfigurować: :

Korzystając z interfejsu WWW przechodzimy do pozycji Network Security w menu i przechodzimy do zakładki DHCP Snooping:

DHCP Snooping

Uruchamiamy funkcję wybierając Enable, a w sekcji VLAN ID wprowadzamy identyfikator sieci VLAN (na tym przełączniku obecnie wszystkie porty pracują w sieci VLAN o identyfikatorze 1 i zapisujemy zmiany klikając Apply::

DHCP Snooping

Następnie przechodzimy do zakładki Port Config, zaznaczamy interfejs, do którego podłączony jest serwer DHCP i wybieramy Enable w sekcji Trusted Port. Dzięki temu tylko na porcie 10 będzie mógł pracować serwer DHCP. Zapisujemy zmiany klikając Apply:

DHCP Snooping

Teraz pozostało nam jeszcze skonfigurowanie limitu wysyłanych komunikatów do serwera DHCP na pozostałych portach. Dzięki czemu zabezpieczymy serwer DHCP pracujący w sieci przed atakiem. W tym celu zaznaczamy wszystkie pozostałe porty przełącznika (poza 10) i wybieramy w sekcji Rate Limit liczbę możliwych do wysłania z danego portu komunikatów do serwera DHCP na sekundę (może być więcej niż 10). Zapisujemy zmiany klikając Apply:

DHCP Snooping

Korzystając z CLI (uruchamianego poprzez Telnet lub SSH) wydajemy następujące polecenia:

  • T1600G-18TS> enable
  • T1600G-18TS# configure
  • T1600G-18TS(config)# ip dhcp snooping
  • T1600G-18TS(config)# ip dhcp snooping vlan 1

Pierwsze polecenie to przejście do trybu uprzywilejowanego, następne to przejście do trybu konfiguracji. Polecenieip dhcp snooping uruchamia funkcję DHCP Snooping dla całego przełącznika, natomiast ip dhcp snooping vlan 1 uruchamia tę funkcję dla sieci VLAN 1:

DHCP Snooping

Wydane w trybie konfiguracji polecenie show ip dhcp snooping wyświetli nam status funkcjonalności:

DHCP Snooping

Teraz dodamy do portu 10 zaufany serwer DHCP, wykonując pocenia:

  • T1600G-18TS(config)# interface gigabitEhternet 1/0/10
  • T1600G-18TS(config-if)# ip dhcp snooping trust

Pierwsze polecenie to przejście do konfiguracji portu 10, kolejne to dodanie do tego portu zaufanego serwera DHCP:

DHCP Snooping

Na koniec dla wszystkich pozostałych portów ograniczamy jeszcze ilość możliwych do wysłania komunikatów do serwera DHCP:

  • T1600G-18TS(config-if)# exit
  • T1600G-18TS(config)# interface range gigabitEhternet 1/0/1-9
  • T1600G-18TS(config-if-range)# ip dhcp snooping limit rate 10
  • T1600G-18TS(config-if-range)# exit
  • T1600G-18TS(config)# interface range gigabitEhternet 1/0/11-16
  • T1600G-18TS(config-if-range)# ip dhcp snooping limit rate 10

Pierwsze polecenie to wyjście z konfiguracji portu 10 (na tym interfejsie dodaliśmy w poprzednim kroku zaufany serwer DHCP), kolejne to przejście do zbiorczej konfiguracji portów od 1 do 9, a dalej to ustawienie limitu możliwych do wysłania komunikatów do serwera DHCP na sekundę. Następnie opuściliśmy tryb konfiguracji interfejsów od 1 do 9 i następnie przeszliśmy do konfiguracji portów od 11 do 16. Na koniec ustaliliśmy limit dla tych portów:

DHCP Snooping

Wydane w trybie konfiguracji polecenie show ip dhcp snooping interface wyświetli nam podsumowanie konfiguracji: DHCP Snooping