Internetowe zagrożenia bezpieczeństwa

background image

Bezpieczeństwo – Zagrożenia internetowe

Opracował: Zbigniew Suski

1

Internetowe zagrożenia bezpieczeństwa

Główne zagadnienia wykładu

Przyłączenie sieci do Internetu naraża ją na wiele dodatkowych niebezpieczeństw. Podstawowe typy ataków:

.

Ataki korzystające z haseł – są to najchętniej stosowane metody. Polegają na podjęciu próby przeniknięcia do

systemu przez podanie identyfikatora użytkownika i hasła. Są to tzw. ataki słownikowe.

.

Węszenie – ataki polegają na przechwytywaniu pakietów wysyłanych podczas logowania, zawierających numery

kart kredytowych, przesyłki pocztowe i inne.

.

Ataki korzystające z autoryzowanego dostępu – dotyczą systemów opartych na systemie korzystającym z

mechanizmu autoryzowanego dostępu (UNIX, Windows NT, VMS). Użytkownicy mogą tworzyć pliki zawierające
nazwy zaufanych serwerów (np. .rhosts). Połączenie z systemu zaufanego można uzyskać bez podawania ha-
sła (np. rlogin). Wielu administratorów umieszcza takie pliki w katalogu głównym.

.

Ataki poprzez podszywanie się za pomocą protokołu IP – polegają na użyciu adresów IP umieszczanych w

przesyłanych pakietach. Do komputera odbiorcy wysyłane są fałszywe informacje o komputerze nadawcy, które
mają świadczyć, że jest on bezpieczny. Odpowiedzi nie docierają do włamywacza, lecz do komputera pod który
się on podszywa.

.

Ataki polegające na nawiązaniu kontaktu z autoryzowanym użytkownikiem – polegają np. na wysłaniu do

użytkownika listu pocztą elektroniczną lub zatelefonowaniu i przedstawieniu się jako administrator sieci. Prosi
on użytkownika o podanie hasła w celu wykonania pewnych czynności administracyjnych.

.

Ataki polegające na przewidywaniu numerów sekwencji – to forma podszywania się za pomocą protokołu IP.

Dwa komputery otwierające połączenie uzgadniają parametry transmisji wysyłając pakiet początkowy zawiera-
jący numer sekwencji. Numery te są tworzone na podstawie czasu. Znane są również algorytmy ich tworzenia.
Po zarejestrowaniu w różnych porach dniach kilku numerów, można przewidzieć sekwencję, która umożliwi
otwarcie połączenia.

.

Ataki polegające na przechwyceniu sesji – umożliwiają przesyłanie i odbieranie danych z zaatakowanego

systemu. Włamywacz szuka istniejącego już połączenia i węsząc próbuje uzyskać adres użytkownika. Następ-
nie przejmuje sesję. Komputer właściwy jest odcinany.

.

Ataki korzystające ze słabych punktów w systemie – to ataki korzystające z autoryzowanego dostępu lub

inne. Wszystkie systemy mają swoje słabe punkty. Np. IIS zatrzymywał się po odebraniu określonego adresu
zawierającego wiele cyfr. Adres ten był inny dla każdego systemu.

.

Ataki korzystające ze współużytkowanych bibliotek – polegają na zastępowaniu niektórych funkcji bibliotecz-

nych wykorzystywanych przez system operacyjny i aplikacje.

Klasyfikacja zagrożeń

W literaturze można znaleźć próby formalnego sklasyfikowania zagrożeń. Są to tzw. Stopnie Zagrożenia Inter-

netowego (Internet Threat Level - ITL). Większość problemów dotyczących ochrony można zaliczyć do jednej z kategorii:

.

zagrożenia lokalne,

.

zagrożenia zdalne,

.

zagrożenia spoza firewalla

Kategorie te można podzielić dalej na:

.

dostęp do odczytu,

.

dostęp do zapisu i wykonania użytkownika zwykłego,

.

dostęp do zapisu i wykonania użytkownika uprzywilejowanego.

Atak, który polega na odmowie usługi, trudno jest zaliczyć do którejś kategorii i traktowany jest jako klasa 0.

background image

Bezpieczeństwo – Zagrożenia internetowe

Opracował: Zbigniew Suski

2

Klasa

Opis

0

Odmowa usługi - użytkownicy nie mają dostępu do zasobów

1

