Bezpieczeństwo Systemów -...

57
1 Bezpieczeństwo Systemów Sieciowych dr inż. Łukasz Sturgulewski, [email protected] , http://luk.kis.p.lodz.pl/ dr inż. Andrzej Frączyk, [email protected] BSS - v2013

Transcript of Bezpieczeństwo Systemów -...

1

Bezpieczeństwo Systemów Sieciowych

dr inż. Łukasz Sturgulewski, [email protected], http://luk.kis.p.lodz.pl/

dr inż. Andrzej Frączyk, [email protected]

BSS - v2013

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

Wpisujemy w

przeglądarce adres i…

BSS - v2013 5

subinterfaces, trunk

OUTSIDE

212.191.89.128 / 25

172.18.0.0 / 16

79.96.21.160 / 28

outside

security-level 0

dmz

security-level 50

10.10.0.0 / 16

VLAN Dyrekcja

sec.lev.8510.20.0.0 / 16

VLAN Pracownicy

sec.lev.80

10.2.0.0 / 16

VLAN Admin

sec.lev.95

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

BSS - v2013 22

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:

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/product_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

BSS - v2013 25

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

Port Security

BSS - v2013 26

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.

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?

BSS - v2013 34

Przed

Po

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/product_data_sheet0900aecd80322c0c.html

BSS - v2013 36

Przeciwdziałanie ARP spoofing

BSS - v2013 37

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

Przeciwdziałanie ARP spoofing

BSS - v2013 38

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])

Przeciwdziałanie skanowaniu

BSS - v2013 39

*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

DHCP Snooping

BSS - v2013 40

BSS - v2013 41

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 42

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 43

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 44

DHCP – zasada działania

BSS - v2013 45

DHCP – zasada działania

BSS - v2013 46

DHCP – przydzielanie adresów

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/product_data_sheet0900aecd80322c0c.html

BSS - v2013 48

Przeciwdziałanie DHCP spoofing

BSS - v2013 49

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

Weryfikacja DHCP spoofing

BSS - v2013 50

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

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/product_data_sheet0900aecd80322c0c.html

BSS - v2013 52

IP Source Guard

BSS - v2013 53

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

IP Source Guard

BSS - v2013 54

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ł.

Weryfikacja IP Source Guard

BSS - v2013 55

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.

Bezpieczeństwo L2 i L3

Przełącznik L2 Cisco 2960: Port Security

DHCP Snooping

Dynamic ARP Inspection (DAI)

IP Source Guard

BSS - v2013 56

Cisco 2960 Data Sheet: http://www.cisco.com/en/US/prod/collateral/switches/ps5718/ps6406/product_data_sheet0900aecd80322c0c.html

57

KONIEC

BSS

BSS - v2013