7
Twierdza | 6/2004 12 System zabezpieczeń jest tak silny, jak silne jest jego najsłabsze ogniwo. Taką sentencję możemy często usłyszeć z ust informatyków zajmujących się bezpieczeństwem systemów informatycznych i często przeczytać na łamach „Twierdzy”. Jest ona prawdziwa dla wszelkiego rodzaju systemów zabezpieczeń. Transmisja danych w lokalnych przewodowych sieciach komputerowych (cz. II) Podsłuchiwanie protokołów Ethernet i TCP/IP Tomasz Polus ([email protected]) Rys. 1. Rzędy nic nieznaczących cyferek, czy podsłuchany fragment pisemnej konwersacji? Istnieje sporo możliwości naduży- cia technologii Ethernet i TCP/IP, spowodowanych między innymi bagatelizowaniem aspektów bez- pieczeństwa transmisji danych, niedopatrzeniami, które powstały jeszcze na etapie projektowym, błędami w implementacji protoko- łów w oprogramowaniu urządzeń sieciowych (a przede wszystkim komputerów) i wieloma innymi przyczynami. Istotne jest jednak nie to, skąd wzięły się luki w za- bezpieczeniach protokołów, ale to, jakiego rodzaju są to luki i jak zabezpieczać się przed ich wyko- rzystaniem przez intruzów. Zanim zaczniesz czytać dalej... Celem pierwszej części (patrz: „Twierdza” nr 5/2004) było zapoznanie Czytelnika z procesami zachodzącymi w urządze- niach sieciowych w trakcie transmisji da- nych w przewodowej sieci komputerowej, opartej na standardach Ethernet i TCP/IP. Po tej lekturze (i mam nadzieję lekturze materiałów uzupełniających), Czytelnik z pewnością potrafi samodzielnie spraw- dzić, czy w danej instalacji do transmisji danych wykorzystano sieć komputerową, a jeśli tak, to określić jej topologię, ustalić podstawowe parametry zastosowanych urządzeń sieciowych i okablowania. Opierając się na powszechnych standar- dach, nie powinno stanowić problemu również określenie innych parametrów, takich jak przepustowość sieci w różnych jej punktach. Tak więc mamy już podstawową wie- dzę z zakresu przebiegu transmisji da- nych w przewodowej sieci komputerowej, czyli znamy zasady funkcjonowania sied- miowarstwowego modelu OSI i wiemy, jak wygląda proces zamiany sygnałów elek- trycznych w dane (i vice versa). Czytelnik wie także, że na różnych warstwach mo- delu OSI działają inne protokoły i są wyko- rzystywane różne standardy komunikacji sieciowej, na przykład Ethernet, Internet Protocol (IP), Transmission Control Pro- tocol (TCP) czy User Datagram Protocol (UDP). Ważne jest, aby potrafić przy- SYSTEMY SIECIOWE

Podsłuchiwanie protokołów Ethernet i TCP/IP - twierdza.info · cia technologii Ethernet i TCP/IP, ... nych w przewodowej sieci komputerowej, opartej na standardach Ethernet i TCP/IP

  • Upload
    ngohanh

  • View
    226

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Podsłuchiwanie protokołów Ethernet i TCP/IP - twierdza.info · cia technologii Ethernet i TCP/IP, ... nych w przewodowej sieci komputerowej, opartej na standardach Ethernet i TCP/IP

Twierdza | 6/2004

12

Twierdza | 6/2004

1313

System zabezpieczeń jest tak silny, jak silne jest jego najsłabsze ogniwo. Taką sentencję możemy często usłyszeć z ust informatyków zajmujących się bezpieczeństwem systemów informatycznych i często przeczytać na łamach „Twierdzy”. Jest ona prawdziwa dla wszelkiego rodzaju systemów zabezpieczeń.

Transmisja danych w lokalnych przewodowych sieciach komputerowych (cz. II)

Podsłuchiwanie protokołów Ethernet i TCP/IP Tomasz Polus

([email protected])

Rys. 1. Rzędy nic nieznaczących cyferek, czy podsłuchany fragment pisemnej konwersacji?

