Audyt bezpieczeństwa (skanowanie otoczenia sieciowego) Artur Sierszeń

Podobne dokumenty
Skanowanie portów. Autorzy: Jakub Sorys, Dorota Szczpanik IVFDS

Sieci komputerowe Warstwa transportowa

MODEL WARSTWOWY PROTOKOŁY TCP/IP

Sieci komputerowe - Protokoły warstwy transportowej

Przesyłania danych przez protokół TCP/IP

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ

Metody ataków sieciowych

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej

Protokoły sieciowe - TCP/IP

TCP/IP formaty ramek, datagramów, pakietów...

Sieci komputerowe. Zajęcia 3 c.d. Warstwa transportu, protokoły UDP, ICMP

PROTOKOŁY WARSTWY TRANSPORTOWEJ

SEGMENT TCP CZ. II. Suma kontrolna (ang. Checksum) liczona dla danych jak i nagłówka, weryfikowana po stronie odbiorczej

Router programowy z firewallem oparty o iptables

Stos protokołów TCP/IP (ang. Transmission Control Protocol/Internet Protocol)

MODEL OSI A INTERNET

Wykład 4: Protokoły TCP/UDP i usługi sieciowe. A. Kisiel,Protokoły TCP/UDP i usługi sieciowe

Laboratorium - Przechwytywanie i badanie datagramów DNS w programie Wireshark

Sieci komputerowe. Wykład 7: Transport: protokół TCP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

Podstawy Transmisji Danych. Wykład IV. Protokół IPV4. Sieci WAN to połączenia pomiędzy sieciami LAN

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ

Laboratorium 6.7.1: Ping i Traceroute

9. System wykrywania i blokowania włamań ASQ (IPS)

Laboratorium - Używanie programu Wireshark do obserwacji mechanizmu uzgodnienia trójetapowego TCP

Adresy w sieciach komputerowych

Laboratorium 6.7.2: Śledzenie pakietów ICMP

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ

POŁĄCZENIE STEROWNIKÓW ASTRAADA ONE MIĘDZY SOBĄ Z WYKORZYSTANIEM PROTOKOŁU UDP. Sterowniki Astraada One wymieniają między sobą dane po UDP

Sieci komputerowe. Protokoły warstwy transportowej. Wydział Inżynierii Metali i Informatyki Przemysłowej. dr inż. Andrzej Opaliński.

Warstwa sieciowa. Model OSI Model TCP/IP. Aplikacji. Aplikacji. Prezentacji. Sesji. Transportowa. Transportowa

NIEZAWODNE ROZWIĄZANIA SYSTEMÓW AUTOMATYKI

Wireshark analizator ruchu sieciowego

Skanowanie portów TCP

Programowanie współbieżne i rozproszone

Programowanie Sieciowe 1

Podstawowe protokoły transportowe stosowane w sieciach IP cz.1

Sieci komputerowe w sterowaniu informacje ogólne, model TCP/IP, protokoły warstwy internetowej i sieciowej

Projektowanie bezpieczeństwa sieci i serwerów

Akademia Techniczno-Humanistyczna w Bielsku-Białej

Klient-Serwer Komunikacja przy pomocy gniazd

Wykład 2: Budowanie sieci lokalnych. A. Kisiel, Budowanie sieci lokalnych

Zarządzanie ruchem w sieci IP. Komunikat ICMP. Internet Control Message Protocol DSRG DSRG. DSRG Warstwa sieciowa DSRG. Protokół sterujący

ARP Address Resolution Protocol (RFC 826)

Katedra Inżynierii Komputerowej Politechnika Częstochowska. Zastosowania protokołu ICMP Laboratorium podstaw sieci komputerowych

Laboratorium Sieci Komputerowych - 2

SIECI KOMPUTEROWE I TECHNOLOGIE INTERNETOWE

Sieci komputerowe. Wykład 5: Warstwa transportowa: TCP i UDP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