Lokalni użytkownicy mogą uzyskać dostęp do odczytu plików systemu lokalnego

2

Lokalni użytkownicy mogą uzyskać dostęp do zapisu/wykonania plików użytkowników zwykłych

3

Lokalni użytkownicy mogą uzyskać dostęp do zapisu/wykonania plików użytkownika uprzywilejowanego

4

Użytkownicy zdalni z tej samej sieci mogą uzyskać dostęp do odczytu plików systemu lokalnego z wnę-
trza systemu lub poprzez sieć

5

Użytkownicy zdalni z tej samej sieci mogą uzyskać dostęp do zapisu/wykonania plików użytkowników
zwykłych z wnętrza systemu lub poprzez sieć

6

Użytkownicy zdalni z tej samej sieci mogą uzyskać dostęp do zapisu/wykonania plików użytkownika
uprzywilejowanego z wnętrza systemu lub poprzez sieć

7

Użytkownicy zdalni z innej sieci mogą uzyskać dostęp do odczytu plików systemu lokalnego z wnętrza
systemu lub poprzez sieć

8

Użytkownicy zdalni z innej sieci mogą uzyskać dostęp do zapisu/wykonania plików użytkowników zwy-
kłych z wnętrza systemu lub poprzez sieć

9

Użytkownicy zdalni z innej sieci mogą uzyskać dostęp do zapisu/wykonania plików użytkownika uprzy-
wilejowanego z wnętrza systemu lub poprzez sieć

Poziom zagrożenia powinien być oceniany na podstawie kilku czynników:

.

zadań systemu,

.

tajności danych w systemie,

.

wagi integralności danych,

.

wagi nieprzerwanego dostępu,

.

rodzaju użytkowników,

.

relacji pomiędzy systemem ocenianym a innymi systemami (zaufanie, eksport plików).

Najczęściej wykorzystywane fazy ataku
1. Zdobycie

konta: poprzez uzyskanie pliku z hasłami lub sniffing.

2. Zdobycie przywilejów administratora: polega na wykorzystaniu nieszczelności takich jak skrypty SUID, nieograni-

czony dostęp do NFS (odczyt i zapis), serwer NIS.

3. Rozszerzenie dostępu: czyli atak na inne komputery sieci. Są to modyfikacje demonów, instalowanie snifferów,

podszywanie się.

Sniffing

Sniffing czyli wąchanie jest zagrożeniem biernym. Polega na odczytywaniu danych przez węzeł, dla którego nie

były one przeznaczone. Możliwość taka jest dostępna w wielu urządzeniach (np. analizator sieci). Urządzenia wykorzy-
stujące sniffing są pożyteczne i konieczne. Mogą być jednak wykorzystywane w złych zamiarach. Np. do przechwytywa-
nia haseł, odczytywania poczty, odczytywania przesyłanych rekordów baz danych.

Wszystkie interfejsy sieciowe w segmencie sieci mają dostęp do wszystkich transmitowanych w nich danych.

Każdy interfejs powinien mieć inny adres. Istnieje też przynajmniej jeden adres rozgłoszeniowy (broadcast) odpowiadają-
cy wszystkim interfejsom. Normalnie, interfejs reaguje tylko na pakiety, które w polu adresowym mają jego adres, lub
adres rozgłoszeniowy.

Sniffer przełącza interfejs w tryb podsłuchu, dzięki czemu interfejs może analizować każdy pakiet w danym seg-

mencie sieci. Jest to bardzo przydatne narzędzie w rękach administratora, służące do ustalania przyczyn nieprawidłowe-
go działania sieci. Można ustalić udział poszczególnych protokołów w ruchu sieciowym, udział poszczególnych hostów w
generowaniu i odbieraniu pakietów.

Oprogramowanie umożliwiające sniffing jest w tej chwili łatwo dostępne w Internecie. Oznacza to, że mogą z

niego korzystać również potencjalni intruzi. Sniffing danych z sieci prowadzi do utraty tajności pewnych informacji, które
powinny zostać tajne. Są to m.in.:

Hasła.

Numery kont finansowych (np. kart kredytowych).

Dane prywatne (np. zawarte w poczcie elektronicznej).

Informacje

protokołów niskiego poziomu.

