IP, ARP, TCP, UDP, ICMP, DHCP

Transkrypt

IP, ARP, TCP, UDP, ICMP, DHCP
Omówienie bezpieczeństwa protokołów niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Bezpieczeństwo systemów komputerowych
Seminarium 05.IV.2004
Autor: Radosław Luboch
Omówienie bezpieczeństwa protokołów
niższych warstw
Seminarium 2004 – PP, SKiSR
1/29
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Plan wystąpienia
1.
Wprowadzenie
2.
Podstawowe protokoły
3.
Zarządzanie adresami i nazwami
4.
Przykłady ataków typu DOS
5.
Podsumowanie
Seminarium 2004 – PP, SKiSR
2/100
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Wprowadzenie (1/2)
●
●
●
●
●
Bezpieczeństwo nie było zagadnieniem
priorytetowym dla twórców protokołów
Protokoły nie tworzono po to, by zapewniać
bezpieczeństwo
Brak uwierzytelnienia na poziomie niższych
warstw protokołu TCP/IP
Anonimowość – w sieci można ukryć źródło i
nadawcę wiadomości.
Brak prywatności – większość danych jest
przesyłana jawnie
Seminarium 2004 – PP, SKiSR
3/100
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Wprowadzenie (2/2)
TCP/IP - zbiór protokołów
komunikacyjnych
●
●
ARPANET 1983
Schemat przepływu danych w sieci
TCP/IP :
●
Seminarium 2004 – PP, SKiSR
4/100
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Podstawowe protokoły (1/8)
Protokół IP (1/2)
●
najważniejszy protokół usług bezpołączeniowych,
podstawowa jednostka przesyłania danych w sieciach
TCP/IP
●
●
nie jest niezawodną usługą przesyłu datagramów
w każdym pakiecie znajdują się: adres docelowy i adres
źródła oraz dodatkowe bity wskazujące na pewne
własności specjalne pakietów, suma kontrolna nagłówka,
dane,
●
adresy IPv4, długość 32 bitów i są dzielone na dwie
części: sieciową i cześć hosta (CIDR) 192.168.1.2/25
●
Seminarium 2004 – PP, SKiSR
5/100
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Podstawowe protokoły (2/8)
Protokół IP (2/2)
zapewnia procedury logicznego adresowania, dzięki
któremu pakiety mogą przechodzić przez kolejne sieci
aż do osiągnięcia celu,
●
nie ma żadnej pewności, że dany pakiet został
wysłany z adresu, który znajduje się w polu nadawcy
(IP Spoofing)
●
ukierunkowane nadawanie rozgłoszeniowe, żądanie
echa (directed broadcast, SMURF) – no ip directedbroadcast
●
Seminarium 2004 – PP, SKiSR
6/10
0
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Podstawowe protokoły (3/8)
Protokół ARP (1/1)
protokół sieci TCP/IP przeznaczony do konwersji
adresów w środowiskach Ethernet, Token Ring
●
●
translacja adresu 32-bitowego na ethernetowy
(48-bitowy adres przeznaczenia)
informacje zapisywane w pamięci podręcznej
nadawcy pakietu rozgłoszeniowego
●
●
●
wymiana pakietów ARP odbywa się samoczynnie
transmisja fałszywych zapytań lub odpowiedzi ARP
(ARP Spoofing)
Seminarium 2004 – PP, SKiSR
7/100
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Podstawowe protokoły (4/8)
Protokół TCP (1/3)
●
●
●
●
Protokół sterowania transmisją
Oprócz numerów portów, nagłówek TCP zawiera
znaczniki stanu, numer porządkowy i
potwierdzenie, dzięki którym zwiększa się
niezawodność sieci TCP/IP.
Numer porządkowy pozwala odbiorcy
posegregować pakiety. Potwierdzenie pozwala
odbiorcy powiedzieć nadawcy jaka część
strumienia danych została poprawnie doręczona.
Znaczniki stanu: SYN, ACK, FIN, RST
Seminarium 2004 – PP, SKiSR
8
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Podstawowe protokoły (5/8)
Protokół TCP (2/3)
●
●
zawiera adres nadawczy , numer portu nadawcy,
adres odbiorcy oraz numer portu odbiorcy
trzyetapowy proces otwierania połączenia TCP
Seminarium 2004 – PP, SKiSR
9
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Podstawowe protokoły (6/8)
Protokół TCP (3/3)
●
Zalewanie serwera pakietami synchronizacji
●
„ciche” wykrywanie usług TCP
„sequance number attack” – przewidywanie wyboru
punktu startowego
●
Seminarium 2004 – PP, SKiSR
10
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Podstawowe protokoły (7/8)
Protokół UDP (1/1)
●
transport danych w trybie bezpołączeniowym
●
protokół datagramów użytkownika
brak mechanizmu korekcji błędów, ponownej
transmisji
●
„niewłaściwe zachowania” przy transmisji większej
ilości danych – brak kontroli transmisji
●
brak wymiany potwierdzeń oraz numerów
sekwencyjnych ułatwia sfałszowania pakietu UDP
●
Seminarium 2004 – PP, SKiSR
11
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Podstawowe protokoły (8/8)
Protokół ICMP (1/1)
protokół zarządzania informacjami – raportowanie
błędów, informacje o stanie sieci - ping, traceroute,
zmiana trasy ramek
●
●
wiadomości redirect
●
blokowanie wiadomości ICMP – MTU (niezalecane)
Seminarium 2004 – PP, SKiSR
12
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Zarządzanie adresami i
nazwami
Seminarium 2004 – PP, SKiSR
13
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Zarządzanie adresami i nazwami (1/6)
Protokoły Routingu (1/2)
●
mechanizmy służące do dynamicznego wykrywania
odpowiednich tras w Internecie.
●
trasy asymetryczne
opcja IP polegająca na swobodnym wyborze trasy
przez nadawcę (loose source routing) pozwala osobie
inicjalizująca połączenie TCP określenia konkretnej
trasy do punktu docelowego, pomijając proces
selekcji trasy. Maszyna docelowa musi posłużyć się
odwrotnością tej trasy dla wyznaczenia trasy
powrotnej co oznacza, że atakujący może podszyć się
pod jakąkolwiek maszynę, która komputer docelowy
darzy zaufaniem Seminarium 2004 – PP, SKiSR
●
14
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Zarządzanie adresami i nazwami (2/6)
Protokoły Routingu (2/2)
obrona przed problemem związanym z
wyznaczeniem tras przez źródło - odmówienie
przyjęcia pakietów zawierających tę opcję
●
Wiele protokołów trasujących jest podatnych na
nadużycia – podmieniając tablice tras rutera, można
spowodować skierowanie ruchu sieciowego na
wybrane przez siebie łącze
●
Seminarium 2004 – PP, SKiSR
15
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Zarządzanie adresami i nazwami (3/6)
System DNS (1/3)
System nazw domen (ang. Domain Name Systems)
umożliwia posługiwanie się nazwami zamiast
adresami IP.
●
Zapytania (UDP) kierowane do serwera DNS są
kierowane na port 53. Odpowiedzi na zapytania są
przyjmowane bez podejrzliwości. Każdy, kto jest w
stanie odpowiedzieć na zapytanie wcześniej niż
prawdziwy DNS może przekierować ruch w wybrane
przez siebie miejsce. Sytuacja ta pozwala na atak
typu man-in-the- middle ...
●
Seminarium 2004 – PP, SKiSR
16
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Zarządzanie adresami i nazwami (4/6)
System DNS (2/3)
Zasoby nazw DNS mają strukturę drzewa. Aby
ułatwić ich funkcjonowanie, poddrzewa mogą być
delegowane do innych serwerów. Stosuje się dwa
logicznie wykluczających się drzew. Pierwsze z nich
mapuje nazwy hostów na adresy w formie
bezpośredniej. Drugie drzewo to drzewo tzw.
Zapytań odwrotnych i zawiera rekordy PTR. W tym
przypadku dokonywane jest odwzorowanie
4.255.20.192.in-addr.arpa na nazwę hosta.
●
Osoba kontrolująca pewną część drzewa mapowania
odwrotnego, może sprawić że będzie ono podawało
fałszywe informacje. W ten sposób rekord drzewa ,
któremu ufa system, może zawierać niewłaściwą
Seminarium 2004 – PP, SKiSR
nazwę stacji.
17
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Zarządzanie adresami i nazwami (5/6)
DNSsec
Wszystkie zestawy RRset w bezpiecznym obszarze
mają przypisane rekordy SIG. Publiczne klucze
(podpisane) znajdują się w drzewie DNS, zajmując
miejsce certyfikatów. Co więcej, dany obszar może
zostać podpisany offline, tym samym ograniczając
ryzyko ujawnienia prywatnych kluczy podpisujących
dla pewnego obszaru.
●
Seminarium 2004 – PP, SKiSR
18
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Zarządzanie adresami i nazwami (6/6)
DHCP
Protokół dynamicznej konfiguracji hostów DHCP
jest wykorzystywany do przydzielania adresów IP
oraz dostarczania innych informacji do stacji.
●
Klient w fazie rozruchu systemu wysyła pakiet
rozgłoszeniowy UDP, a serwer na nie odpowiada
(stały adres na podstawie adresu ethernetowego,
albo adres z puli)
●
Zapytania DHCP bez uwierzytelnienia –
odpowiedzi serwera mogą stać się celem ataków,
takich jak DOS, a gdy napastnik ma dostęp do sieci
lokalnej może rozpocząć atak polegający na
sfałszowaniu ARPSeminarium 2004 – PP, SKiSR
●
19
Ataki wykorzystujące luki w
protokołach
Seminarium 2004 – PP, SKiSR
20
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Ataki wykorzystujące luki w protokołach
(1/7)
Ataki blokujące usługi (ataki przez
uniemożliwienie działania) (ang. Denial of Service)
●
Stanowią znaczne zagrożenie - mogą tymczasowo
unieruchomić całą sieć.
●
Ataki te wykorzystują głównie właściwości
protokołu IP - mogą być prowadzone przeciw
serwerom na dowolnej platformie systemowej.
●
Programy służące do przeprowadzania ataku są
ogólnodostępne i mogą je stosować osoby z
minimalną wiedzą programistyczną.
●
Seminarium 2004 – PP, SKiSR
21
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Ataki wykorzystujące luki w protokołach
(2/7)
Przykłady
●
●
●
●
●
●
●
Ping of Death
Finger of death
Usługa Echo i Chargen
Smurf lub fraggle
Syn Flood
Uprowadzenie sesji (session hijacking)
Namierzanie sieci ( network snooping)
Seminarium 2004 – PP, SKiSR
22
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Ataki wykorzystujące luki w protokołach
(3/7)
Finger of death
Atak polegający na wysyłaniu zleceń FINGER do
określonego komputera w regularnych odstępach
(najczęściej co minutę) Nieudane próby zakończenia
połączenia mogą szybko przeciążyć system,
doprowadzając do praktycznego zawieszenia innych
usług.
Seminarium 2004 – PP, SKiSR
23
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Ataki wykorzystujące luki w protokołach
(4/7)
Usługa Echo i Chargen
echo - odsyłanie nadawcy tego, czego sam wysłał.
chargen - odsyłanie pakietu zawierającego pewną liczbę
znaków
Do atakowanego komputera należy wysłać spreparowany
pakiet, zaadresowany do chargen (zamiana adresu nadawcy
na adres atakowanego komputera i usługę echo). Chargen
odpowiada porcją znaków i przesyła usłudze echo. Echo
odsyła do chargen.
2 maszyny - burza pakietów (ang. packet storm)
chargen-echo, echo-echo, chargen-chargen
Obrona:
zablokowanie zbędnych usług, modyfikacja (ignorowane
pakietów przychodzących z wybranych portów) ...
Seminarium 2004 – PP, SKiSR
24
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Ataki wykorzystujące luki w protokołach
(5/7)
Smurf lub Fraggle
Funkcja protokołu ICMP - żądanie echa (ang. echo
request) adresowany do wszystkich w określonej
sieci żądanie echa, wszyscy nań odpowiedzą
komputer wysyłający żądanie zostanie zalany
odpowiedziami Atakujący musi bez przerwy
dostarczać komunikaty z żądaniem echa
●
Obrona:
●
Właściwa konfiguracja routera (nie
przepuszczanie pakietów przychodzących z zewnątrz,
posiadających adres nadawcy wskazujący na
komputer wewnątrz sieci)
Ignorowanie żądania echa na adres rozgłaszania
(atak z wewnątrz) Seminarium 2004 – PP, SKiSR
●
25
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Ataki wykorzystujące luki w protokołach
(6/7)
TCP Syn flood
Atak polega na wysłaniu do systemu ofiary tysięcy próśb
o nawiązanie połączenia TCP. System odsyła napastnikowi
pakiety SYN/ACK jednocześnie rezerwując część pamięci na
nowo nawiązaną komunikację
●
Jednak napastnik nigdy nie wysyła do ofiary pakietu
trzeciej fazy nawiązywania połączenia, w rezultacie ofiara
nie może zwolnić zarezerwowanych zasobów.
Atak ten może wpłynąć także na systemy pomocnicze –
zapory sieciowe, systemy wykrywania włamań, przełączniki
wyższej warstwy, które także muszą tworzyć za każdym
razem nową pozycję w tablicy stanów
Seminarium 2004 – PP, SKiSR
26
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Ataki wykorzystujące luki w protokołach
(7/7)
Uprowadzenie sesji (session hijacking)
Odgadując numer sekwencyjny IP, haker
przejmuje istniejące połączenie pomiędzy dwoma
komputerami i gra rolę jednej strony takiego
połączenia. Legalny użytkownik lub host zostanie
rozłączony a haker dziedziczy możliwość dostępu w
aktualnej sesji. Możliwość taką stwarza niewłaściwa
implementacja ranodmizacji numerów sekwencyjnych
w stosie TCP/IP systemu operacyjnego
●
Seminarium 2004 – PP, SKiSR
27
Omówienie bezpieczeństwa niższych warstw ( IP, ARP, TCP, UDP, ICMP, DHCP ).
Ataki wykorzystujące luki w protokołach
(8/9)
Uprowadzenie sesji (session hijacking)
Odgadując numer sekwencyjny IP, haker
przejmuje istniejące połączenie pomiędzy dwoma
komputerami i gra rolę jednej strony takiego
połączenia. Legalny użytkownik lub host zostanie
rozłączony a haker dziedziczy możliwość dostępu w
aktualnej sesji. Możliwość taką stwarza niewłaściwa
implementacja ranodmizacji numerów sekwencyjnych
w stosie TCP/IP systemu operacyjnego
●
Seminarium 2004 – PP, SKiSR
28
cos o dnsie, Selinuxie i itd.
Koniec:
Seminarium 2004 – PP, SKiSR
3

Podobne dokumenty