Istnieje sporo możliwości naduży-cia technologii Ethernet i TCP/IP, spowodowanych między innymi bagatelizowaniem aspektów bez-pieczeństwa transmisji danych, niedopatrzeniami, które powstały jeszcze na etapie projektowym, błędami w implementacji protoko-łów w oprogramowaniu urządzeń sieciowych (a przede wszystkim komputerów) i wieloma innymi przyczynami. Istotne jest jednak nie to, skąd wzięły się luki w za-bezpieczeniach protokołów, ale to, jakiego rodzaju są to luki i jak zabezpieczać się przed ich wyko-rzystaniem przez intruzów.

Zanim zaczniesz czytać dalej...

Celem pierwszej części (patrz: „Twierdza” nr 5/2004) było zapoznanie Czytelnika z procesami zachodzącymi w urządze-niach sieciowych w trakcie transmisji da-nych w przewodowej sieci komputerowej, opartej na standardach Ethernet i TCP/IP. Po tej lekturze (i mam nadzieję lekturze materiałów uzupełniających), Czytelnik z pewnością potrafi samodzielnie spraw-dzić, czy w danej instalacji do transmisji danych wykorzystano sieć komputerową, a jeśli tak, to określić jej topologię, ustalić podstawowe parametry zastosowanych urządzeń sieciowych i okablowania. Opierając się na powszechnych standar-dach, nie powinno stanowić problemu również określenie innych parametrów, takich jak przepustowość sieci w różnych jej punktach.

Tak więc mamy już podstawową wie-dzę z zakresu przebiegu transmisji da-nych w przewodowej sieci komputerowej, czyli znamy zasady funkcjonowania sied-miowarstwowego modelu OSI i wiemy, jak wygląda proces zamiany sygnałów elek-trycznych w dane (i vice versa). Czytelnik

wie także, że na różnych warstwach mo-delu OSI działają inne protokoły i są wyko-rzystywane różne standardy komunikacji sieciowej, na przykład Ethernet, Internet Protocol (IP), Transmission Control Pro-tocol (TCP) czy User Datagram Protocol (UDP). Ważne jest, aby potrafić przy-

SYSTEMY SIECIOWE

Page 2: Podsłuchiwanie protokołów Ethernet i TCP/IP - twierdza.info · cia technologii Ethernet i TCP/IP, ... nych w przewodowej sieci komputerowej, opartej na standardach Ethernet i TCP/IP

Twierdza | 6/2004

12

Twierdza | 6/2004

1313

R E K L A M A

najmniej ogólnie określić zastosowanie i właściwości tych protokołów, a także wiedzieć, co to jest ramka i pakiet.

Dlaczego technologia Ethernet umożliwia podsłu-chiwanie transmisji?

Technologia Ethernet została stworzona w taki sposób, że urządzenie do niej podłączone może odbierać ruch gene-rowany w sieci przez wszystkie pozo-stałe urządzenia. Z tego powodu każde urządzenie oparte na standardzie Ether-net ma filtr odrzucający ruch sieciowy, który nie jest przeznaczony dla niego. Takie zabezpieczenie niestety nie wy-starcza – dostępnych jest wiele progra-mów, które wyłączają ten filtr poprzez przełączenie interfejsu sieciowego w tzw. tryb promiscuous, co powoduje, że urządzenie sieciowe zaczyna od-bierać ramki przeznaczone dla innych urządzeń, czyli... podsłuchiwać. Ram-ka, która trafi do interfejsu sieciowego i przejdzie wspomniany filtr, zostaje zdekodowana i przekazana do wyż-szych warstw modelu OSI. Programy włączające tryb promiscuous obecnie są już tak rozbudowane, że potrafią

w czasie rzeczywistym rejestrować pa-kiety przesyłane siecią, łączyć je w ca-łość transmisji i dekodować, wyświetlając na ekranie gotowe do odczytania dane. W środowisku informatycznym określa się to mianem sniffingu (ang. sniff – wąchać), a urządzenie sieciowe i programy służące do podsłuchiwania nazywa się powszech-nie snifferami. Podsłuchaną w ten sposób transmisję (na przykład wideokonferencję, pisemną konwersację prowadzoną za po-mocą komputera (rys. 1), czy kody steru-jące kamerą) można wykorzystać później do wielu innych celów, które są ograni-czone tylko wyobraźnią intruza. Przykła-dowo, podsłuchanie w sieci komunikatów kontrolnych umożliwi intruzowi poznanie szczegółowych informacji niezbędnych do kontrolowania urządzeń pracujących w sieci.