Walka ze sniffingiem polega na właściwej segmentacji sieci. W idealnej sytuacji każdy komputer powinien należeć do
osobnego segmentu. Ideał też można osiągnąć poprzez stosowanie przełączników zamiast koncentratorów.

Inne rozwiązanie polega na wykorzystaniu pojęcia zaufania pomiędzy komputerami. Komputery ufające sobie

mogą znajdować się w tym samym segmencie. Wykorzystuje się zabezpieczenia systemu operacyjnego oraz wiarygod-

background image

Bezpieczeństwo – Zagrożenia internetowe

Opracował: Zbigniew Suski

3

ność osób mających dostęp do pomieszczeń i komputerów. Zaufanie, to nie tylko kwestia etyki ale również umiejętności
administratora i użytkownika.

Aby stworzyć segmenty godne zaufania, należy ustawić bariery pomiędzy segmentami bezpiecznymi i niezabez-

pieczonymi gdyż niektóre segmenty pozostaną niezabezpieczone.

W charakterze bariery można wykorzystać mosty (bridge). Relacja zaufania może być jedno lub dwukierunkowa

(wzajemna). W przypadku jednokierunkowej, komputery mniej bezpieczne ufają bardziej bezpiecznym lecz nie odwrotnie.

Zabezpieczenie przed sniffingiem poprzez instalowanie barier sprzętowych należy uznać za ostatnią linię obrony.

Pierwszą linia obrony jest unikanie transmisji jakichkolwiek cennych danych. Dotyczy to zwłaszcza haseł. Bariery mogą
ograniczać włamania do systemów lokalnych. Jeżeli użytkownicy mogą pracować zdalnie, to informacja może zostać
przechwycona poza siecią lokalną. Wobec tego jednym z radykalnych rozwiązań jest zakaz dostępu zdalnego.

Jednym ze środków ochrony haseł jest protokół rlogin. Pierwotnie był stosowany przy nawiązywaniu połączeń

terminalowych w systemie Unix. Protokół wymaga aby serwer zaufał klientowi co do weryfikacji użytkownika. Na serwerze
umieszczany jest plik (.rhosts), wskazujący jacy użytkownicy (również z jakich komputerów) mogą połączyć się z okre-
ślonym kontem. Użytkownik wykorzystując rlogin może wejść do systemu bez podawania jakichkolwiek danych. Musi on
ufać, że serwer jest wystarczająco bezpieczny i że nikt nie będzie mógł w sposób nieuprawniony zmienić pliku rhosts.
Nie powinno być również możliwe odczytanie tego pliku, gdyż mogłoby to spowodować atak pośredni poprzez komputer,
z którego jest możliwe połączenie rlogin.

Kolejnym plikiem związanym z rodziną protokołów rlogin (protokół rlogin jest wykorzystywany przez całą rodzinę

tzw. r-poleceń (rsh,rcp,)) jest plik ekwiwalencji hostów /etc/hosts.equiv. Każdy użytkownik komputera wymienionego w
tym pliku może łączyć się bez podania hasła z kontem o tym samym identyfikatorze na komputerze, na którym znajduje
się plik. Jest to wygodny mechanizm, gdyż unika się w ten sposób konieczności tworzenia plików rhosts. Otwiera to jed-
nak drogę do włamań przez spoofing ARP i spoofing nazw systemów. Zaleca się wobec tego nie tworzenie takich plików.
W tej chwili korzystanie z r-poleceń nie jest uważane za bezpieczne.

Relacje zaufania i podział na segmenty

Spoofing

Spoofing czyli podszywanie się pod inny komputer może być realizowane w każdej warstwie protokołów. Według

standardu IEEE 802 (odmianą tego standardu jest Ethernet), każdy interfejs sieciowy posiada 48 bitowy numer identyfi-
kacyjny. Pakiety trafiające z systemu operacyjnego do interfejsu (w celu ich wysłania) zwykle nie są zaopatrzone w adres
źródłowy. Jest on dodawany na poziomie interfejsu. Większość oprogramowania nie kontroluje adresu w ramkach wy-
chodzących. Większość kart sieciowych jest konfigurowalnych i pozwala zmienić adres karty. W ten sposób pakiety
opuszczające interfejs sieciowy będą miały fałszywy identyfikator.

Segment

niezabezpieczony

Segment

bezpieczny

Segment

jednostronnego

zaufania

Segment

obustronnego

zaufania

Segment

obustronnego

zaufania

