pátek 12. dubna 2013

DHCP snooping a CISCO Catalyst 2960


Úvod:
Mám na firmě několik přepínačů (switchů) Cisco Catalyst C2960S.
A čas od času se stávalo, že někdo z uživatelů (ne záměrně, spíše omylem) zapnul jakýsi routříček, který měl po resetu do továrního nastavení zapnut DHCP server.
A nabízel jakési nesmyslné IP adresy ze svého rozsahu ostatním zařízením (počítačům, DHCP klientům).
Uživatelé se následně ozývali, že jim nic nefunguje.
Takže co s tím ?

Řešení:
Na Cisco switchích (přepínačích), existuje funkcionalita DHCP snooping, pomocí které lze zakázat neutorizovanému DHCP server rozdávání IP adres (kdesi na Internetu jsem vyčenichal, že DHCP snooping v CISCO switchích existuje až od určité verze).

Co je DHCP snooping ?
DHCP snooping je obrannou proti útoku DHCP spoofing.
Princip spočívá v tom, že porty na přepínači (na switchi) rozdělíte na „trusted“ a „untrusted“.
Pokud je na portu připojen počítač, pak port označíte jako untrusted.

Jak to funguje ?
Zapnuli jsem DHCP Snooping na přepínači (switchi).
Útočník následně zapne DHCP server.
Když jakékoliv zařízení (počítač, klient DHCP) požádá o IP adresu, tak útočníkův DHCP server sice odpoví, ale jakmile dorazí odpověď na switch, switch zkontroluje, zda je poslána z trusted portu, a podle toho ji zahodí či propustí. 
V našem případě ale bude odpověď zahozena, protože útočník je na obyčejném počítači, který je připojen k untrusted portu. 
Tímto se spolehlivě zabrání DHCP Spoofingu.

Jak pracuje přepínač (switch) ?
Přepínač (switch) poslouchá komunikaci a z průchozích DHCP zpráv si vytváří tabulku.
Tato tabulka obsahuje:

  • MAC adresu klienta
  • přidělenou IP adresu
  • port, na kterém se klient nalézá
  • dobu, kdy vyprší zapůjčení IP adresy
  • VLAN, do které klient spadá
  • způsob, jak byla položka přidána (staticky nebo dynamicky).

DHCP snooping ale nezamezuje komunikaci počítače (zařízení), které má nastavenu statickou IP adresou.
Když k přepínači (switchi) připojíme počítač, ať už na trusted nebo untrusted port, se staticky nastavenou IP adresou (maskou sítě, adresou s bránou a DNS serverem, ...), tak nebude provoz tohoto počítače nijak omezen.
K tomu slouží funkce port security.

Příkazy na CISCO switchi:

Switch(config)# sh ip dhcp snooping
Vypíše stav IP DHCP SNOOPING

Switch(config)# ip dhcp snooping
Globálně zapne DHCP snooping.
Pro vypnutí stačí předřadit klíčové slovo „no“.

Switch(config)# ip dhcp snooping vlan (číslo)
Zapne DHCP snooping na VLANu s příslušným číslem.
Lze zadat také dvě čísla VLAN (znamenají dolní a horní mez rozmezí všech VLANů).

Switch(config)# ip dhcp snooping information option
Zapne DHCP volbu č. 82.
Pokud je DHCP požadavek zachycen na nedůvěryhodném portu, switch do něj přidá svou MAC adresu
a identifikaci portu.
Požadavek je pak přeposlán na pravý DHCP server.
Podle RFC 30462 je číslo této volby 82.

Switch(config-if)# ip dhcp snooping trust
Nastaví příslušné rozhraní jako důvěryhodné (připojené k pravému DHCP serveru).

Switch(config-if)# ip dhcp snooping limit rate (číslo)
Nastaví kolik DHCP paketů může rozhraní přijmout za sekundu (pps).
Obvykle se neudává hodnota větší než 100 pps.
Obyčejně se limit udává na nedůvěryhodných rozhraních.
Pokud je chceme použít na trusted rozhraní, musíme pamatovat, že přes tato rozhraní prochází veškerý DHCP provoz ve switchi, a proto je doporučeno použití vyšší hodnotu.

Switch# show ip dhcp snooping
Zobrazí aktuální konfiguraci DHCP snoopingu na daném switchi.

Switch# show ip dhcp snooping binding
Zobrazení vazebních informací DHCP snoopingu

Příklad:
Nastavení konfigurace a ověření nastavení na VLAN s čísly 12 až 13.


cisco2960s# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.

cisco2960s(config)# ip dhcp snooping
cisco2960s(config)# ip dhcp snooping vlan 12 13
cisco2960s(config)# interface FastEthernet1/2
cisco2960s(config-if)# ip dhcp snooping trust
cisco2960s(config-if)# ip dhcp snooping limit rate 100
cisco2960s(config-if)# exit
cisco2960s(config)# exit

Žádné komentáře:

Okomentovat