Jak chronić sieć przed pod-słuchem?

Istnieje wiele sposobów ochrony przed podsłuchiwaniem transmisji przez in-truzów, poczynając od zabezpieczeń fizycznych (ochrona fizyczna okablowania i urządzeń sieciowych), poprzez zapobie-ganie rozgłaszaniu danych do wszystkich

urządzeń w sieci Ethernet, aktywne monitorowanie, wykrywanie i eliminowa-nie snifferów w sieci, a kończąc na naj-skuteczniejszej metodzie – szyfrowaniu transmisji.

Kilka słów o ochronie fizycznej

Za jedną z podstawowych zasad konstru-owania zabezpieczonych sieci kompu-terowych uważa się prowadzenie kabli w taki sposób, aby dostęp do nich był znacznie utrudniony, a w wyjątkowych przypadkach prawie niemożliwy. Wynika to z faktu, że potrzeba ingerencji w oka-blowanie funkcjonującej sieci zdarza się niezwykle rzadko – w przypadku fizyczne-go uszkodzenia kabla.

Jeżeli jednak okablowanie zosta-ło położone w taki sposób, że intruz w miarę łatwo może uzyskać do niego dostęp, będzie mógł zastosować mało popularną, ale skuteczną metodę pro-wadzenia podsłuchu transmisji sieciowej przy wykorzystaniu przelotki (ang. TAP, Test Access Port). Urządzenia te funk-cjonują na warstwie pierwszej modelu OSI i umożliwiają intruzowi wpięcie się w kabel, w większości przypadków bez

SYSTEMY SIECIOWE

Page 3: Podsłuchiwanie protokołów Ethernet i TCP/IP - twierdza.info · cia technologii Ethernet i TCP/IP, ... nych w przewodowej sieci komputerowej, opartej na standardach Ethernet i TCP/IP

Twierdza | 6/2004

14

Twierdza | 6/2004

1515

spowodowania długotrwałych strat i spo-wolnień w przesyłanym strumieniu danych (rys. 2). Profesjonalne przelotki mają wbudowane bufory, aby uniknąć strat w przechwytywaniu danych, a niektóre mogą nawet monitorować ruch w sieci światłowodowej, która uchodzi za niezwy-kle trudną do podsłuchania. Co ciekawe, przelotki są konstruowane w taki sposób, że jeśli zabraknie prądu, nie przeszkodzi to w przepływie ruchu sieciowego w prze-wodzie, do którego ją podłączono. Ujaw-nienie takiego urządzenia zwykle wymaga znalezienia go podłączonego bezpośred-nio do kabla, zatem z pewnością warto okresowo prowadzić przeglądy okablo-wania w monitorowanej sieci.

Rys. 2. Typowa przelotka do podsłuchiwania ruchu sieciowego w Ethernecie.

Znacznie większe możliwości ma intruz, któremu uda się uzyskać dostęp do urządzeń sieciowych, które rozdzielają ruch w typowej sieci, czyli koncentratory (huby) i przełączniki (switche). W takim przypadku nie musi on ingerować w oka-blowanie, ponieważ wystarczy, że podłą-czy się własnym kablem do odpowiednie-go portu urządzenia.

Profesjonalna ochrona fizyczna oka-blowania i urządzeń sieciowych wykracza daleko poza ramy tego opracowania, dla-tego zdecydowanie zalecam skorzystanie z innych źródeł wiedzy na ten temat, mię-dzy innymi z artykułów w „Twierdzy”.

Dlaczego nie powinno się stosować hubów

Warto zwrócić uwagę na istotne różnice pomiędzy hubami a switchami w zakresie bezpieczeństwa transmisji sieci. Hub jest znacznie prostszym (i zwykle dużo tańszym) urządzeniem, pracującym w pierwszej warstwie modelu OSI, ponie-waż potrafi tylko kopiować sygnały elek-tryczne. Każdy sygnał elektryczny, który hub otrzyma na jednym ze swoich portów, zostaje natychmiast skopiowany na wszyst-kie pozostałe porty urządzenia. W ten sposób, dane przeznaczone dla jednego urządzenia zostają dostarczone do wszyst-kich, powodując przy okazji dodatkowe obciążenie sieci. Zatem z punktu widzenia bezpieczeństwa i wydajności sieci, stoso-wanie hubów jest niedopuszczalne.