ufający

zaufany

background image

Bezpieczeństwo – Zagrożenia internetowe

Opracował: Zbigniew Suski

4

Jedną z metod obrony jest używanie podpisów cyfrowych w warstwie aplikacji. Możliwe jest również zastosowa-

nie inteligentnych hubów (switch lub bridge), które można skonfigurować w ten sposób aby przyjmowały i wysyłały pakiety
tylko z określonymi dla każdego portu adresami.

Spoofing ARP
ARP (Address Resolution Protocol) jest elementem odpowiedzialnym za konwersję adresu IP na adres sprzętowy. Gdy
datagram IP jest gotowy do wysłania, host musi dowiedzieć się, jaki jest adres sprzętowy skojarzony z docelowym adre-
sem IP. Dla pakietów wysyłanych wewnątrz sieci lokalnej, będzie to adres interfejsu docelowego. Dla pakietów skierowa-
nych na zewnątrz, będzie to adres jednego z routerów.

Aby zdobyć poszukiwany adres sprzętowy, host wysyła zapytanie ARP używając broadcastu. Pytanie brzmi: Jaki

jest adres sprzętowy skojarzony z podanym adresem IP ?. Powinien odpowiedzieć co najwyżej jeden host z sieci lokal-
nej. Pytanie zawiera adres IP nadawcy. Wszyscy, do których pytanie dotrze, mogą zapisać skojarzenie adresu IP i adresu
sprzętowego nadawcy pytania. Zrobi to na pewno wywołany host gdyż musi odpowiedzieć na pytanie. Pary <adres IP,
adres sprzętowy> zapisywane są w buforze ARP. Ulegają one przeterminowaniu po kilku minutach. Po przeterminowaniu
wysyłane jest pytanie odświeżające zapis ARP. Jeżeli odpowiedź nie nadejdzie, to zapis jest usuwany z bufora. Jeżeli
przed usunięciem zapisu z bufora stary komputer zostanie wyłączony i pojawi się nowy z tym samym adresem IP i innym
adresem sprzętowym, to odpowie on na pytanie odświeżające i nastąpi modyfikacja w buforach nadawcy pytania.

Gdy dwa komputery maja ten sam adres IP, to oba odpowiedzą na zapytanie dotyczące tego adresu. Niektóre

systemy operacyjne mogą zignorować drugi komunikat, inne nadpiszą pierwszy zawartością drugiego. Systemy nie mu-
szą sprawdzać, czy powtórzony komunikat pochodzi z tego samego źródła, czy jest próbą spoofingu. Włamywacz może
spowodować wyłączenie zasilania komputera pod który chce się podszyć i wejść w ten sposób w jego miejsce.

Istotą spoofingu jest to, że jest on skierowany przeciwko komputerowi oszukiwanemu, a nie temu, którego adres

IP został przejęty. W parze tej komputer oszukiwany jest elementem ufającym a ten, którego adres przejęto - zaufanym.
Wynika z tego, że maszyny ufające nie powinny korzystać z ARP do wykrywania adresów sprzętowych komputerów za-
ufanych. Zamiast tego zapis taki powinien być wprowadzony do bufora ARP jako tzw. zapis permanentny, który nie ulega
przeterminowaniu tak szybko. Nie będą wysyłane pytania ARP. Ewentualne odpowiedzi, które nie były poprzedzone py-
taniem nie są obsługiwane.

Wadą zapisów permanentnych jest możliwość wysyłania pakietów do niedziałających komputerów. Wadą jest

również konieczność zmian adresów sprzętowych w przypadku zmiany konfiguracji. Bufory ARP maja ograniczoną po-
jemność, co limituje liczbę zapisów permanentnych lub ogranicza czas ważności zapisów dynamicznych.

W systemach Unix, Windows 95/NT dostępne jest polecenie arp umożliwiające:

wyświetlanie zapisów znajdujących się w buforze,

usuwanie zapisów z bufora,

wstawianie

pojedynczych

zapisów,

wstawianie grupy zapisów z pliku (niedostępna w Windows).

Zagrożenie spoofingu pomiędzy podsieciami IP jest usuwane przez zastosowanie barier sprzętowych w postaci routerów
z permanentnymi zapisami ARP. Jeżeli komputery zaufane pracują w podsieci narażonej na spoofing ARP, to dzięki za-
pisom permanentnym routery nie zostaną oszukane. Należy jeszcze zadbać aby komputery zaufane były chronione
przed spooferem ARP udającym router. Routery są jednak zwykle dobrze zabezpieczone i nie przerywają pracy.