Instrukcja konfiguracji funkcji skanowania

Protokół IP. III warstwa modelu OSI (sieciowa) Pakowanie i adresowanie przesyłanych danych RFC 791 Pakiet składa się z:

Zarządzanie bezpieczeństwem w sieciach

Bezpieczeństwo w M875

SMB protokół udostępniania plików i drukarek

pasja-informatyki.pl

Kierunek: technik informatyk 312[01] Semestr: II Przedmiot: Urządzenia techniki komputerowej Nauczyciel: Mirosław Ruciński

Bazy Danych i Usługi Sieciowe

Stos TCP/IP Warstwa transportowa Warstwa aplikacji cz.1

Podstawowe protokoły transportowe stosowane w sieciach IP cz.2

Sieci komputerowe - Wstęp do intersieci, protokół IPv4

Warstwy i funkcje modelu ISO/OSI

TELEFONIA INTERNETOWA

Pełna specyfikacja pakietów Mail Cloud

Sieci Komputerowe. Wykład 1: TCP/IP i adresowanie w sieci Internet

Instrukcja instalacji Control Expert 3.0

Data wykonania

11. Autoryzacja użytkowników

ArtPlayer oprogramowanie do odtwarzania plików video sterowane Artnet/DMX V1.0.1

Sieci komputerowe - administracja

Wykład Nr Sieci bezprzewodowe 2. Monitorowanie sieci - polecenia

Warstwa transportowa. mgr inż. Krzysztof Szałajko

Na podstawie: Kirch O., Dawson T. 2000: LINUX podręcznik administratora sieci. Wydawnictwo RM, Warszawa. FILTROWANIE IP

Serwer SSH. Wprowadzenie do serwera SSH Instalacja i konfiguracja Zarządzanie kluczami

Rys. 1. Wynik działania programu ping: n = 5, adres cyfrowy. Rys. 1a. Wynik działania programu ping: l = 64 Bajty, adres mnemoniczny

Sieci Komputerowe Modele warstwowe sieci

iptables -F -t nat iptables -X -t nat iptables -F -t filter iptables -X -t filter echo "1" > /proc/sys/net/ipv4/ip_forward

Sieci komputerowe laboratorium

Akademickie Centrum Informatyki PS. Wydział Informatyki PS

Gniazda surowe. Bartłomiej Świercz. Łódź,9maja2006. Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz Gniazda surowe

Brinet sp. z o.o. wyłączny przedstawiciel DrayTek w Polsce

Referencyjny model OSI. 3 listopada 2014 Mirosław Juszczak 37

OBSŁUGA I KONFIGURACJA SIECI W WINDOWS

z paska narzędzi lub z polecenia Capture

Test sprawdzający wiadomości z przedmiotu Systemy operacyjne i sieci komputerowe.

ADRESY PRYWATNE W IPv4

Zarządzanie bezpieczeństwem w sieciach dr inż. Robert Banasiak, mgr inż. Rafał Jachowicz, Instytut Informatyki Stosowanej PŁ, 2013

Programowanie sieciowe

Warstwa transportowa

Sieci komputerowe - warstwa transportowa

Pełna specyfikacja pakietów Mail Cloud

Transport. część 2: protokół TCP. Sieci komputerowe. Wykład 6. Marcin Bieńkowski

Metody zabezpieczania transmisji w sieci Ethernet

Protokoły wspomagające. Mikołaj Leszczuk

ZiMSK NAT, PAT, ACL 1

instrukcja instalacji modemu SpeedTouch 605s

Plan wykładu. 1. Sieć komputerowa 2. Rodzaje sieci 3. Topologie sieci 4. Karta sieciowa 5. Protokoły używane w sieciach LAN 6.

ZiMSK. Charakterystyka urządzeń sieciowych: Switch, Router, Firewall (v.2012) 1

7. Konfiguracja zapory (firewall)

Zdalne logowanie do serwerów