Switch, jako urządzenie wyższej klasy, funkcjonujące w drugiej warstwie modelu OSI, może wykonywać znacznie bardziej zaawansowane zadania i być zarządzany przez operatora zarówno z konsoli, jak i poprzez sieć. Od momentu uruchomie-nia switcha, zapamiętuje on wszystkie adresy ethernetowe MAC urządzeń wraz z numerami własnych portów, do których te urządzenia są podłączone. Wszystkie te informacje rejestruje w specjalnej tablicy adresów MAC. Po otrzymaniu sygnałów elektrycznych, switch zamienia je w ram-kę ethernetową, z której odczytuje adresy MAC nadawcy i odbiorcy. Dzięki temu może skopiować ramkę tylko na ten port, do którego jest podłączone urządzenie-odbiorca. W ten sposób switch zapobiega rozgłaszaniu danych do wszystkich urzą-dzeń w sieci, eliminując jeden z podsta-wowych problemów z bezpieczeństwem transmisji danych w technologii Ethernet. Przy okazji zmniejsza to obciążenie sieci, a zatem zysk pojawia się również w kwe-stii wydajności (rys. 3).

Nadal jednak intruz ma szansę pod-łączyć się do sieci własnym kablem do portu na switchu. Warto również wie-dzieć, że większość zaawansowanych switchów ma wbudowany specjalny port przeznaczony do monitorowania całego ruchu. Na port ten kopiuje się część lub cały ruch przechodzący przez switch. Je-śli atakującemu uda się uzyskać fizyczny dostęp do switcha, istnieje pewne ryzyko, że zaloguje się do niego (bo niestety większość switchów jest instalowanych z domyślnymi hasłami dostępu) i włączy tę funkcję (tzw. span port) dla siebie, uzy-skując możliwość podsłuchiwania całego ruchu, który przechodzi przez switch.

Na szczęście, większość nowocze-snych zarządzalnych switchów umoż-liwia zastosowanie wielu dodatkowych zabezpieczeń, między innymi przypisa-nie na stałe określonego adresu MAC do portu, wyłączenie nieużywanych

portów i stosowanie tzw. VLAN-ów, czyli wirtualnych podsieci. Pierwsza z funkcji zapewnia, że jeśli intruz podłączy się do portu i będzie mógł wysyłać do swit-cha sygnały elektryczne, to nie będzie mógł się z nim porozumiewać w warstwie drugiej, ponieważ jego MAC będzie inny niż ten, który został na stałe określony. Dzięki temu podsłuchiwanie transmisji nie będzie możliwe, oczywiście przy zało-żeniu, że intruz nie zna adresu MAC, który przypisano na switchu do danego portu. W przeciwnym razie, może sobie taki sam MAC ustawić na własnym interfejsie i wte-dy komunikacja w warstwie drugiej będzie możliwa. Opisany sposób konfiguracji switcha w środowisku informatycznym nazywa się statycznym mapowaniem MAC do portu.

Druga z wymienionych funkcji umożli-wia administratorowi switcha wyłączenie nieużywanych portów. W ten sposób in-truz, który chciałby podłączyć się do swit-cha, musi najpierw fizycznie odłączyć istniejący kabel i podłączyć się w jego miejsce, a to będzie oznaczało, że jed-no z urządzeń w sieci straci połączenie i administrator będzie musiał zareagować. Trzecia funkcja – stosowanie VLAN-ów – umożliwia przeprowadzenie logicznej segmentacji fizycznej sieci na podsieci (tzw. domeny rozgłoszeniowe Ethernet). W ten sposób ramki ethernetowe rozgła-szane do wszystkich, w rzeczywistości są przełączane tylko na porty przypisane do tego samego VLAN-u.

Dlaczego switch nie za-wsze zabezpiecza przed podsłuchem

W celu rozwinięcia tematu, należy wyjaśnić, czym jest protokół ARP (Advan-ced Resolution Protocol). Jest to protokół wykorzystywany przez Internet Protocol (IP) w sieci Ethernet, do odwzorowania

Rys. 3. Zasadnicze różnice pomiędzy hubem a switchem.

SYSTEMY SIECIOWE

Page 4: Podsłuchiwanie protokołów Ethernet i TCP/IP - twierdza.info · cia technologii Ethernet i TCP/IP, ... nych w przewodowej sieci komputerowej, opartej na standardach Ethernet i TCP/IP

