Techniki skanowania sieci
- Sebastian Sawicki,
- 01.02.2002
W związku z coraz większą ekspansją Internetu znaczenie bezpieczeństwa staje się jednym z najważniejszych aspektów projektowania sieci komputerowych. Skuteczna ochrona przed atakami wymaga poznania i zrozumienia, jak są one dokonywane i jak intruz zbiera informacje o naszej sieci.
W związku z coraz większą ekspansją Internetu znaczenie bezpieczeństwa staje się jednym z najważniejszych aspektów projektowania sieci komputerowych. Skuteczna ochrona przed atakami wymaga poznania i zrozumienia, jak są one dokonywane i jak intruz zbiera informacje o naszej sieci.
Skanowanie można przyrównać do wywiadu podczas wojny - ma ono na celu rozpoznanie terenu i wyszukanie słabych punktów ochrony. Jest to pierwszy krok intruza przygotowującego się do ataku na system.
Skanowanie pozwala: określić, czy dany cel (host) jest aktywny, poznać, jakie usługi są na nim uruchomione (na podstawie otwartych portów i sygnałów, jakie z tych portów są wysyłane), a także określić, na jakim systemie operacyjnym (i jego wersji) pracuje ów host. Mało tego, można również rozpoznać topologię sieci, określić liczbę komputerów w niej pracujących, odszukać ewentualne zapory ogniowe, a do tego zrobić to wszystko w sposób bardzo trudny do wykrycia.
Dobre zabezpieczenie przed skanowaniem jest wizytówką bezpieczeństwa sieci, stanowi też barierę psychologiczną dla ewentualnego atakującego - może zniechęcić go do dalszych prób.
Dla dobrego zrozumienia tematu niezbędna jest pewna wiedza z zakresu działania i budowy protokołów TCP/IP, tym bardziej że wszystkie techniki skanowania opierają się na specyficznych zachowaniach (także tych nie udokumentowanych) sesji połączenia protokołów TCP, UDP czy ICMP. Związane z tym zagadnienia znacznie wykraczają poza temat tego artykułu, można więc skorzystać z dostępnych publikacji traktujących o protokole TCP/IP, z informacji dostępnych w Internecie, w tym (dla najbardziej dociekliwych) z zamieszczonych tam dokumentów RFC.
Główne pojęcia związane z techniką skanowania sieci to:
Skanowanie - metoda wykrywania aktywności systemu i jego dostępności, a także serwisów, które on udostępnia. W zakres skanowania wchodzą techniki ping sweeps, port scans czy detekcja systemu operacyjnego - fingerprinting. Podczas skanowania zbierane są następujące informacje:
Skaner - specjalny program z zaimplementowanymi procedurami skanującymi.
Skanowanie stealth - skanowanie ukryte, niewidoczne dla skanowanego hosta.
Foot Printing - informacje zbierane przez agresora z ogólnie dostępnych źródeł: prasy, zakresu przydzielonych adresów IP (uzyskanych np. za pomocą whois), serwerów DNS czy pocztowych.
Fingerprinting - zdalne rozpoznawanie systemu operacyjnego w sposób pasywny lub aktywny.
Enumeration - zbieranie informacji o udostępnianych kontach czy zasobach. Ta technika wymaga już bardzo silnej penetracji systemu i zbiera informacje o:
Host - autonomiczny system widoczny w sieci komputerowej, może to być pojedyncza maszyna lub system pracujących razem maszyn, stanowiących jedną grupę.
Znając te główne pojęcia można wyruszyć w podróż po technikach skanowania.
Skanowanie sieci i hostów
Ping Sweeps
Najprostszą metodą skanowania sieci i hostów są tzw. Ping Sweeps - czyli techniki pozwalające uzyskać informacje, czy cel jest dostępny i działa.
Do najpopularniejszych i niewątpliwie najstarszych z nich należy ICMP sweeps - test polegający na wysłaniu pakietu ICMP Echo request, czyli popularnego pinga.
Wysyłając do zdalnego systemu pakiet ICMP Echo request można określić, czy danych host jest dostępny czy nie - w przypadku dostępności pojawi się odpowiedź ICMP Echo reply, brak odpowiedzi oznacza, że system jest niedostępny.
Jest to najprostsza i jednocześnie najmniej pewna metoda badania aktywności systemu - obecnie bardzo dużo systemów sieciowych celowo ma zablokowaną odpowiedz na pakiety ICMP echo request. Są one blokowane na ruterach brzegowych lub zaporach ogniowych.