Przedstawione dalej techniki omijania zapory ogniowej zakładają, że intruzem jest zupełnie obca osoba, która nie posiada żadnej wiedzy na temat atakowanego celu. Włamywacz próbuje za pośrednictwem łącz internetowych ominąć zabezpieczenia zapory ogniowej i uzyskać dostęp do komputerów w sieci lokalnej.
Duże sieci chronione są często zaawansowanymi zaporami ogniowymi wartymi zazwyczaj dziesiątki tysięcy dolarów. Rozwiązania te, przeważnie z wyższej półki, dają złudne poczucie bezpieczeństwa, ponieważ administratorom wydaje się, iż skoro ich sieci chronione są przez tak wysokiej klasy sprzęt, nikt nie będzie w stanie zaatakować ich systemów. Często jednak, skupiając się na styku sieci chronionej z Internetem, zapomina się o jednym z najsłabszych elementów infrastruktury, jakim są powszechnie wykorzystywane sieci bezprzewodowe.
Obecny rozwój technologii sieci bezprzewodowych, a tym samym ich popularność sprawiła, iż w roku 2006 zanotowano na rynku aż dwucyfrowy wynik ich sprzedaży. Niestety rozwiązania oparte o protokół 802.11, stanowią wciąż stosunkowo nową technologię, która oferuje mechanizmy bezpieczeństwa nadal nie do końca satysfakcjonujące.
Sieć bezprzewodowa w firmie stanowi element lokalnej infrastruktury informatycznej, zwykle chronionej zaporą ogniową od strony Internetu, jednak natura tej technologii, sprawia, iż jest ona łatwo osiągalna spoza obszaru sieci LAN. Wykorzystują to zwykle hackerzy, którzy próbują uzyskać dostęp do sieci lokalnej będąc w pobliżu budynku atakowanej firmy i korzystając z dostępności zasięgu sygnału sieci bezprzewodowej. Sytuację ułatwia fakt, gdy na styku sieci wifi i kablowej, nie istnieje żadnego rodzaju dodatkowa zapora sieciowa, czy system detekcji intruzów IPS.
Rys. 4.2.1a – Ominięcie zapory ogniowej przez uzyskanie dostępu do sieci bezprzewodowej stanowi obecnie jedną z najpopularniejszych metod włamań.
Atak na infrastrukturę bezprzewodową dzieli się na kilka kroków:
Rozpoznanie
Włamanie do sieci Wifi [19] rozpoczyna się od skanowania w celu uzyskania podstawowych informacji, takich jak identyfikator sieci SSID, adresy MAC punktów dostępowych, zakres używanych adresów IP oraz rodzaj mechanizmów szyfrowania (WEP, WPA), o ile są zaimplementowane. Często używanym do tego celu narzędziem jest NetStumbler, który jest skanerem aktywnym, czyli jego działanie jest stosunkowo łatwe wykrycia przez systemy IPS. NetStumbler potrafi także rozpoznawać producenta punktu dostępowego, rysować wykresy poziomu sygnału do szumów w danej sieci. Jego działanie polega na wysyłaniu w sieć pakietów rozgłoszeniowych (broadcast) typu probe-request. W odpowiedzi, znajdujący się w zasięgu punkt dostępowy (Access Point) wysyła informację typu probe-response, która zawiera takie informacje, jak SSID oraz adres MAC. Możliwe jest jednak skonfigurowanie punktu dostępowego w taki sposób, by nie odpowiadał on na zapytania rozgłoszeniowe oraz ukrywał informację na temat SSID. W takiej sytuacji hacker wykorzystać może skanery pasywne, których aktywność znacznie trudniej wykryć, bowiem nie wysyłają one żadnych pakietów w poszukiwaniu sieci, ale nasłuchują tego, co przesyłane jest falami radiowymi. Takimi skanerami są na przykład Kismet, Airodump oraz Wellenreiter.
Odbiornik GPS |
Warto zainwestować w odbiornik GPS, który pozwoli na zapisywanie informacji o położeniu sieci WLAN, a także tworzenie map ich zasięgów. |
Na tym etapie włamywacz jest w stanie uzyskać szczegółowe informacje na temat stosowanych w sieci mechanizmów zabezpieczeń i może przygotować narzędzia oraz techniki do ataku.
Rys. 4.2.1b – Wykorzystanie NetStumblera w celu rozpoznania sieci bezprzewodowej
Domyślne identyfikatory SSID sieci bezprzewodowych |
Cisco – tsunami
3com –101 Compaq – Compaq Addtron – WLAN Intel –intel Linksys - linksys |
Uzyskanie dostępu do sieci bez zabezpieczeń
W wielu przypadkach sieci bezprzewodowe nie mają zaimplementowanych żadnych mechanizmów bezpieczeństwa, zatem włamanie do nich polega zwykle na podłączeniu się i uzyskaniu dostępu. Może być jednak tak, że atakowana sieć nie wykorzystuje mechanizmów szyfrowania, ale ogranicza dostęp poprzez filtrowanie adresów MAC kart sieciowych, które mogą się podłączyć. Nie stanowi to większego problemu, ponieważ podsłuchując transmisję radiową, w łatwy sposób można uzyskać adresy MAC stacji roboczych, które mogą się podłączyć. W tej sytuacji wystarczy zmienić adres MAC karty sieciowej na stacji włamywacza na taki, który jest uprawniony do korzystania z sieci. W tym celu można ręcznie zmodyfikować ustawienia systemu, lub użyć narzędzia MAC Address Changer. Po uzyskaniu dostępu włamywacz powinien automatycznie otrzymać adres IP (poprzez DHCP). W przeciwnym wypadku konieczne będzie ustawienie ręczne adresu IP, takiego, jaki używa któryś z uprawnionych do nadawania komputerów.
Uzyskanie dostępu do sieci z szyfrowaniem transmisji
Jeśli sieć WLAN stosuje zabezpieczenia oparte na szyfrowaniu transmisji, włamywacz zmuszony jest do ich złamania. W tym celu wykorzystać może pakiet narzędzi Aicrack-NG.
Klucz WEP (Wired Equivalent Privacy) stanowi najprostsze z zabezpieczeń. W celu złamania go, konieczne jest zdobycie odpowiednio dużej ilości zaszyfrowanych pakietów, by na ich podstawie dokonać analizy i złamania klucza. Najlepszym narzędziem do tego celu jest AirSnort, który działa poprzez pasywne monitorowanie transmisji, obliczając klucz, gdy dostateczna ilość pakietów zostanie zgromadzona. AirSnort wymaga zgromadzenia 5-10 milionów zaszyfrowanych pakietów, a gdy je już posiada, wydobywa hasło w niezwykle krótkim czasie;
WPA (Wifi Protected Access) jest następcą WEP i dzieli się na dwie odmiany: Personal (WPA/PSK) oraz Enterprise. Różnią się one od siebie tym, że wersja Personal nie wykorzystuje zewnętrznego serwera uwierzytelnienia, a tak zwany klucz współdzielony (pre shared-key), który musi zostać wprowadzony zarówno na punkcie dostępowym, jak i na kliencie. Stosowany jest również mechanizm dynamicznej wymiany kluczy TKIP. Z kolei WPA Enterprise wykorzystuje zewnętrzny serwer uwierzytelnienia (np. Radius albo TACACS), po drugie korzysta z protokołu EAP (Extensible Authentication Protocol) oraz używa standardu 802.1x, dlatego uważana jest za znacznie bezpieczniejszą i trudniejszą do złamania od wersji Personal. Obecnie jedyną techniką łamania WPA/PSK jest atak słownikowy, przy czym spełnione muszą zostać dwa warunki: długość hasła stosowana w PSK nie może być dłuższa, niż 20 znaków oraz należy podsłuchać proces uzgadniania kluczy (tzw. four-way handshake) między klientem i punktem dostępowym. Nie trzeba czekać aż taki proces będzie miał miejsce, ale można go sztucznie wywołać, wysyłając zalogowanemu w sieci klientowi specjalny pakiet wyrzucający go z sieci. Zmusza go to do ponownego zarejestrowania się w punkcie dostępowym. W celu złamania klucza WPA wykorzystywane jest narzędzie coWPAtty;
WPA2 – inaczej 802.1i to następca WPA. Główną różnicą w stosunku do poprzednika jest to, że algorytm szyfrujący został zmieniony z RC4 na AES. Zatem istnieje w dalszym ciągu WPA2-PSK, który nadal narażony jest na ataki słownikowe;
Włamując się do sieci bezprzewodowych hackerzy wykorzystują często gotowe, specjalizowane dystrybucje Linuxa typu Live CD, jak na przykład BackTrack 2. Stanowi ona gotową kompilację wielu narzędzi używanych podczas pokonywania zabezpieczeń.
Mechanizm ochronny:
Użytkownicy WLAN powinni być uwierzytelniani (VPN, 802.1X);
Włączenie urywania SSID oraz wyłączenie rozgłaszania SSID;
Zmiana domyślnych ustawień AP (SSID, hasła dostępu, adres IP);
Aktualizacja firmware’u kart bezprzewodowych i AP;
Włączenie kontroli dostępu po MAC oraz IP;
Włączenie szyfrowania 128 lub 256 bitowego;
Unikanie używania łatwych do odgadnięcia kluczy szyfrujących;
Stosowanie WPA2;
Stosowanie certyfikatów dla klientów mobilnych;
Stosowanie mechanizmów IPS, monitorujących dziwne typy ramek, nowe adresy MAC, nowe punkty dostępowe.
Od wielu lat niesłabnącą popularnością cieszą się techniki umożliwiające zdalnym pracownikom na uzyskiwanie dostępu do zasobów firmy z odległych lokalizacji za pomocą serwerów dostępowych (ang. RAS – Remote Access Server). Są to przeważnie serwery z podłączonym jednym lub więcej modemami, które z kolei wpięte są do linii telefonicznej. Na serwerze uruchomiona jest usługa umożliwiająca realizacje połączeń z zewnątrz i uzyskiwanie dostępu do zasobów chronionych.
Pracownik firmy, w celu uzyskania dostępu do jej wewnętrznych zasobów, musi za pomocą modemu połączyć się z odpowiednim numerem telefonu, pod którym nasłuchuje modem serwera dostępowego. Po weryfikacji nazwy użytkownika oraz hasła, klientowi przydzielony zostaje adres IP oraz tablica routingu i uzyskuje on dostęp do sieci lokalnej.
Ważnym z punktu widzenia bezpieczeństwa aspektem owego rozwiązania jest fakt, że podczas połączenia pomijane są wszelkie zabezpieczenia zapory ogniowej, chroniącej styk z Internetem. Wynika to z faktu, że połączenia następują z wykorzystaniem linii telefonicznej, nie zaś poprzez łącza internetowe, dlatego zapora nie bierze w ogóle udziału w transmisji.
Jedną z metod wykorzystywanych podczas penetracji sieci jest wykorzystanie serwerów dostępowych, a tym samym pominięcie zabezpieczeń zapory. Na wstępie, hacker musi określić numerację telefonów w atakowanej firmie. W tym celu może skorzystać z danych kontaktowych na oficjalnej witrynie strony, bądź zdobyć te informacje z książki telefonicznej. Oprócz tego, może także wykorzystać techniki inżynierii socjalnej i podszywając się za dostawcę usług telekomunikacyjnych uzyskać potrzebne dane od pracowników atakowanej firmy.
Kolejnym krokiem jest złamanie nazwy użytkownika oraz hasła dostępowego któregoś z uprawionych do korzystania z tej usługi użytkowników. W tym celu posłużyć się może narzędziami do automatycznego łamania haseł albo skorzystać z pewnych predefiniowanych, często używanych haseł, jak na przykład ppp:ppp.
Rys. 4.2.2 – Uzyskanie dostępu do zasobów LAN poprzez serwer dostępowy
Mechanizm ochronny:
Administrator bezpieczeństwa w przypadku zabezpieczania dostępu zdalnego RAS ma do dyspozycji wiele skutecznych technik obrony:
Cykliczny audyt haseł użytkownika w celu eliminowania trywialnych kombinacji;
Wykorzystanie dla celów zdalnego dostępu innej puli numerów telefonicznych, niż te, używane dla tradycyjnych telefonów;
Implementacja połączeń zwrotnych (ang. callback), która polega na tym, że serwer po zadzwonieniu przez klienta na modem dostępowy, oddzwoni na wcześniej zdefiniowany numer telefonu użytkownika. Wyeliminuje to skutecznie próby podszycia;
Implementacja na poziomie serwera RAS precyzyjnych reguł dostępu, definiujących do jakich zasobów uzyskać powinien dostęp zdalny użytkownik (filtry IP lub przydział do odpowiedniego VLAN);
Zalecane jest także wdrożenie dodatkowej zapory ogniowej umiejscowionej pomiędzy serwerem dostępowym, a siecią lokalną, która dodatkowo ograniczy zasoby lokalne, do jakich ma dostęp użytkownik zdalny;
W powyższych konfiguracjach warto także wykorzystywać serwery AAA, wykorzystujące protokół RADIUS albo TACACS, za pomocą których możliwe jest centralne zarządzanie kontami użytkownikami oraz regułami dostępu;
.
Ostatnimi czasy widoczna stała się popularność rozwiązań VPN. Coraz więcej firm decyduje się na wdrożenie takiego rozwiązania, ponieważ pozwala to na swobodne korzystanie z zasobów sieci lokalnej, będąc fizycznie gdzieś zupełnie indziej. Niestety często dostęp przez VPN przydzielany jest użytkownikom do całej sieci, bez żadnych restrykcji. Dlatego brama VPN budzi duże zainteresowanie wśród włamywaczy, bo przełamanie jej zabezpieczeń da im nieograniczony dostęp do wnętrza całej sieci chronionej.
Rys. 4.2.3 – Wejście przez VPN omija reguły filtrowania zapory
Wśród rozwiązań VPN spotyka się IPSec VPN, gdzie użytkownik po udanym uwierzytelnieniu uzyskuje pełen dostęp do zasobów sieci firmowej w taki sposób, jakby w niej fizycznie przebywał. Aby wykorzystywać to rozwiązanie, pracownik jest zmuszony do instalacji odpowiedniego oprogramowania na swoim komputerze.
Drugą, obecnie bardzo popularną technologią jest SSL VPN, czyli dostęp do zasobów wewnętrznych przez przeglądarkę stron www. W tym przypadku nie jest wymagane instalowanie żadnych dodatkowych aplikacji.
W obu przypadkach łamanie zabezpieczeń polega głównie na atakach słownikowych (brute force) w celu trafienia kombinacji nazwy użytkownika i hasła. Oprócz tego, włamywacz może wykorzystać luki zabezpieczeń dotyczące konkretnych rozwiązań danego producenta, szczególnie dotyczy to tworzonych domyślnie przez producenta kont użytkowników, które powinny, a nie zawsze są usuwane lub zmieniane po instalacji sprzętu.
Uwierzytelnianie dla VPN SSL polega na wprowadzeniu nazwy użytkownika oraz hasła do formularza na stronie internetowej. W ten sposób, intruz może próbować różnorodnych technik włamania, takich, jakie stosuje się przeciwko serwerom www. Może to być na przykład atak Cross Site Scripting albo niezwykle skuteczny SQL Injection, który ma na celu oszukanie logiki zapytania do bazy danych podczas sprawdzania wprowadzonych danych.
Mechanizm ochronny:
Stosowanie RSA SecureID (tokenów), w celu uwierzytelniania;
Nadawanie bramom VPN nazw, które nie są łatwe do odgadnięcia
(np. vpn.firma.com). Utrudni to intruzowi możliwość przeprowadzenia ataku słownikowego;
Wykorzystywanie serwera RADIUS w celu narzucania klientom VPN reguł dostępu. Filtry powinny umożliwiać komunikację tylko z tymi zasobami w sieci chronionej, które są konieczne dla użytkownika;
W przypadku SSL VPN należy sprawdzać (walidacja) wprowadzone do formularzy dane, aby uniemożliwić ataki SQL Injection.
Istnieją sytuacje, gdy administrator sieci, w celu zdalnego zarządzania infrastrukturą udostępnia publicznie serwery z uruchomioną usługą SSH, Terminal Services lub VNC. Realizowane jest to najczęściej w ten sposób, że serwer w sieci lokalnej dostępny jest od strony Internetu poprzez wykorzystanie translacji portów (Port Address Translation).
Stwarza to niezwykle niebezpieczną sytuację, gdyż udany atak słownikowy mający na celu złamanie kombinacji nazwy użytkownika oraz hasła umożliwia włamywaczowi natychmiastowe uzyskanie dostępu zasobów sieci chronionej. Jeśli jednak to się nie powiedzie, hacker może spróbować wykorzystać inny błąd w udostępnionej usłudze, by dostać się do środka sieci.
Rys. 4.2.4 – Nie tylko administrator może skorzystać z możliwości zdalnego zarządzania
Mechanizm ochronny:
Obecnie coraz rzadziej spotyka się sytuacje, gdy administratorzy za pomocą technologii translacji umożliwiają publiczny dostęp do serwerów w sieci chronionej. Najwygodniejszym, a zarazem najbezpieczniejszym obecnie mechanizmem pozwalającym na zdalne zarządzanie siecią LAN jest VPN;
Jeśli jednak nie ma możliwości zastosowania VPN, należy udostępnić serwer zarządzający z wykorzystaniem NAT, ale przy zdefiniowaniu szczegółowej polityki dostępu w oparciu o konkretny, źródłowy adres IP, który może się z danym hostem połączyć. Niestety daje to potencjalnemu włamywaczowi możliwość przeprowadzenia ataku podszycia (spoofing) pod publiczny adres IP komputera administratora;
Stosunkowo bezpiecznym rozwiązaniem w przypadku braku VPN,
jest wykorzystanie narzędzia linuxowego o nazwie Knockd31.
Knockd |
Knockd jest niewielkim narzędziem, dostępnym dla systemu Linux, które pozwala m.in. na czasowe otwieranie i zamykanie odpowiednich portów w zaporze. Idea działania programu jest polega na tym, iż po otrzymaniu zdefiniowanej wcześniej przez administratora sekwencji pakietów TCP lub UDP, zawierających określone flagi (np. SYN, FIN, ACK), na serwerze wykonywana jest zdefiniowana akcja. Domyślnie jest nią otwarcie portu 22 w zaporze IPTables dla adresu IP, z którego nadeszła sekwencja. Podobnie, określoną sekwencją, zdefiniowane jest zamknięcie tego portu. |
Serwery, które mają być dostępne z sieci publicznej bardzo często umiejscawia się w strefie zdemilitaryzowanej (DMZ). Najczęściej świadczą one usługi takie, jak WWW, MAIL, FTP, PROXY, czy DNS.
Poniżej przedstawiony został typowy scenariusz z wykorzystaniem sieci DMZ.
Rys. 4.2.5a – Sieć firmowa ze strefą DMZ
Na potrzeby powyższego scenariusza, zakłada się, iż poszczególne urządzenia chroniące mają zdefiniowane następujące reguły dostępu:
(składnia: pozwól | zabroń, protokół, adres źródłowy, adres docelowy, port)
Router
Ruch przychodzący:
- permit TCP any host WWW port 80
- permit TCP any host WWW port 443
- permit TCP any host DNS/MAIL port 25,110
- permit UDP any host DNS/MAIL port 53
Ruch wychodzący:
- permit IP any any
Zapora ogniowa
Ruch przychodzący:
- permit TCP host DNS/MAIL host SSH port 22
- permit TCP host DNS/MAIL host SSH port 80
- permit TCP host DNS/MAIL host SSH port 443
Ruch wychodzący:
- permit IP any any
Warto zwrócić uwagę na to, że nie wszystkie usługi uruchomione na serwerach w strefie DMZ są dostępne publicznie.
W przedstawionym scenariuszu, włamywacz spróbuje uzyskać dostęp do zasobów sieci chronionej, wykorzystując fakt, iż ma on dostęp do hostów w sieci DMZ z sieci publicznej.
Na początek, wykorzystując błędy w usłudze WWW zaatakuje on serwer stron internetowych, w wyniku czego uzyskuje dostęp do linii komend (shell). Dokonanie tego jest niezwykle proste, ponieważ wiele dostępnych w Internecie narzędzi (expoitów) automatyzujących atak, po wykonaniu udanego przepełnienia bufora, jest w stanie uruchomić na dowolnym porcie powłokę systemową (shell).
Hacker, po udanej penetracji, nakazuje serwerowi WWW, pobranie za pomocą wbudowanego klienta TFTP wspomniane wcześniej narzędzie do tunelowania ruchu – HTTPTunnel.
Na komputerze WWW zostaje uruchomione narzędzie tunelujące HTS w trybie serwera, które przekierowuje ruch z lokalnego portu 80/TCP na serwer DNS/MAIL na niedostępny publicznie port 23/TCP.
Od tego momentu hacker może rozpocząć próbę ataku serwera DNS/MAIL, który jest jedynym hostem, mającym dostęp do serwera SSH w sieci chronionej. Komputer DNS/MAIL może zostać zaatakowany na usługę Telnet poprzez metodę prób i błędów haseł (brute force). Ułatwi to uruchomiona usługa Finger (79/TCP), która informuje o zalogowanych użytkownikach. Oczywiście serwer może zostać pokonany przy wykorzystaniu jakiegokolwiek innego błędu w którejś z uruchomionych usług. Należy pamiętać, że usługi na komputerze DNS/MAIL, takie jak Telnet, czy Finger nie są dostępne od strony Internetu, jednak w ramach sieci DMZ, czyli z serwera WWW można do nich nawiązywać połączenie.
Po udanym ataku na serwer DNS/MAIL włamywacz może uruchomić na nim narzędzie podsłuchujące ruch (sniffer) w celu monitorowania połączeń z siecią chronioną. Uzyska w ten sposób informację na temat usług i komputerów w sieci LAN.
Ostatnim etapem ataku jest penetracja serwera SSH w sieci wewnętrznej. Jest to możliwe, gdyż zapora ogniowa pozwala komputerowi DNS/MAIL na nawiązywanie z nim połączeń.
Na każdym z pokonanych serwerów, atakujący może uruchomić narzędzie tunelujące, dzięki któremu, łącząc się ze swojego komputera, uzyska bezpośredni dostęp do serwera SSH w sieci chronionej.
Rys. 4.2.5b – Włamywacz pokonując kolejne serwery uzyskuje dostęp do sieci chronionej.
Mechanizm ochronny:
Aktualizacje systemów pod kątem bezpieczeństwa;
Uruchamianie tylko niezbędnych usług na serwerach;
Stosowane dodatkowych osobistych zapór ogniowych na systemach w strefie DMZ;
Uniemożliwienie nawiązywania jakichkolwiek połączeń ze strefy DMZ do sieci chronionej;
Stosowanie systemów IPS na styku sieci DMZ z Internetem.
Dostępne obecnie na rynku systemy zapór ogniowych, pod warunkiem,
że dobrze skonfigurowane, stanowią trudną do sforsowania przeszkodę dla hackera. Jeśli potencjalny włamywacz wykorzysta wszelkie dostępne środki w celu uzyskania dostępu do sieci chronionej, a one okażą się nieskuteczne w stosunku do zaimplementowanych zabezpieczeń, nie będzie on w stanie w żaden sposób skomunikować się z chronionymi hostami. Chyba, że one skomunikują się z nim.
Autor poniższej pracy, na drodze swoich doświadczeń, spotkał się z technikami, które pozwalają na przeprowadzanie działań w chronionej sieci, bez konieczności włamania do niej. Idea ta jest dość specyficzna, jednak niezwykle skuteczna w środowiskach, które trudno zaatakować z zewnątrz.
Koncepcja poniższego ataku opiera się na tym, że to nie włamywacz uzyskuje dostęp do chronionych systemów, ale one same komunikują się z serwerem atakującego w celu uzyskania informacji dotyczących działań, jakie same mają podjąć. System działania oparty jest na zasadzie klient (slave) – serwer (master), gdzie klientem jest atakowany komputer z odpowiednim oprogramowaniem, a serwerem jest komputer przygotowany przez hackera. Slave samoistnie nawiązuje komunikację z masterem w ramach sesji http i odpytuje go, chcąc pobrać listę zadań do wykonania wewnątrz sieci LAN.
Aby technika okazała się skuteczna, potrzebne jest spełnienie dwóch podstawowych warunków:
Należy zainfekować system klienta odpowiednim oprogramowaniem. Włamywacz może tego dokonać na dwa proste i zazwyczaj skuteczne sposoby:
wysłać do grupy pracowników e-mail, który będzie tak spreparowany, iż w trakcie otwarcia wykorzysta błędy zabezpieczeń klienta pocztowego i zainfekuje system ofiary załączonym programem, czyniąc go klientem (slave). W tym celu hacker spróbuje oprzeć swój atak na jednym z wielu błędach w aplikacjach pocztowych, jakie zostały opublikowane w Internecie;
wysłać do grupy pracowników e-mail zawierający łącze, zachęcające do odwiedzenia strony WWW, która zostanie spreparowana w celu zainfekowania komputera klienta odpowiednim oprogramowaniem przez błędy w przeglądarce stron. Włamywacz może dokonać tego na przykład poprzez przygotowany wcześniej skrypt ActiveX, który nawet bez interakcji z użytkownikiem nakaże przeglądarce zainstalowanie w systemie odpowiedniego klienta;
Po udanej instalacji, aplikacja kliencka pracować może jako usługa systemowa, a adres serwera zarządzającego może zostać z góry zapisany w kodzie programu.
Zapora ogniowa atakowanej sieci musi zezwalać na nawiązywanie z Internetem „niewinnych” sesji http (port 80/TCP), co jest akurat często spotykanym scenariuszem w wielu słabo chronionych środowiskach.
W przedstawionym scenariuszu, istnieje duże prawdopodobieństwo,
iż znajdzie się chociaż jeden nieświadomy zagrożeń pracownik firmy, który pozwoli na zainfekowanie swojego komputera przygotowaną przez hackera aplikacją.
Założywszy, że dwa przedstawione wcześniej kryteria zostały spełnione, włamywaczowi pozostaje tylko przygotowanie i podłączenie do Internetu serwera WWW, na którym zainstaluje mechanizm zarządzający. Następnie, przygotuje on odpowiednią stronę, w treści której znajdować się będą komendy do wykonania przez komputer ofiary. Zapytania do spreparowanej strony, klient będzie wykonywał np. co kilkanaście sekund, a lista komend do wykonania zależeć już będzie tylko od pomysłowości i finezji włamywacza. Może on przykład nakazać ofierze pobranie z innego serwera aplikację - skaner portów, a następnie kazać komputerowi przeskanowanie całej chronionej sieci.
Rys. 4.2.6 – W odpowiedzi na zapytania do spreparowanego serwera www, komputer użytkownika otrzymuje zadania do wykonania.
W celu dodatkowego zamaskowania sesji HTTP, dane przesyłane między klientem i serwerem mogą być kodowane. Utrudni to wykrycie podczas ewentualnych analiz logów zapory ogniowej.
Mechanizm ochronny:
W celu ochrony przed takim zagrożeniem należy stosować poniższe mechanizmy:
Lokalne systemy antywirusowe;
Osobiste zapory ogniowe, które uniemożliwią nawiązywanie połączeń poprzez procesy, które nie zostały zaakceptowanie przez użytkownika;
Systemy wykrywania intruzów IPS;
Sewer pośredniczący proxy – wtedy aplikacja nie będzie w stanie bezpośrednio łączyć się z serwerem zarządcą. Dodatkowe uwierzytelnienie na poziomie bramy również skutecznie utrudni atak.
Jak już zostało wcześniej wspomniane, serwery dostępne od strony Internetu, czyli między innymi komputery świadczące usługi nazewnicze DNS najczęściej podłącza się w sieć publicznie dostępną, czyli w strefę DMZ.
Potencjalnemu włamywaczowi daje to możliwość połączenia się z serwerem DNS i próbę przeprowadzenia ataku znanego pod nazwą DNS Cache Poisoning33 (zatruwanie bufora pamięci DNS).
DNS cache poisoning to jeden z popularniejszych ostatnio ataków, wykorzystujący słabości usługi nazewniczej. Umożliwia ona modyfikacje informacji DNS serwera poprzez wprowadzenie do jego pamięci informacji nieprawdziwych.
Klasyczny przykład ataku (w uproszczeniu):
Użytkownik X chce wejść na stronę portalu ONET.pl. W tym celu musi
uzyskać adres IP tej strony, o który zapyta zdefiniowanego w konfiguracji swojego połączenia sieciowego serwera DNS. Jednak kilka minut wcześniej Hacker dokonał ataku zatruwania na serwer nazw. Zrobił to w poniższy sposób:
Hacker wysłał do serwera DNS, z którego także korzysta użytkownik
X zapytanie o adres IP dla www.onet.pl. Serwer DNS, nie znając adresu IP, przekazał zapytanie do jednego z głównych serwerów nazw i oczekuje na odpowiedź.
W tym czasie Hacker, podszywając się pod jeden z głównych serwerów DNS, spreparowaną odpowiedź, podając jako adres IP strony ONET.pl adres swojego serwera. Serwer DNS akceptuje tą odpowiedź i w celu przyspieszenia
wyszukiwania, dodaje ten wpis do swojej pamięci bufora. W tej chwili według
serwera DNS adresem www.onet.pl jest adres komputera Hackera.
Kiedy nadeszła poprawna odpowiedź na zapytanie które wysłał serwer DNS do serwera głównego, zostaje ona zignorowana, bowiem informacja o tym znajduje się już w pamięci firmowego serwera nazw.
Użytkownik X zapytuje o adres www.onet.pl i otrzymuje ze swojego serwera dane, które są jednak fałszywe.
Rys. 4.2.7 – Zmodyfikowane informacje DNS kierują nieświadomego klienta na spreparowany przez hackera serwer.
W chwili obecnej, Hacker może kontynuować atak, wykorzystując technikę przedstawioną w poprzednim punkcie. Można wyobrazić sobie sytuację, gdy nieświadomy niczego użytkownik odwiedza spreparowaną przez intruza stronę www, która infekuje koniem trojańskim komputer pracownika, a następnie przekierowuje ruch na prawdziwą witrynę www.onet.pl. Atak stanie się niezauważalny.
Atak DNS cache poisoning bywa często wykorzystywany do wyłudzania poufnych informacji (pharming), głównie loginów oraz haseł, poprzez przekierowanie użytkowników na strony, łudząco podobne do witryn banków.
Mechanizm ochronny:
Wykorzystywanie demona DJBDNS, który jest zdecydowanie mniej podatny
na ataki DNS cache poisoning, niż jakikolwiek inny;
Stosowanie DNSSEC - protokołu opartego o cyfrowe podpisy, który wykorzystuje mechanizmy kryptograficzne bazujące na kluczach publicznych, co potencjalnie stwarza możliwość zabezpieczenia całej drzewiastej struktury systemu DNS. Protokół zabezpiecza informacje DNS przed sfałszowaniem i modyfikacją, oferując dodatkowo możliwość wykorzystania go jako infrastruktury do dystrybucji kluczy publicznych.
Zalecane jest też wyłączenie zapytań rekurencyjnych i używanie zapytań iteracyjnych. Różnią się one tym, iż model zapytań rekurencyjnych opiera się na tym, że serwer DNS, jeżeli nie zna odpowiedzi na zapytanie, sam pyta dalej oraz szuka tej odpowiedzi, po czym ja umieszcza w cache, a wynik zwraca do pytającego. W modelu iteracyjnym, jeżeli serwer DNS nie zna odpowiedzi sam nie wysyła innych zapytań, zwraca natomiast pytającemu adres innego serwera DNS, który jego zdaniem będzie w stanie obsłużyć zapytanie;
Potencjalny włamywacz, nie mając możliwości pokonania zabezpieczeń danej sieci, może dokonać próby uzyskania dostępu do tej sieci poprzez sieć z nią połączoną. Może to być na przykład inny oddział firmy lub banku, będący w tej samej sieci WAN, czy też kooperująca firma, z którą zestawiono tunel VPN.
Rys. 4.2.8 – Scenariusz wejścia do sieci chronionej przez jeden z oddziałów
Mechanizm ochronny:
Ograniczenie ruchu IP między sieciami oddziałów obrębie WAN do takiego, który jest niezbędny (na przykład tylko między serwerami poczty) Wymaga to implementacji zapór ogniowych na stykach lokalizacji;
Stworzenie jednego, silnie strzeżonego punktu styku sieci WAN z Internetem dla wszystkich lokalizacji. Pozwoli to na lepsze zarządzanie oraz bardziej precyzyjną kontrolę ruchu między siecią chronioną, a Internetem.
W normalnych warunkach, użytkownik, który wysyła pakiety IP do jakiejś sieci, nie musi w żaden sposób przejmować się sposobem ich dotarcia do miejsca docelowego. Odpowiedzialność za dotarcie pakietu do miejsca przeznaczenia zrzucona zostaje na routery pośredniczące, które w zależności od natężenia ruchu, osiągalności poszczególnych ścieżek oraz wielu innych czynników wybierają dla pakietu odpowiednią trasę.
Protokół IP oferuje jednak alternatywny sposób doboru tras - routing według źródła (ang. source routing). Obsługa source routingu jest możliwa skutkiem ustawień w polu opcji datagramów IP bitów Strict Source Route, Loose Source Route, Record Route, i Time Stamp. Routing do danego hosta jest rejestrowany w zmiennej długości polu opcji datagramu IP podczas jego wędrówki od nadawcy do odbiorcy. W ten sposób, nadawca, modyfikując nagłówki pakietów IP, jest w stanie narzucić konkretną trasę, jaką przebyć ma pakiet do miejsca swojego przeznaczenia. Z kolei odbiorca, otrzymawszy pakiet z zapamiętaną trasą, przesyła zwrotnie pakiety do nadawcy tą właśnie trasą. Routing według źródła ma wyższy priorytet obsługi w stosunku do routingu next-hop ustalonego przez tablice routingu routerów na trasie przesyłania pakietu.
Source routing, jako z pozoru niegroźna technika, może stanowić jednak poważne zagrożenie bezpieczeństwa i poufności informacji. Wprawny włamywacz, wykorzystując możliwości, jakie oferuje source routing jest w stanie nawiązać komunikację z hostami w sieci chronionej omijając zaporę ogniową.
Poniżej przedstawiony został przykład ataku, gdzie włamywacz próbuje uzyskać dostęp do wewnętrznej sieci firmy A. Niestety firma ta ma dobrze skonfigurowaną zaporę, która uniemożliwia penetrację sieci LAN. Jednak włamywacz dowiaduje się, że sieć firmy A podłączona jest do sieci firmy B (poprzez VPN, czy zwykłe łącze dzierżawione PVC). Po dokonaniu odpowiedniego rozpoznania hacker dowiaduje się, że routery firmy B podatne są na atak source routing. Może zatem tak zmodyfikować swoje pakiety, aby trafiły on do sieci A poprzez routery w sieci B.
Rys. 4.2.9 Wykorzystując source routing włamywacz omija zaporę firmy A
Obecnie coraz mniej urządzeń obsługuje source routing ze względu na częste wykorzystanie tej techniki w niecnych celach. Sytuacje poprawia fakt, że domyślnie obsługa source routingu wyłączona bywa na zaporach ogniowych, jednak nadal jest wspierana przez wiele routerów.
Mechanizm ochronny:
Wyłączenie obsługi source routingu na urządzeniu chroniącym styku sieci, szczególnie na routerach;
Fajne
skomentowano: 2014-04-18 01:04:48 przez: hazam
Copyright © 2008-2010 EPrace oraz autorzy prac.