Twierdza | 6/2004

14

Twierdza | 6/2004

1515

(przekładania) adresów IP na adresy sprzętowe MAC. Protokół ARP stanowi swego rodzaju interfejs pomiędzy dwiema warstwami modelu OSI: sieciową i łącza danych, odpowiada on za odszukanie adresu MAC urządzenia, które ma przypi-sany dany adres IP. W ogólnym ujęciu po-lega to na wysłaniu specjalnego pakietu

ARP do wszystkich z zapytaniem, kto uży-wa danego adresu IP. Jedno z urządzeń odpowiada na to zapytanie i w ten sposób nadawca zapamiętuje na przyszłość, do kogo należy wysyłać wszystkie pakiety skierowane na ten konkretny adres IP.

Protokół ARP jest silnie związany z zagadnieniem statycznego mapowania

MAC, które oprócz wspomnianych powy-żej korzyści, znacząco utrudnia podsłuchi-wanie metodą ARP spoofing (fałszowanie ARP). Metoda ta polega na wymuszeniu na switchu, aby zaczął przekierowywać do intruza ramki przeznaczone dla innego urządzenia. Intruz może to zrobić poprzez bezustanne wysyłanie ramek, w których będzie fałszował źródłowy adres MAC, tak aby był to adres urządzenia, które chce podsłuchiwać.

Opisana powyżej funkcja switcha „uczenia się” adresów MAC spowoduje, że cały czas będzie on zapamiętywał, iż urządzenie podsłuchiwane o danym adresie MAC jest podłączone do portu, do którego w rzeczywistości podłączony jest intruz. W ten sposób wszystkie ramki kierowane do urządzenia zostaną skiero-wane na port intruza.

Oczywiste jest, że urządzenie-ofiara będzie nadal wysyłać ramki ze swoim adresem MAC (powodując odwrócenie całego procesu, bo switch uczy się na bieżąco). Transmisja sieciowa będzie zatem utrudniona i urządzenie podsłu-chiwane może mieć problemy z komu-nikacją. Oprócz tego, jeśli urządzenie to w pewnym momencie przestanie otrzy-

Rys. 4. Atak typu ARP spoofing, umożliwiający sniffing w sieci przełączanej.

R E K L A M A

SYSTEMY SIECIOWE

Page 5: Podsłuchiwanie protokołów Ethernet i TCP/IP - twierdza.info · cia technologii Ethernet i TCP/IP, ... nych w przewodowej sieci komputerowej, opartej na standardach Ethernet i TCP/IP

Twierdza | 6/2004

16

Twierdza | 6/2004

1717

mywać jakiekolwiek ramki, komunikacja zostanie zerwana i intruz nie będzie miał już co podsłuchiwać. Z tego powodu, intruz musi postępować bardzo ostrożnie i wysyłać swoje ramki w odpowiednich odstępach czasu, aby przechwycić możliwie dużą ilość danych, nie blokując właściwej transmisji.

Innym typem ataku służącego do pro-wadzenia podsłuchu w sieci przełączanej jest odmiana ARP spoofingu, również znacząco utrudniana poprzez zdefinio-wanie statycznych mapowań adresów MAC do portów na switchu. Zwykle atak ten umożliwia podsłuchanie transmisji pomiędzy dwoma urządzeniami i polega na tym, że intruz wysyła do obu pakiety spreparowane, tak aby urządzenia-ofiary zapamiętały błędnie, że ich partner w ko-munikacji o danym adresie IP ma adres MAC, który tak naprawdę jest przypisany do interfejsu sieciowego zainstalowanego w urządzeniu intruza. Po takiej operacji (powtarzanej odpowiednio często), oba urządzenia mają niewłaściwe wpisy w ta-blicach ARP i każdy pakiet w transmisji od jednego do drugiego w rzeczywistości jest kierowany do urządzenia intruza, któ-re funkcjonuje w roli bramy i bez zakłóceń przepuszcza całą transmisję, ale rejestru-jąc wszystko (rys. 4).