Dr Michał Tanaś(

Omówienie TCP/IP. Historia

Całkowita długość nagłówka zróżnicowane. Numer identyfikacyjny Flagi Przesunięcie

Transkrypt:

Audyt bezpieczeństwa (skanowanie otoczenia sieciowego) Artur Sierszeń asiersz@kis.p.lodz.pl http://bzyczek.kis.p.lodz.pl

Skanowanie sieci komputerowych 2

Skanowanie otoczenia sieciowego (ang. Network Scanning) - wszystkie techniki skanowania mające na celu stwierdzenie czy dany komputer jest podłączony do sieci oraz jaki system operacyjny jest na nim zainstalowany. W wypadku hakera tego typu techniki powinny być zastosowane na początku działań penetracyjnych (w celu dokładnego określenia celu ataku, jego podatności na pozostałe techniki skanowania i ewentualne metody ataku. Z punktu widzenia administratora mogą być używane w celu diagnostyki oraz monitorowania komputerów w sieci oraz zasobów na nich udostępnianych. Niektóre zaawansowane skanery otoczenia sieciowego z rozbudowanym interfejsem graficznym umożliwiają tworzenie map sieci zawierających logiczne odwzorowanie fizycznej topologii sieci. 3

Skanowanie systemu operacyjnego Jest to zdalne rozpoznawanie systemu operacyjnego Metody wykrywania systemu operacyjnego często określane są z języka angielskiego pojęciem OS fingerprinting Ten typ skanowania ma na celu wykrycie rodzaju oraz (jeśli to możliwe) wersji systemu operacyjnego Nowe systemy operacyjne coraz rzadziej udostępniają jakiekolwiek dane ze względów bezpieczeństwa Istnieją jednak takie techniki, które umożliwiają identyfikację nowszych systemów, włącznie z zainstalowanymi na nich zestawami poprawek (np. Service Packów dla systemów z rodziny Windows) czy numeracji jądra dla dystrybucji Linux 4

Stos sieci Każdy rodzaj i wersja systemu operacyjnego działający w sieci komputerowej może nieco inaczej pracować wykorzystując protokoły TCP/IP Jeszcze bardziej jest to widoczne w sieci Internet, gdzie często różnice w zachowaniu się np. serwerów wynikają z dodatkowego oprogramowania zainstalowanego na systemie i zestawie dostępnych usług Różnice wynikają z odmiennego kodu zaimplementowanego do obsługi sieci. Kod ten, nazywany stosem sieci najczęściej znajduje się w jądrze systemu. Różne zespoły osób zajmowały tworzeniem takiego kodu dla różnych systemów operacyjnych (unikalny jest charakter stosu sieci dla różnorodnych systemów - obserwując zachowanie systemu w sieci można określić jego rodzaj) 5

Stos sieci Największa odmienność w zachowaniu się systemów widoczne jest w nagłówkach pakietów zestawu protokołów TCP/IP Tworząc bazę charakterystycznych zachowań systemów operacyjnych można odróżnić system już nawet po jednym pakiecie Techniki zdalnego wykrywania systemów operacyjnych dzieli się na: aktywne pasywne 6

Aktywne wykrywanie systemu operacyjnego Aktywna technika wykrywania systemu operacyjnego oznacza, że wykorzystywana jest tu aktywna analiza stosu Aktywna oznacza, że do otrzymania informacji konieczne jest wygenerowanie ruch sieciowego Narzędzia korzystające z tej metody wysyłają w kierunku skanowanej maszyny różnego rodzaju pakiety, często są one odpowiednio spreparowane Następnie oczekują na odpowiedź (lub też jej brak) i dokładnie analizują jej rezultaty Często na tym etapie następuję porównanie wyników z bazą danych zawierajęca odciski palców czyli sposoby reakcji danego systemu operacyjnego na określony pakiet 7

Aktywne wykrywanie systemu operacyjnego Skuteczność tej metody zależy przede wszystkim, od tego czy skanowany komputer ma otwarty chociaż jeden port W tego typu pakietach sondach najczęściej modyfikowane są nagłówki TCP i IP Wadą z punktu widzenia atakującego jest konieczność wysłania informacji do skanowanego komputera (najczęściej serwera) Istnieje ryzyko, że taka próba skanowania zostanie wykryta przez administratora 8

Aktywne wykrywanie - sondy Sonda FIN do otwartego portu wysyłany jest pakiet bez ustawionej flagi SYN i ACK (najczęściej z flaga FIN). Niektóre systemy operacyjne np. Windows, CISCO, IRIX odpowiedzą na taką sondę pakietem z ustawiona flagą RST. Próbkowanie początkowych numerów sekwencyjnych TCP (ang. TCP Initial Sequence Number Sampling, ISN) wykorzystuje identyfikację algorytmu generowania ISN w pakietach z ustawionymi znacznikami ACK/SYN. Obecnie wiele systemów operacyjnych jest odporne na tego typu działania, gdyż wykorzystują tzw. inkrementację losową. Sonda z niezdefiniowaną flagą w nagłówku TCP. Segment SYN może wywołać różne reakcję hosta: Linux z jądrem poniżej 2.0.35 ustawi flagę SYN w odpowiedzi, brak odpowiedzi na pakiet, w odpowiedzi wysyłany pakiet ze znacznikiem RST. 9

Aktywne wykrywanie - sondy Sprawdzanie rozmiaru okna TCP różny dla różnych systemów Sprawdzanie czy ustawiony jest bit nie fragmentować Sprawdzanie wartości ACK. Niektóre systemy np. Windows zachowuje się w tej sprawie niejednoznacznie. Badanie jakie pola są ustawienia w polu TOS (ang. Type of Service). Większość systemów operacyjnych zeruje tę wartość, natomiast Linux ustawia wartość 0xC0. Sondy sprawdzające opcje TCP. Testują zachowanie się stosu na różne warianty ustawień opcji TCP. 10

Aktywne wykrywanie - sondy Metoda SYN Flood Resistance. Sprawdza odporność systemu na zalewanie pakietami SYN analizowana jest tutaj liczba możliwych połączeń z otwartym portem z jednego adresu IP i portu. Sondy testujące limitowanie komunikatów o błędach ICMP. Każdy system ogranicza ilość komunikatów w jednostce czasu. Sprawdzanie polega na wysyłaniu dużej ilości pakietów na porty UDP (numery portów powyżej 1024) i zliczaniu pakietów otrzymanych w odpowiedzi. Testowanie pakietami ICMP z błędnie ustawioną wartością w polu nagłówka ICMP. Część systemów operacyjnych odpowiada na to pakietami bez zmian w nagłówku, inne zaś zmieniają wartość na poprawną dla tego typu pakietu. 11

Pasywne wykrywanie systemu operacyjnego Pasywne metody skanowania, mające na celu wykrycie wersji systemu operacyjnego na zdalnej maszynie, bez wysyłania pakietów sondujących. W drodze wyjątku dopuszcza się tutaj nawiązanie połączenia z usługą sieciowa uruchomioną na zdalnym komputerze, ale w sposób prawidłowy, tak jak by to miało miejsce, podczas konwencjonalnego korzystania z usługi bez żadnych złych zamiarów. Z założenia metody pasywne są ciężko wykrywalne o wiele trudniej jest wykryć i zarejestrować próby takich działań szpiegujących, niż w przypadku zastosowania aktywnych metod OS fingerprinntingu. Metody pasywne można podzielić na: z pasywną analizą stosu TCP/IP, wykorzystujące warstwę aplikacji modelu OSI. 12

Pasywne wykrywanie systemu operacyjnego Metody identyfikacji z pasywną analizą stosu polegają na przechwytywaniu pakietów generowanych przez upatrzony jako cel komputer z wykorzystaniem techniki sniffingu (przechwytywanie pakietów przepływających w sieci) i późniejszej analizy otrzymanych informacji. Możliwość wykorzystania tego typu technik wynika z różnic w implementacji stosu TCP/IP w różnych systemach operacyjnych. Najczęściej różnice są widoczne w wartościach w odpowiednich polach nagłówków protokołów TCP i IP. 13

Najważniejsze parametry protokołu IP i TCP. Protokół Nazwa parametru Nazwa oryginalna czas życia pakietu TTL Time To Live IP TCP pole ID (identyfikacja) ustawienia bitów TOS ustawienia bitu braku fragmentacji rozmiar okna maksymalny rozmiar segmentu selektywne odrzucanie opcja NOP Identification Type Of Service don't fragment Window Size Maximum Segment Size Selective Acknowledgment No Operation Gdy podczas analizy pakietów, zostaną odczytane powyższe wartości w polach nagłówków, a następnie porównane z bazą sygnatur identyfikujących wartości tych parametrów dla danego systemu operacyjnego, możliwe będzie stwierdzenie z dużą pewnością, w jaki system operacyjny wyposażony jest sprawdzany host. 14

Skanowanie ICMP Protokół ICMP (ang. Internet Control Message Protocol, internetowy protokół komunikatów kontrolnych) jest protokółem warstwy sieciowej modelu OSI oraz warstwy Internet modelu TCP/IP Protokół powstał z myślą o diagnostyce sieci oraz trasowaniu W sieciach komputerowych pełni przede wszystkim funkcję kontroli transmisji w sieci (skanowania sieci komputerowych z wykorzystaniem protokołu ICMP ma na celu stwierdzenie czy aktualnie host jest dostępny w sieci i czy funkcjonuje prawidłowo) Warto podkreślić, że aby nie obciążać sieci wprowadzono zasadę, że nie wolno odpowiadać pakietem ICMP, gdy błąd w połączeniu zostanie spowodowany przez inny pakiet ICMP 15

Skanowanie portów Skanowanie portów jest jednym z najczęściej spotykanych rodzajów skanowania w sieciach komputerowych Często jest powiązane z atakami występującymi w warstwach Internetu i host-to-host Zazwyczaj jednym z kroków ataku jest określenie dostępnych usług na komputerze zdalnym oraz które z nich są w stanie nasłuchu na połączenie TCP lub UDP W tym celu wykonuje się skanowanie portów. Skanowanie odbywa się na poziomie protokołów TCP, UDP lub ICMP 16

Skanowanie portów protokołu TCP Protokół TCP (ang. Transmission Control Protocol ) jest strumieniowym protokołem komunikacji między dwoma komputerami Jest on częścią zestawu protokołów (nazywanych również stosem) TCP/IP Umożliwia komunikację połączeniową oraz niezawodne przesyłanie danych między komunikującymi się procesami Zarówno w modelu OSI, jak i również modelu TCP/IP odpowiada warstwie transportowej Charakterystyczny dla protokołu TCP jest sposób nawiązania połączenia, nazywany potrójnym uściskiem dłoni (ang. three-way handshake). 17

Skanowanie portów protokołu TCP Mechanizm komunikacji umożliwił opracowanie sześciu podstawowych (istnieją także pewne warianty pochodne) technik skanowania portów protokołu TCP w zależności od ustawionej flagi lub kilku flag: TCP-connect TCP SYN TCP FIN TCP ACK TCP XMAS Skanowanie rozmiarem okna TCP NULL 18

TCP-connect Skanowania to polega na przeprowadzeniu tzw. pełnego połączenia TCP z danym portem (tzw. skanowanie otwarte). Jest to jedna z najprostszych technik. Nawiązanie połączenia przebiega w trzech etapach: Atakujący wysyła pakiet TCP z ustawiona flagą SYN Skanowany host wysyła pakiet z ustawionymi flagami, na podstawie którego można stwierdzić stan portu: SYN/ACK - zwykle oznacza, że port jest otwarty, RST/ACK - oznacza, że port jest zamknięty. Napastnik odsyła ACK. Metoda TCP-connect jest metodą szybką i skuteczną, jednak rzadko używana przez hakerów, ze względu na to, iż pozostawia ślady w logach systemowych. Próba skanowania dużej ilości kolejnych portów może zwrócić uwagę. 19

TCP SYN Jest nieco bardziej wyrafinowaną odmianą techniki TCPconnect. Wykorzystywana jest tu tzw. półotwarcie połączenia - stąd nazywane jest również skanowaniem półotwartym. Nawiązuje połączenia w dwóch etapach: Atakujący wysyła pakiet TCP z ustawiona flagą SYN Skanowany host wysyła pakiet z ustawionymi flagami: SYN/ACK - zwykle oznacza, że port jest otwarty, RST/ACK - oznacza, że port jest zamknięty. Napastnik nie odsyła odpowiedzi w postaci pakietu z ustawiona flagą ACK. Z punktu widzenia napastnika metoda ta jest bezpieczniejsza. Ponieważ nie zostaje nawiązane pełne połączenie, a skanowany komputer oczekuje odpowiedzi (w postaci pakietu z ACK), połączenie może nie zostać zapisane do dziennika. 20

TCP FIN Technikę TCP FIN zalicza się to tzw. skanowania ukrytego (ang. stealth scanning). Z założenia techniki skanowania ukrytego mają na celu ominięcie reguł filtrowania pakietów używanych w zaporach sieciowych. Na początku napastnik wysyła pakiet z ustawiona flaga FIN. Technika ta wykorzystuje założenie, że zamknięte porty odpowiadają na pakiet FIN, pakietem zawierającym flagę RST tym samym zrywają połączenie. Natomiast otwarty port nie odpowiada na pakiet z flaga FIN. Podczas tego skanowania wykorzystywane są specjalnie wygenerowane pakiety FIN. Niektóre systemy operacyjne m.in. większość systemów Windows wysyła odpowiedź RST nawet, wtedy gdy port jest otwarty. W skutek czego wyniki skanowania tą metoda mogą być błędne. 21

TCP ACK Kolejna technika zaliczana to technik skanowania ukrytego. Wykorzystuje zasadę prawidłowego nawiązywania połączenia z potrójnym uściskiem dłoni, a konkretnie ostatni etap, w którym rozpoczynający komunikację wysyła na koniec ustanowienia połączenia flagę ACK. Na samym początku zostaje wysłany pakiet z ACK pomimo, że nie zostało nawiązane połączenie. W wyniku czego skanujący otrzymuje odpowiedź z flaga RST na porcie, który jest zamknięty, a na porcie otwartym nie powinien otrzymać żadnej odpowiedzi. TCP ACK jest najczęściej używane do poznania działania firewalla na testowanym komputerze. Stad często skanery wykorzystujące tę metodę w wypadku otrzymania flagi RST uznają, że dany port nie jest filtrowany, zaś przy braku odpowiedzi należy uznać port za filtrowany przez zaporę sieciową. 22

TCP XMAS Nazwa tej techniki pochodzi od określenia, iż tego typu skanowania wykorzystuję się pakiet przypominający bogato ozdobioną choinkę (ang. Christmas tree), a to z powodu wielu flag ustawionych w pakiecie TCP. W pakiecie tym ustawione są trzy flagi: ACK, URG, PSH. W rezultacie otrzymuję się jako odpowiedź: RST port jest zamknięty brak odpowiedzi port jest otwarty Skanowanie TCP XMAS jest nieskuteczne na nowsze systemy z rodziny Windows. Wynik skanowania pokaże, że wszystkie porty są zamknięte. 23

Skanowanie rozmiarem okna Jest to rodzaj zaawansowanego skanowania (ang. window size scan) podobnego do skanowania ACK, jednak ta technika możliwa jest tylko dzięki temu, że większość systemów operacyjnych modyfikuje pole rozmiaru okna (jeden z parametrów protokołu TCP) chociaż nie jest to zgodne ze specyfikacją RFC 793. Dzięki zmianie rozmiaru okna możliwe jest ustalenie nie tylko faktu filtrowania skanowanego portu przez firewall, ale także stwierdzenia, czy jest on w stanie nasłuchu gdy jakaś usługa pracuję na danym porcie zmodyfikuje rozmiar okna. 24

TCP NULL Ta technika również jest zaliczana do skanowania typu stealth. Polega na wysłaniu na testowane porty pakietu TCP bez żadnej flagi. W zależności od odpowiedzi można określić stan portu: brak odpowiedzi port jest otwarty RST port jest zamknięty. Skanowanie TCP NULL jest nieskuteczne na nowsze systemy z rodziny Windows. Wynik skanowania pokaże, że wszystkie porty są zamknięte. 25

Skanowanie portów protokołu UDP Protokół UDP (ang. User Datagram Protocol) - protokół datagramów użytkownika. Tak jak protokół TCP, umiejscowiony jest w warstwie transportowej. Protokół UDP charakteryzuje się tym, że: jest to protokół bezpołączeniowy, jest możliwość transmisji do kilku adresów docelowych na raz, nie ma narzutu na nawiązywanie połączenia i śledzenie sesji, nie ma mechanizmów kontroli przepływu. 26

Skanowanie portów protokołu UDP Ze względu na to, że jest to protokół bezpołączeniowy, skanowanie jest o wiele trudniejsze niż w przypadku TCP. Nie można wysłać samego pakietu UDP i oczekiwać na odpowiedź portu UDP takiej odpowiedzi nigdy nie będzie. Podczas skanowania UDP wykorzystywany jest protokół ICMP. Większość komputerów wysyła błąd ICMP_PORT_UNREACH, kiedy otrzyma pakiet skierowany na zamknięty port UDP. W przeciwnym wypadku port może być otwarty lub być filtrowany przez zaporę sieciową. Jest to jednak metoda zawodna, gdyż pakiety UDP nie zawsze docierają do celu. 27

Skanowanie portów protokołu UDP Skaner musi mieć zaimplementowaną kontrole przesyłu pakietów. Drugą wadą skanowania portów UDP jest jego niska wydajność większość systemów operacyjnych ogranicza liczbę przesyłanych komunikatów o błędach ICMP sygnalizowany jest błąd w jednostce czasu. Przykładowo jądro systemu Linux limituje liczbę takich pakietów do dwudziestu na sekundę. 28

Skanowanie portów protokołu UDP Na komputerach z zainstalowanym systemem Linux istnieję alternatywne rozwiązanie. Wykorzystuje ono funkcje systemowe: write() lub recvfrom(). Linux pośrednio informuje użytkownika o wystąpieniu błędu podczas połączenia na porcie UDP. Gdy programowo dwa razy zostanie wywołana funkcja write() na zamkniętym porcie, za drugim razem zostanie zakończona niepowodzeniem. Wywołanie recvfrom() na nie blokowanych gniazdach połączeń UDP zazwyczaj zwraca komunikat ponownej próby EGAIN, jeśli błąd nie został odebrany lub jeśli został, zwracana jest wartość ECONNREFUSED (odrzucone połączenie). Warto dodać, iż mimo, że techniki wykorzystujące funkcję write() lub recvfrom() są rzadko stosowane to ich użycia w Linuksie nie są wymagane uprawnienia administratora w przeciwieństwie metody wykorzystującej ICMP 29

FTP bounce attack Skanowanie FTP bounce attack nazywane jest tez czasem skanowaniem przekierowaniem odpowiedzi serwera FTP. Protokół FTP (ang. File Transfer Protocol ) Protokół Transferu Plików jest protokołem typu klient-serwer, który umożliwia przesyłanie plików z i na serwer poprzez sieć opartą o stos TCP/IP. Protokół ten jest w warstwie aplikacji modelu TCP/IP. FTP do standardowej pracy wykorzystuje dwa porty TCP: port 20 do przesyłania danych oraz port 21 do przesyłania poleceń między klientem a serwerem. FTP bounce attack zalicza się to anonimowych technik skanowania. Serwer FTP wykorzystuje polecenie PORT do kontrolowania połączenia i to za jego pomocą serwer dowiaduję się na jaki adres i port ma wysłać dane. 30

FTP bounce attack U podstaw tej metody skanowania leży fakt, że w specyfikacji protokołu FTP zdefiniowano możliwość trybu pracy serwera FTP, w którym wyniki przekazuje on do innej stacji roboczej niż ta, która zainicjowała sesję. Aby skanować stację o adresie A.B.C.D należy wykonać poniższą procedurę: Skanujący loguje się na serwer FTP (obsługujący przekierowanie odpowiedzi). Podczas sesji FTP skanujący wykonuje komendę PORT A,B,C,D,X,Y, gdzie wyrażenie: X * 256 + Y określa numer skanowanego portu. Jeżeli serwer FTP umożliwia przekierowanie, odpowie komunikatem o kodzie 200, jeżeli nie umożliwia komunikatem o kodzie 500. Napastnik wydaje dowolną komendę (np. LIST) inicjującą transmisję danych na docelowy host (wskazany komendą PORT A,B,C,D,X,Y) Jeżeli skanowany port nie był w stanie nasłuchu, serwer zwróci komunikat o kodzie 426, w przeciwnym wypadku - komunikaty o kodach 150 i 226. 31

FTP bounce attack Najważniejszą zaletą tej metody jest zapewnienie anonimowości skanującemu, ponieważ z perspektywy stacji skanowanej wydaje się, że to serwer FTP prowadzi skanowanie otwarte. Metoda nie gwarantuje jednak pełnej anonimowość w logach serwera FTP pozostają informacje, które mogą doprowadzić do wykrycia inicjatora skanowania portów. Nie zawsze istnieje możliwość wykorzystania serwera FTP do przeprowadzenia tego typu skanowania. Niektóre serwery nie umożliwiają wykonywania na nich polecenia PORT w takiej sytuacji próba ataku zakończy się niepowodzeniem. Większość współczesnych serwerów FTP jest zabezpieczona przed tego typu atakami. 32

Skanowanie modemowe - wardialing Wardialing (lub war dialing) nazywane również z ang. modem scanning to technika polegająca na użyciu modemu do automatycznego skanowania listy numerów telefonicznych, zazwyczaj poprzez dzwonienie pod każdy lokalny numer celem poszukiwania komputerów, faksów lub serwisów BBS (ang. Bulletin Board System) komputerów, które w czasach gdy Internet dopiero się rozwijał, służyły do umieszczania i czytania ogłoszeń, obsługiwania własnej skrzynki e-mail, czy też dokonywania transferu plików. Osoba korzystająca z tej techniki skanowania, najczęściej określana jako haker, używała tak zdobytych w informacji do różnych celów, w tym również do przygotowania włamania. Skanowanie to miało na celu zlokalizowanie modemów w sieci. 33

Skanowanie modemowe - wardialing W zależności od ilości numerów takie skanowanie było procesem dość czasochłonnym. Mechanizm wardialingu polegał na tym, że wydzwaniający komputer wybierał nieznany numer czekając zwykle do dwóch dzwonków - inne komputery podłączone do sieci telefonicznej odbierały zazwyczaj natychmiast. Jeśli telefon dzwonił dwa razy komputer przerywał próbę i wybierał następny numer, podobnie jak po odebraniu przez człowieka lub automatyczną sekretarkę. Natomiast w przypadku odebrania połączenia przez komputer wyposażony w modem lub faks numer był dopisywany do listy. 34

Audyt bezpieczeństwa (skanowanie otoczenia sieciowego) K O N I E C