Jeżeli nie istnieje możliwość wprowadzenia bariery sprzętowej, to zostaje szybkie wykrywanie spoofingu i na-

tychmiastowa interwencja. Należy opracować procedury postępowania w takich przypadkach gdyż wykryta nieprawidło-
wość może być zamierzona, przypadkowa, lub być naruszeniem bezpieczeństwa.

Wykrywanie spoofingu ARP

Pasywna detekcja na poziomie hosta

Komputer odpowiadający na pakiet ARP powinien badać nie tylko adres odbiorcy ale i adres IP nadawcy. Jeżeli
stwierdzi, że to jest jego adres, to oznacza, że inny komputer podszywa się pod niego. Takiej kontroli dokonuje
większość systemów.

Aktywna detekcja na poziomie hosta

Hosty powinny wysyłać pytania ARP ich własnych adresów przy starcie systemu jak i regularnie później. Jeżeli
odpowiedź ARP nadejdzie, to oznacza to wykrycie spoofingu.

Detekcja na poziomie serwera

Polega na weryfikacji pytania ARP przez pytanie RARP dotyczące adresu sprzętowego zawartego w odpowiedzi.
Pytanie RARP brzmi: Jaki jest adres IP skojarzony z podanym adresem sprzętowym ?.Protokół RARP jest nor-
malnie używany przez stacje bezdyskowe, które podczas startu muszą sprawdzić swój adres IP. Metoda pytania
odwrotnego jest bardzo skuteczna również w wielu innych sytuacjach.

Detekcja na poziomie sieci przez okresowe kontrole

Okresowe kontrole powinny dotyczyć zawartości buforów ARP. Można wtedy wykryć w nich zmiany adresów. Za-
daniem personelu administracyjnego powinno być bieżące utrzymywanie bazy danych z adresami sprzętowymi,
adresami IP, nazwami DNS itp. Bazy takie mogą być podstawą okresowo przeprowadzanych automatycznych

background image

Bezpieczeństwo – Zagrożenia internetowe

Opracował: Zbigniew Suski

5

kontroli. Można wykorzystać protokół SNMP. W SNMP każdy komputer korzystający z IP ma agenta SNMP od-
powiadającego na żądania dotyczące informacji i konfiguracji. W niektórych standardach SNMP dostępne są ta-
bele opisujące adresy sprzętowe i IP.

Detekcja na poziomie sieci przez ciągłe monitorowanie

Interfejs sieciowy można przełączyć w tryb ogólny, dzięki któremu możliwe jest ciągłe analizowanie każdego pa-
kietu w sieci. Można wtedy dodatkowo realizować analizę ruchu w sieci i opracowywać odpowiednie statystyki.
Do przeprowadzenia takiego niskopoziomowego monitoringu sieci stworzono agentów SNMP z obsługą protokołu
RMON.

Omówienie systemu routingu

Spoofing routingu IP

Decyzja dotycząca routingu, to odpowiedź na pytanie: Dokąd wysłać datagram o danym adresie IP? Jeżeli adres

docelowy zgadza się z adresem sieci podłączonej do jednego z interfejsów, wtedy datagram jest skierowywany bezpo-
średnio pod adres docelowy. W innym przypadku wybierany jest router, który przekaże datagram dalej.

Spoofing routingu polega na skłanianiu komputerów do przesyłania datagramów w miejsca inne niż te, do których

powinny trafić. Może to doprowadzić do odmowy usługi. Maszyna, do której są kierowane pakiety nie odpowiada. Może
zostać przechwycony wszelki ruch pomiędzy sieciami. W trakcie tego działania można prowadzić filtrowanie ruchu,
wprowadzać modyfikacje, tworzyć wrażenie poprawnego funkcjonowania sieci.

Jeżeli w sieci dostępnych jest kilka routerów (w tym domyślny) to może się zdarzyć, że ten do którego dotrze da-