Opisane tutaj ataki wydają się bar-dzo groźne, ale zaawansowane funkcje zarządzania siecią, dostępne w swit-chach, znacząco ograniczają możliwości ich przeprowadzenia i wykorzystania. Jednak nawet prawidłowo skonfiguro-wany i zabezpieczony switch może zo-stać oszukany poprzez przełączenie go z podstawowego trybu bridging w tryb repeating, w którym wszystkie ramki są rozgłaszane na wszystkie porty. Me-toda ta polega na przepełnieniu tablic adresowych switcha wieloma fałszywymi adresami MAC. Można to zrobić poprzez generowanie dużego ruchu, czyli na przy-kład wysyłanie przez switch ciągłego strumienia losowych danych (różnych adresów MAC), który w końcu przepełni pamięć urządzenia...

Jak wykryć podsłuch w sieci?

Teoretycznie nie jest możliwe wykrycie sniffera, ponieważ pracuje on w trybie pasywnym: rejestruje pakiety, niczego nie wysyłając. Jednak w praktyce okazuje się, że w pewnych warunkach możliwe jest wykrycie podsłuchu w sieci. W teorii przypomina to wykrywanie odbiornika telewizyjnego lub radiowego – robi się to w celu uzyskania listy abonentów. Zacznijmy jednak od sposobów najprost-szych.

Z pewnością warto okresowo weryfi-kować stan połączeń na switchu (kable, diody) w celu sprawdzenia, czy obecne są jakieś połączenia, których być nie po-winno. Z tego samego powodu warto mieć również dobrze opisane wszystkie porty na switchu, wraz z przypisanymi do nich adresami MAC.

Jeżeli w sieci istnieją standardowe komputery PC, służące na przykład do kontrolowania innych urządzeń siecio-wych, warto sprawdzić, czy intruz nie zdo-łał zainstalować snifferów na tych kompu-terach. Sniffery są z reguły sprytnie ukry-te w systemie operacyjnym. Najlepszym sposobem ich wykrycia jest wnikliwe sprawdzenie systemu, a przynajmniej upewnienie się, czy wszystkie procesy (programy) działające w systemie są le-galne i czy interfejsy sieciowe nie mają aktywnego trybu promiscuous. Dokładne instrukcje, jak to zrobić, są jednak za-leżne od danego systemu operacyjnego i daleko wykraczają poza ramy niniejsze-go opracowania. Dobry administrator sieci powinien jednak bez problemów poradzić sobie z tym zadaniem.

Sniffer można również wykryć, dzia-łając podstępem, korzystając z tego, że intruz z pewnością będzie chciał wykorzystać informacje, jakie uda mu się podsłuchać. Metoda polega na tym, że instaluje się w sieci fałszywą usługę, która w rzeczywistości jest tylko swego rodzaju wabikiem i nie realizuje żadnych operacji. Istotne jest to, aby usługa miała możliwość rejestrowania adresów siecio-

wych klientów, którzy próbują się do niej podłączyć. Następnie dowolna osoba próbuje skorzystać z tej usługi, podaje swoje dane logowania (na przykład hasło dostępowe) i chwilę później rozłącza się. Jeżeli intruz przechwyci hasło, zapewne niedługo potem będzie chciał to hasło wykorzystać, a usługa zarejestruje ad-res, z którego intruz się połączy. W ten sposób można dowiedzieć się, czy sieć jest na podsłuchu.

Istnieje sporo bardziej skomplikowa-nych metod wykrywania snifferów, z któ-rych większość opisano poniżej. Wyma-gają one jednak bardzo zaawansowanej wiedzy na temat działania protokołów, jak również umiejętności samodzielnego przygotowywania i wysyłania pakietów sieciowych, co z kolei wymaga specja-listycznego oprogramowania. Na szczę-ście, są programy, w które wbudowano wszystkie niezbędne funkcje umożliwia-jące łatwe skorzystanie z najbardziej po-pularnych metod wykrywania snifferów. Jednym z nich (dla środowiska Windows) jest L0pht AntiSniff (rys. 5). Znacznie więcej tego typu narzędzi można jednak znaleźć na platformie Unix, z pewnością godnym polecenia programem unikso-wym jest SniffDet.

Trzeba pamiętać, że statyczne przypi-sanie adresów MAC do portów na switchu może spowodować problemy przy wyko-nywaniu poniżej opisanych operacji, dlate-go można w tym celu użyć jednego portu, na którym ochrona ta nie będzie aktywna.

Rys. 5. Okno programu L0pht AntiSniff.

SYSTEMY SIECIOWE

