Bezpieczeństwo Systemów Sieciowych dr inż. Łukasz Sturgulewski, luk@kis.p.lodz.pl, http://luk.kis.p.lodz.pl/ dr inż. Andrzej Frączyk, a.fraczyk@kis.p.lodz.pl BSS - v2013 1
BSS - v2013 2
Ataki na L2 Typowe ataki na L2: Przepełnienie tablicy CAM flooding Podszycie pod IP-MAC ARP spoofing DHCP snooping IP spoofing (itp.) VLAN hopping Modyfikacja Spanning-Tree Protocol (STP) BSS - v2013 3
Idea Wszędzie podajemy adresy IP. Należy pamiętać, że adres IP nie jest wystarczający do komunikacji w sieci! Potrzebny jest adres warstwy 2 modelu OSI, zależy od użytej technologii. Dla Ethernet będzie to adres MAC. Tłumaczenia z IP na MAC dokonuje ARP. BSS - v2013 4
Komunikacja w sieci Tłumaczenie IP na MAC: W sieci Pracownicy Poza sieć Pracownicy OUTSIDE 79.96.21.160 / 28 dmz security-level 50 outside security-level 0 212.191.89.128 / 25 subinterfaces, trunk 172.18.0.0 / 16 10.2.0.0 / 16 VLAN Admin sec.lev.95 Wpisujemy w przeglądarce adres i 10.10.0.0 / 16 VLAN Dyrekcja sec.lev.85 10.20.0.0 / 16 VLAN Pracownicy sec.lev.80 BSS - v2013 5
Konfiguracja host a BSS - v2013 6
Wynik z Wireshark (ARP) BSS - v2013 7
Wynik z Wireshark (DNS) BSS - v2013 8
Wynik z Wireshark (TCP, HTTP) BSS - v2013 9
Przesyłanie danych Unicast Broadcast Multicast BSS - v2013 10
Przesyłanie danych Domena kolizyjna Domena rozgłoszeniowa Segmentacja L2 Segmentacja L3 BSS - v2013 11
Zasada działania przełącznika BSS - v2013 12
Cechy przełącznika BSS - v2013 13
Przełączanie ramek BSS - v2013 14
Przełączanie ramek BSS - v2013 15
Przełączanie ramek BSS - v2013 16
MAC flooding BSS - v2013 17
MAC flooding Zainstalować i skonfigurować w sieci program do generowania ruchu z losowymi adresami MAC (atak typu MAC flooding czyli zalanie tablicy CAM przełącznika losowymi adresami). Wykazać przepełnienie tablicy CAM. Stwierdzić czy przełącznik jest podatny na ten rodzaj ataku. BSS - v2013 18
Program do generowania ruchu z losowymi adresami MAC EtherFlood floods a switched network with Ethernet frames with random hardware addresses. The effect on some switches is that they start sending all traffic out on all ports so you can sniff all traffic on the network. Q: Why doesn't EtherFlood work? A: Perhaps your switch isn't vulnerable to this attack. If all the LED's on the switch are blinking rapidly but you still don't see all network traffic the switch is probably immune. BSS - v2013 19
Wykazać przepełnienie tablicy CAM Dla urządzeń Cisco do weryfikacji zawartości tablicy CAM przełącznika użyć poleceń: Switch# sh mac address-table Switch# sh mac address-table count BSS - v2013 20
Tablica CAM INE-SW1#show mac address-table? address Address to lookup in the table aging-time MAC address table aging parameters count Number of MAC addresses in the table dynamic List dynamic MAC addresses interface List MAC adresses on a specific interface learning Display learning on VLAN or interface move MAC Move information multicast List multicast MAC addresses notification MAC notification parameters and history table secure List secure MAC addresses static List static MAC addresses vlan List MAC addresses on a specific vlan Output modifiers <cr> BSS - v2013 21
Wykazać przepełnienie tablicy CAM INEINE-SW1#show mac address-table Mac Address Table ------------------------------------------- Vlan Mac Address Type Ports ---- ----------- -------- ----- 1 000a.b82d.10e0 DYNAMIC Fa0/16 1 0012.80b6.4cd8 DYNAMIC Fa0/3 1 0012.80b6.4cd9 DYNAMIC Fa0/16 1 0014.6915.4100 DYNAMIC Fa0/16 1 0018.b921.9200 DYNAMIC Fa0/16 1 0018.b921.9278 DYNAMIC Fa0/1 1 0018.b974.528f DYNAMIC Fa0/16 1 0019.0617.660f DYNAMIC Fa0/13 1 0019.0617.6610 DYNAMIC Fa0/14 1 0019.0617.6611 DYNAMIC Fa0/15 1 001b.d450.970f DYNAMIC Fa0/19 1 001b.d450.9710 DYNAMIC Fa0/20 1 001b.d450.9711 DYNAMIC Fa0/21 4 0018.b974.528f DYNAMIC Fa0/16 45 0018.b945.d5a9 DYNAMIC Fa0/19 45 0018.b945.f780 DYNAMIC Fa0/5 45 0018.b974.528f DYNAMIC Fa0/16 56 0018.b945.f781 DYNAMIC Fa0/16 56 0018.b974.528f DYNAMIC Fa0/16 56 0019.069c.80e1 DYNAMIC Fa0/19 6 0018.b974.528f DYNAMIC Fa0/16 6 0019.069c.80e0 DYNAMIC Fa0/13 Total Mac Addresses for this criterion: BSS - v2013 22
Przeciwdziałanie MAC flooding Port Security secures the access to an access or trunk port based on MAC address. It limits the number of learned MAC addresses to deny MAC address flooding. Cisco 2960 Data Sheet: http://www.cisco.com/en/us/prod/collateral/switches/ps5718/ps6406/pr oduct_data_sheet0900aecd80322c0c.html BSS - v2013 23
Port Security Przeciwdziałanie zmianie adresu MAC przez użytkownika MAC spoofing. W tym także przeciwdziałanie podpięciu obcego hosta. Przeciwdziałanie MAC flooding. BSS - v2013 24
Port Security Ustalenie zasad bezpieczeństwa dla wybranego portu: Switch(config)# interface fastethernet <nr_portu> Ograniczenie dostępu hostów do Switch a: Switch(config-if)# switchport port-security Działanie w przypadku naruszenia reguły bezpieczeństwa: Switch(config-if)# switchport port-security violation <protect restrict shutdown> Ograniczenie liczby hostów na porcie: Switch(config-if)# switchport port-security maximum <liczba_hostów> Adresów MAC hostów Switch nauczy się automatycznie (pierwsze podłączone): Switch(config-if)# switchport port-security mac-address sticky BSS - v2013 25
Port Security Weryfikacja port security: Switch# show port-security Switch# show mac-address-table Switch# show running-config Uwaga: Jeśli nastąpi naruszenie zasad bezpieczeństwa i port zostanie wyłączony, konieczne będzie użycie polecenia shutdown a następnie no shutdown w celu dokonania reaktywacji tego portu. BSS - v2013 26
ARP spoofing BSS - v2013 27
ARP spoofing Zainstalować i skonfigurować w sieci program służący do podszycia się pod inne urządzenia (zmiana MAC dla określonego IP). Podszyć się pod bramę, dla wybranego hosta w sieci. Wykazać skuteczność metody (tablica ARP na hoście). Stwierdzić czy przełącznik jest podatny na ten rodzaj ataku. BSS - v2013 28
BSS - v2013 29
Brama (Router Cisco) BSS - v2013 30
Dobry host BSS - v2013 31
Zły host BSS - v2013 32
Program służący do podszycia się pod inne urządzenie (MAC) na złym hoście BSS - v2013 33
Podszycie Wykazać skuteczność metody (tablica ARP na hoście). Czy przełącznik jest podatny na ten atak? Przed Po BSS - v2013 34
Podszycie Analiza danych z Wireshark: ARP: Pakiety 1335 i 1336 Zapytanie DNS: 1427 i 1428 Zapytanie do google przez fałszywą bramę: 1434 i 1435 BSS - v2013 35
Przeciwdziałanie ARP spoofing Dynamic ARP Inspection (DAI) helps ensure user integrity by preventing malicious users from exploiting the insecure nature of the ARP protocol Cisco 2960 Data Sheet: http://www.cisco.com/en/us/prod/collateral/switches/ps5718/ps6406/pr oduct_data_sheet0900aecd80322c0c.html BSS - v2013 36
Przeciwdziałanie ARP spoofing Konfiguracja ARP inspection Włączyć ARP inspection dla określonego VLAN: Switch(config)# ip arp inspection vlan nr Port łączący przełącznik z ASA/Router (bramą) ustawić jako zaufany: Switch(config-if)# ip arp inspection trust BSS - v2013 37
Przeciwdziałanie ARP spoofing Weryfikacja ARP inspection: Switch# show ip arp inspection *Mar 1 00:39:37.415: %SW_DAI-4-DHCP_SNOOPING_DENY: 1 Invalid ARPs (Res) on Fa0/1, vlan 1.([0800.27ce.4997/10.255.255.254/0016.d32c.edbe/10.0.0.13/00:39:36 UTC Mon Mar 1 1993]) *Mar 1 00:39:47.481: %SW_DAI-4-DHCP_SNOOPING_DENY: 1 Invalid ARPs (Res) on Fa0/1, vlan 1.([0018.18bc.0941/10.0.0.15/0016.d32c.edbe/10.0.0.13/00:39:46 UTC Mon Mar 1 1993]) *Mar 1 00:39:47.481: %SW_DAI-4-DHCP_SNOOPING_DENY: 1 Invalid ARPs (Res) on Fa0/1, vlan 1.([0800.27ce.4997/10.255.255.254/0016.d32c.edbe/10.0.0.13/00:39:46 UTC Mon Mar 1 1993]) *Mar 1 00:39:57.547: %SW_DAI-4-DHCP_SNOOPING_DENY: 1 Invalid ARPs (Res) on Fa0/1, vlan 1.([0018.18bc.0941/10.0.0.15/0016.d32c.edbe/10.0.0.13/00:39:56 UTC Mon Mar 1 1993]) *Mar 1 00:39:57.547: %SW_DAI-4-DHCP_SNOOPING_DENY: 1 Invalid ARPs (Res) on Fa0/1, vlan 1.([0800.27ce.4997/10.255.255.254/0016.d32c.edbe/10.0.0.13/00:39:56 UTC Mon Mar 1 1993]) BSS - v2013 38
Przeciwdziałanie skanowaniu *Mar 1 00:36:14.318: %SW_DAI-4-PACKET_RATE_EXCEEDED: 18 packets received in 41 milliseconds on Fa0/1. *Mar 1 00:36:14.318: %PM-4-ERR_DISABLE: arp-inspection error detected on Fa0/1, putting Fa0/1 in err-disable state *Mar 1 00:36:15.325: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to down *Mar 1 00:36:16.332: %LINK-3-UPDOWN: Interface FastEthernet0/1, changed state to down BSS - v2013 39
DHCP Snooping BSS - v2013 40
Protokoły DHCP i BOOTP BOOTP BOOTstrap Protocol DHCP Dynamic Host Configuration Protocol Protokoły te służą do określenia przy starcie jednostki wszystkich informacji potrzebnych do jej działania w sieci TCP/IP np. adresu IP. BOOTP brak dynamicznej konfiguracji jednostek w sieci. BSS - v2013 41
DHCP DHCP Dynamic Host Configuration Protocol: RFC 2131. Architektura klient serwer. Automatyczna konfiguracja węzłów sieci. Minimalizacja nakładów przy konfiguracji sieci IP. Wiele konfigurowalnych przez DHCP parametrów (oczywiście IP najważniejsze). BSS - v2013 42
DHCP Protokół warstwy 7 (aplikacji). W warstwie 4 (transportowej) korzysta z UDP. Klient wysyła komunikaty do serwera na port 67. Serwer wysyła komunikaty do klienta na port 68. BSS - v2013 43
DHCP zasada działania BSS - v2013 44
DHCP zasada działania BSS - v2013 45
DHCP przydzielanie adresów BSS - v2013 46
DHCP problem! Co się dzieje gdy ktoś wprowadzi obcy serwer DHCP (np. domowy router)? Czy możliwa będzie komunikacja w sieci LAN? Jakie usługi działają a jakie nie? BSS - v2013 47
DHCP Snooping DHCP Snooping prevents malicious users from spoofing a DHCP server and sending out bogus addresses. This feature is used by other primary security features to prevent a number of other attacks such as ARP poisoning. Cisco 2960 Data Sheet: http://www.cisco.com/en/us/prod/collateral/switches/ps5718/ps6406/pr oduct_data_sheet0900aecd80322c0c.html BSS - v2013 48
Przeciwdziałanie DHCP spoofing Włączyć globalnie DHCP snooping: Switch(config)# ip dhcp snooping Włączyć DHCP snooping dla wybranych sieci: Switch(config)# ip dhcp snooping vlan nr Ustawić wybrany port jako zaufane źródło ofert z serwera DHCP: Switch(config-if)# ip dhcp snooping trust BSS - v2013 49
Weryfikacja DHCP spoofing Sprawdzić działanie DHCP snooping: Switch# show ip dhcp snooping MacAddress IpAddress Lease(sec) Type VLAN Interface ------------------ --------------- ---------- ------------- ---- ----------------- 00:16:D3:2C:ED:BE 10.0.0.13 84627 dhcp-snooping 1 FastEthernet0/13 00:21:70:AB:D4:8C 10.0.0.12 86262 dhcp-snooping 1 FastEthernet0/5 08:00:27:CE:49:97 10.0.0.15 84232 dhcp-snooping 1 FastEthernet0/1 Total number of bindings: 3 BSS - v2013 50
IP source guard BSS - v2013 51
IP source guard IP source guard prevents a malicious user from spoofing or taking over another user's IP address by creating a binding table between the client's IP and MAC address, port, and VLAN. Cisco 2960 Data Sheet: http://www.cisco.com/en/us/prod/collateral/switches/ps5718/ps6406/pr oduct_data_sheet0900aecd80322c0c.html BSS - v2013 52
IP Source Guard IPSG przeciwdziała między innymi IP spoofing, z którym mamy do czynienia gdy intruz żąda / przypisuje sobie adres IP innego urządzenia (np. serwer, router). Takie podszycie umożliwia prowadzenie podsłuchu danych oraz ich fabrykację. http://fuzzexp.org/ip-spoofing-attack-and-defenses.html BSS - v2013 53
IP Source Guard Włączenie IPSG wymaga wcześniejszej konfiguracji: DHCP snooping port-security Switch(config-if)#ip verify source port-security W pierwszej kolejności sprawdzany jest źródłowy adres IP w przychodzącym pakiecie z bazą DHCP snooping a następnie sprawdzany jest źródłowy adres MAC z bazą port-security na danym porcie. Tworzone są ACL na każdym porcie (brak widoczności w running-config). Ruch, który nie spełnia podanych wyżej warunków jest odrzucany przez sprzęt. Jednakże port nie przechodzi w status errdisable standardowo wyświetla na konsoli informację o naruszeniu reguł. BSS - v2013 54
Weryfikacja IP Source Guard Switch#sh ip verify source Interface Filter-type Filter-mode IP-address Mac-address Vlan --------- ----------- ----------- --------------- ----------------- ---- Fa0/5 ip-mac active 10.0.0.12 00:21:70:AB:D4:8C 1 Jeśli urządzenie z włączonym IPSG otrzyma pakiet IP z adresem 10.0.0.12, IPSG prześle pakiet tylko jeśli adres MAC ramki ma wartość 00:21:70:AB:D4:8C. BSS - v2013 55
Bezpieczeństwo L2 i L3 Przełącznik L2 Cisco 2960: Port Security DHCP Snooping Dynamic ARP Inspection (DAI) IP Source Guard Cisco 2960 Data Sheet: http://www.cisco.com/en/us/prod/collateral/switches/ps5718/ps6406/product_ data_sheet0900aecd80322c0c.html BSS - v2013 56
BSS KONIEC BSS - v2013 57