tagram uzna, że inny będzie bardziej właściwy, to przesyła do niego datagram, a do komputera źródłowego wysyła ko-
munikat ICMP (Internet Control Message Protocol) informujący o zmianie kierunku. Komunikat ten mówi: datagramy do
sieci A.B.C.D lepiej jest przesyłąć poprzez router W.X.Y.Z.
Komputer, który otrzyma ten komunikat powinien uaktualnić
swoje tablice routingu. Datagram nie jest gubiony i nie jest potrzebne jego powtórne wysłanie, gdyż już to zrobił router.

Jeżeli komputer ignoruje komunikaty ICMP, to pakiety będą dostarczane mniej efektywnie. Jest to jednak metoda

uniknięcia najprostszej techniki spoofingu routingu – wysyłaniu komunikatów ICMP o zmianie kierunku. Wiele systemów
nie sprawdza ważności tych komunikatów. Powinno przynajmniej nastąpić sprawdzenie, czy komunikaty takie pochodzą z
jednego ze znanych routerów.

Można się również zabezpieczać poprzez sprawdzenie czy bufory ARP hostów mają zapisy permanentne doty-

czące adresów autoryzowanych routerów. Zapobiega to spoofingowi ARP, w których jeden z komputerów mógłby uda-
wać router. Mógłby on wtedy przechwytywać wszelki ruch wychodzący z sieci.

Spoofing routingu opartego na RIP

Jeśli komputer jest pasywnym uczestnikiem protokołu RIP to nasłuchuje komunikatów ogólnych RIP i korzysta z

nich do uaktualniania swoich tablic routingu. Można wtedy przeprowadzić spoofing poprzez rozgłaszanie fałszywych in-
formacji przez port 520 protokołu UDP. Szczególnie groźna sytuacja ma miejsce gdy pasywnymi uczestnikami są routery.
Powoduje to szybkie rozgłoszenie fałszywych informacji po całej sieci.

Wynika z tego, że należałoby zastosować jedną z opcji:

zaprzestać używania pasywnego protokołu RIP na routerach,

bardzo

ostrożnie używać pasywnego protokołu RIP na routerach.

Aby zachować bezpieczeństwo, pasywny uczestnik RIP powinien brać pod uwagę tylko informacje z zaufanych źródeł.
Demon routed jest przesadnie ufny. Alternatywny GateD pochodzący z Uniwersytetu Carnegie-Mellon podczas startu
sprawdza plik konfiguracyjny zawierający m.in. adresy zaufanych źródeł informacji RIP. Jest on dostępny w Internecie.
Korzystanie z takiego demona jest lepszym rozwiązaniem niż zaniechanie pasywnego korzystania z RIP.

Omówienie DNS

Spoofing nazw DNS

Tak jak w czasie może zmieniać się przypisanie adresów sprzętowych do adresów IP, tak może się również

zmieniać przypisanie nazw do adresów. B buforze ARP będzie najprawdopodobniej odnotowany serwer DNS. Czyli
mógłby się pod niego podszyć spoofer ARP.

background image

Bezpieczeństwo – Zagrożenia internetowe

Opracował: Zbigniew Suski

6

Jeżeli serwer nazw zostanie przechwycony podczas ataku i będzie pod kontrolą włamywacza, to będzie udzielał

autorytatywnych informacji na temat pewnych domen. Odpowiedzi te mogą nakłaniać klientów do połączenia z innymi
serwerami będącymi pod kontrolą włamywacza. Sfałszowane tłumaczenie odwrotne może oszukać serwer próbujący
sprawdzić, czy adres przyszłego klienta zgadza się z autoryzowaną nazwą.

Próba obrony powinna polegać na sprawdzeniu wszystkich odpowiedzi na pytania odwrotne za pomocą pytań

prostych. Tego typu testy stały się standardem w systemach TCP wrappers. Testy takie mogą być skuteczne jeżeli wła-
mywacz zmienił pliki związane z pytaniami odwrotnymi a nie zmienił plików związanych z pytaniami prostymi. Ponadto
pliki takie mogą być przechowywane na różnych serwerach i może się zdarzyć, że tylko jeden z nich zostanie przechwy-
cony.

Kolejna metoda polega na dokonywaniu pytań iteracyjnych zamiast rekursywnych. Gdy serwer nazw udziela od-

powiedzi nieautorytatywnej na pytanie iteracyjne, to odpowiada nazwą serwera, który prawdopodobnie zna odpowiedź
autorytatywną. Przechwycony serwer nazw może skierować pytanie do innego serwera pod kontrolą włamywacza lub
stwierdzić, że sam jest autorytatywny. test na autorytatywność powinien wykryć atak.