Page 6: Podsłuchiwanie protokołów Ethernet i TCP/IP - twierdza.info · cia technologii Ethernet i TCP/IP, ... nych w przewodowej sieci komputerowej, opartej na standardach Ethernet i TCP/IP

Twierdza | 6/2004

18

Twierdza | 6/2004

1919

Pierwsza z zaawansowanych metod wy-krywania snifferów polega na zdalnym sprawdzeniu, czy urządzenie sieciowe ma wyłączony filtr adresów MAC. Załóż-my, że maszyna podejrzewana o sniffing ma adres IP 192.168.10.222 i adres MAC 00-55-21-A2-60-10 i znajduje się w tym samym segmencie Ethernet. Przygotowujemy pakiet, którego odbiorcą ma być sprawdzane urządzenie. Jednak zamiast umieścić w pakiecie właściwy adres MAC odbiorcy, umieszczamy fał-szywy adres MAC, przy czym adres IP pozostaje prawidłowy. Jeśli pojawi się odpowiedź od podejrzanego komputera, będzie to oznaczało, że wyłączono na nim filtr adresów MAC, gdyż standardowo filtr ten powinien odrzucić nasz pakiet. Oczy-wiście, prawdopodobnie będzie to ozna-czało, że urządzenie podsłuchuje sieć. W praktyce operacja może okazać się nieco bardziej skomplikowana, ponieważ w różnych systemach operacyjnych ina-czej zaimplementowano filtr MAC.

Opisywana tutaj technika może zostać rozszerzona o wykorzystanie protokołu ICMP (Internet Control Message Proto-col), którego jednym z podstawowych zadań jest raportowanie błędów w trans-misji. Przykładowo, umieszczenie w pa-kiecie IP niewłaściwych wartości zwykle spowoduje, że urządzenie, które odbierze taki pakiet, wygeneruje błąd ICMP i ode-śle odpowiedni komunikat do nadawcy. Zatem jeśli chcemy sprawdzić, czy jakieś urządzenie podsłuchuje w sieci, można spróbować wysłać w sieci nieprawidłowy pakiet zaadresowany do innego odbiorcy. Jeśli otrzymamy odpowiedź od podejrza-

nego urządzenia, prawdopodobnie pod-słuchuje ono transmisję w sieci.

Podobne rezultaty można osiągnąć wykorzystując zamiast ICMP, protokół ARP, który umożliwia odszukanie adresu MAC urządzenia (czyli pośrednio jego lo-kalizacji w sieci) na podstawie jego adre-su IP. W uproszczeniu, metoda ta polega na przesłaniu do dowolnego legalnego urządzenia w sieci pakietu ARP, z zapy-taniem o adres MAC urządzenia, któremu

został przypisany dany adres IP. Urzą-dzenie odbiorca zignoruje to zapytanie (bo nie ma wystarczających informacji), ale jeśli podejrzane urządzenie rzeczy-wiście podsłuchuje w sieci i również przechwyciło nasze zapytanie, zapewne odeśle odpowiedź. Sprawę komplikuje fakt, że profesjonalny podsłuch zapewne będzie przygotowany przy wykorzystaniu kabla typu „receive only”, czyli umożliwia-jącego tylko odbiór danych.

Zrozumienie kolejnej metody wy-krywania snifferów wymaga znajomości podstaw działania usługi DNS (Domain Name System) i revDNS (Reverse Domain Name System). W uproszczeniu, usługa revDNS umożliwia znalezienie nazwy sieciowej urządzenia (na przykład kame-ra11.monitoring.pl) o znanym adresie IP. Otóż wiele programów umożliwiających prowadzenie podsłuchu w sieci wykonuje automatyczne zapytania revDNS odno-śnie do przechwyconych adresów IP. Z tego powodu warto prowadzić w sieci monitoring zapytań do serwerów DNS. Doświadczony administrator z pewnością będzie umiał uruchomić i prowadzić moni-toring tej usługi.

Trzeba przyznać, że większość z opi-sanych tutaj metod wymaga dużego do-świadczenia i zaawansowanych narzędzi (na przykład do przygotowania własnych pakietów). Z tego powodu w przypadku, gdy istnieje realne zagrożenie, że w sieci znajduje się sniffer, dobrym pomysłem jest zatrudnienie firmy lub osoby, które