Test na autorytatywność wymaga skierowania pytania do serwera nazw poziomu głównego i zacząć poszukiwa-

nia od góry, schodząc stopniowo coraz niżej. Jest to procedura pracochłonna i nie pomaga gdy przechwycony został
serwer autorytatywny. Ponieważ standardy DNS wymagają aby dane dotyczące każdej z domen były powielone na kom-
puterach nie znajdujących się w tej samej sieci ani nie pobierających energii z tego samego źródła (tzw. wspólny punkt
awarii
), więc nie wydaje się prawdopodobne przechwycenie wszystkich autorytatywnych serwerów DNS danej domeny.
Ponieważ jednak jeden z serwerów pełni rolę podstawowego (primary) więc jego przechwycenie spowoduje, że po pew-
nym czasie błędne dane będą znajdowały się na wszystkich serwerach autorytatywnych danej domeny. Problemem jest
również możliwość umieszczania fałszywych danych w buforze cache i pozostawanie ich tam przez długi okres czasu.
Powoduje to również podawanie błędnych odpowiedzi.

Najlepszym rozwiązaniem jest nie używanie DNS i korzystanie z tablic statycznych. W niektórych systemach

dostępne są API do tłumaczenia nazw na adresy i odwrotnie. Ich implementacje często korzystają z danych lokalnych,
odwołując się do DNS tylko w przypadku braku informacji w źródłach lokalnych.

Ograniczenie ryzyka jest również możliwe poprzez zastosowanie lokalnych serwerów nazw. Jeżeli jednak są one

skonfigurowane tak aby przy obrabianiu pytań rekursywnych zwracać się do głównego serwera nazw, to spoofing jest
nadal możliwy. Podobnie będzie jeżeli będzie on nakazywał klientom zwracanie się po informacje do serwera głównego
odnośnie których nie jest on autorytatywny.

Dokument RFC 1788 proponuje rozwiązanie polegające na wykorzystaniu ICMP. Komputery powinny odpowia-

dać na komunikat ICMP proszący o zbiór nazw odpowiadających podanemu adresowi IP. Potem można przeprowadzić
weryfikacje poprzez proste pytania DNS.

Spoofing połączeń TCP

Połączenie TCP

Klient wysyła komunikat z flagą SYN. Pole to służy do synchronizacji liczb porządkowych. Każdemu wysyłanemu

bajtowi przypisana jest liczba porządkowa. Liczba ta umieszczana jest w nagłówku komunikatu. Na początku połączenia
jest ona losowana. Serwer odpowiada nagłówkiem z ustawionymi flagami SYN i ACK. W ten sposób serwer wysyła swoją
liczbę informując jednocześnie o odebraniu liczby klienta. Klient musi odpowiedzieć nagłówkiem z flagą ACK.

Podczas wymiany informacji jedna strona wysyła datagramy a druga je co pewien czas potwierdza (ACK). Pod-

czas nawiązywania połączenia strony informują się również o ilości miejsca w buforach odbiorczych. W nagłówku każde-
go datagramu w polu window umieszczana jest liczba informująca nadawcę ile bajtów może wysłać przed wypełnieniem
bufora. Potwierdzenie zawiera najniższy numer oczekiwanego bajtu. Numer ten dodany do zawartości pola window sta-
nowi najwyższą liczbę porządkową bajtu, który może być umieszczony w buforze.

Gdy datagram przybywa za wcześnie, to zostanie umieszczony w buforze, lecz nie zostanie potwierdzony. Gdy

nadejdzie spodziewany datagram, odbiorca będzie mógł potwierdzić oba.

Fałszowanie datagramu TCP

Włamywacz musi ocenić liczbę porządkową, która zostanie przypisana do następnego bajtu wysyłanego przez