Rys. 6. Zdalne sprawdzenie statusu filtra adresów MAC na urządzeniu sieciowym.

Rys. 7. Wykrywanie snifferów metodą znajdowania urządzeń udzielających odpowiedzi na zapytania, których nie powinny były otrzymać.

SYSTEMY SIECIOWE

Page 7: Podsłuchiwanie protokołów Ethernet i TCP/IP - twierdza.info · cia technologii Ethernet i TCP/IP, ... nych w przewodowej sieci komputerowej, opartej na standardach Ethernet i TCP/IP

Twierdza | 6/2004

18

Twierdza | 6/2004

1919

specjalizują się w zabezpieczaniu syste-mów informatycznych. Z pewnością będą oni potrafili wykorzystać opisane metody (a być może także inne, które nie znalazły tu swego miejsca, na przykład metoda modyfikacji pola source-route w pa-kietach IP). Również mogą spróbować przeprowadzić inne, rzadko stosowane (a jednak skuteczne) operacje, takie jak skanowanie techniką TDR (Time-Do-main Reflectometer). Metoda ta polega na wykorzystaniu radaru w stosunku do medium transmisyjnego. Urządzenie wysyła impuls do przewodu, a następnie wyświetla odebrane odbicia. Spogląda-jąc na wykresy, ekspert może ocenić, czy do przewodu są podłączone jakieś urządzenia, których nie powinno tam być. Istnieje również duża szansa, że określi on lokalizację przelotki (ang. tap). Można w ten sposób wykryć sprzętowe sniffery podłączone do medium transmisyjnego, które są całkowicie niewidoczne dla użytkowników sieci. Technika TDR była często wykorzystywana na kablach kon-centrycznych Ethernet w celu wykrycia przelotek typu vampire, ale obecnie pa-nuje na świecie topologia gwiazdy i oka-blowanie typu skrętka.

Szyfrowanie transmisji danych

Odpowiedni projekt architektury sieci, stosowanie prawidłowo skonfigurowa-nych switchów, monitorowanie i wykrywa-nie snifferów... – wszystkie te czynności mogą znacząco przyczynić się do stwo-rzenia środowiska wolnego od podsłu-chu. Niestety nie dają one żadnej gwaran-cji poufności danych, ponieważ zawsze istnieje choćby minimalne ryzyko, że ktoś nieupoważniony przechwyci dane z sieci.

Z tego powodu zalecane jest zastoso-wanie jeszcze innego podejścia do pro-blemu – szyfrowanie transmitowanych danych. Szyfrowanie stosuje się po to, aby nawet po przechwyceniu przez in-truza dane były dla niego bezużyteczne przez pewien czas, a konkretnie do czasu utraty ich przydatności lub do momentu złamania szyfru, nawet na najbardziej zaawansowanych komputerach.

Niestety oznacza to również, że część mocy obliczeniowej urządzeń musi zo-stać przeznaczona na stałe obliczenia związane z szyfrowaniem transmisji. Trzeba to wziąć pod uwagę przy imple-mentowaniu tego rodzaju zabezpieczeń,

ewentualnie można wyposażyć sieć w dodatkowe specjalistyczne szyfratory, które będą zapewniały stałe szyfrowanie w najbardziej istotnych fragmentach sieci. Istotne jest, aby siła szyfrowania była uzależniona od czasu przydatności danych. Nie ma sensu szyfrować da-nych tak mocno, że ich odszyfrowanie potrwa tysiące lat, skoro stracą one swoją przydatność już po miesiącu. Siła szyfrowania oczywiście nie pozostaje bez znaczenia dla obciążenia proceso-rów w urządzeniach.

Obecnie jest dostępnych wiele gotowych rozwiązań szyfrowania, które wystarczy tylko zaimplementować do wła-snych potrzeb, między innymi coraz bar-dziej popularne rozwiązania typu VPN (Virtual Private Networking), protokoły IPSEC (Internet Protocol Security), SSH (Secure Shell) czy SSL (Secure Sockets Layer).

Zastosowanie odpowiednich algoryt-mów i protokołów szyfrowania w stosunku do transmitowanych danych nie jest pro-stym zadaniem i przekracza ramy tej czę-ści naszego cyklu artykułów, ale doświad-czony administrator sieci z pewnością sobie z tym poradzi.

R E K L A M A

SYSTEMY SIECIOWE