prawdziwego nadawcę. Jeżeli zrobi to dokładnie i jego datagram przybędzie po prawdziwym, to odbiorca może go w ca-
łości odrzucić jeżeli zawiera mniej danych niż prawdziwy. Jeżeli zawiera więcej , to odbiorca odrzuci jedynie ich początek.
Jeżeli najpierw przybędzie fałszywy, to odrzucany będzie prawdziwy. Jeżeli odgadnięta liczba jest za niska, to w buforze
nie zostanie umieszczona początkowa część datagramu. Jeżeli datagram jest wystarczająco długi, to część końcowa
może znaleźć się w buforze. Jeżeli odgadnięta liczba jest za wysoka, to datagram zostanie uznany za przedwczesny
i umieszczony w buforze. Jeżeli bajty końcowe nie zmieszczą się w oknie (window), to zostaną odrzucone. później nadej-
dzie prawdziwy datagram i wypełni lukę w buforze. W ten sposób datagram sfałszowany może zostać odebrany w cało-
ści.

Jedną z metod oceny liczby porządkowej jest sniffing połączenia między klientem i serwerem. Wykrywanie jest

możliwe na routerach poprzez sprawdzanie adresu nadawcy.

Fałszerstwo może polegać na umieszczeniu w ciągu danych sekwencji znaków odpowiadających poleceniu po-

dawanemu w linii komend (np. rm -r *). Jest to szczególnie groźne na początku sesji, gdy w miarę łatwo jest ocenić ilość
już przesłanych znaków, a liczbę początkową można przechwycić w fazie ustanawiania połączenia.

background image

Bezpieczeństwo – Zagrożenia internetowe

Opracował: Zbigniew Suski

7

Regułą powinno być szybkie zamykanie nieużywanych sesji. A niestety częstą praktyką jest automatyczne otwie-

ranie kilku sesji podczas uruchamiania komputera (np. w systemie X Window).

Literatura:

1) V.

Ahuja.

Network & Internet Security. Academic Press, Inc, 1996. (tłum. MIKOM 1997).

2) D. Atkins i inni. Internet Security. Professional Reference. New Riders Publishing, 1997 (tłum. LT&P 1997).
3) S. Garfinkel, G. Spafford. Practical Unix and Internet Security, O’Reilly&Associates Inc. 1996. (tłum. RM 1997).
4) L.

Klander.

Hacker Proof. Jamsa Press, 1997. (tłum. MIKOM 1998).

5) P.

Mockapetris.

Domain Names –Concepts and Facilities. RFC 1034, Nov 1987

6) P.

Mockapetris.

Domain Names –Implementation and Specification. RFC 1035, Nov 1987.

7) W.

Simpson.

ICMP Domain Nme Messages. RFC 1788, Apr 1995.

8) S.

Waldbusser.

Remote Network Monitoring Management Information Base. RFC 1271, Nov 1991.


Wyszukiwarka

Podobne podstrony:
Kirwil (2011) Polskie dzieci w Internecie Zagrożenia i bezpieczeństwo część II
08 Paczkowska T i inni Bledy projektanta zagrozeniem bezpieczenstwa stalowej konstrukcji dachu
Czy płacenie kartą w Internecie jest bezpieczne Kompendium wiedzy dla Ciebie - część III, Porady róż
CYBERTERRORYZM NOWA FORMA ZAGROŻENIA BEZPIECZEŃSTWA MIĘDZYNARODOWEGO W XXI WIEKU
Pornografia największe internetowe zagrożenie dzieci
Dziecko w Internecie – zagrożenia i ochrona
dr B Bojarczyk, Zagrożenia bezpieczeństwa międzynarodowego, Ubóstwo
ZAGROŻENIA BEZPIECZEŃSTWA, Przysposobienie obronne
Zagrożenia bezpieczeństwa państwa-wyk lad dla studentów, Notatki Bezpieczeństwo wewnętrzne, Bezpiecz
dr B Bojarczyk, Zagrożenia bezpieczeństwa międzynarodowego, Bezpieczeństwo istota i specyfika
ABC zagrozen bezpieczenstwa danych osobowych w s
Czy płacenie kartą w Internecie jest bezpieczne Kompendium wiedzy dla Ciebie - część I, Porady różn
Kierowanie a wychowanie w warunkach zagrozenia bezpieczenstwa
Społeczne i psychologiczne przyczyny powstawania zagrożeń bezpieczeństwa, bezpieczenstwo
Zagrożenia bezpieczeństwa
NIELEGALNA MIGRACJA JAKO JEDEN Z CZYNNIKÓW ZAGROŻENIA BEZPIECZEŃSTWA
Rozporządzenie RM w sprawie Raportu o zagrożeniach bezpieczeństwa narodowego, Akty prawne - stan pra
Internet zagrożenia

więcej podobnych podstron