Próba szczelności serwera webowego

Ocena podatności na atak jest jednym z podstawowych elementów walki z hakerami. Wczesne penetrowanie własnego ośrodka webowego może ujawnić ukryte problemy i nieszczelności systemu ochrony, zanim prawdziwy napastnik spróbuje z nich skorzystać. Oto próba sprawdzenia szczelności serwera webowego Microsoft IIS 5.0 metodą symulowanych ataków hakerskich.

Ocena podatności na atak jest jednym z podstawowych elementów walki z hakerami. Wczesne penetrowanie własnego ośrodka webowego może ujawnić ukryte problemy i nieszczelności systemu ochrony, zanim prawdziwy napastnik spróbuje z nich skorzystać. Oto próba sprawdzenia szczelności serwera webowego Microsoft IIS 5.0 metodą symulowanych ataków hakerskich.

Dobry system wykrywania włamań jest jednym ze środków walki z hakerami. Kolejnym dobrym sposobem ochrony jest studiowanie doniesień o nowych zagrożeniach i instalowanie najnowszych edycji łatek programowych. Listę odpowiednich działań uzupełnia symulowany atak hakerski na własny ośrodek webowy, mający na celu zweryfikowanie podatności systemu na takie akcje.

Próbę włamania do własnej sieci należy przeprowadzić w sposób bezpieczny. Przede wszystkim należy wykonać kopie zapasowe plików serwera i danych konfiguracyjnych, co może okazać się środkiem "ratującym życie" w sytuacji, gdy akcja hakerska jednak wymknie się spod kontroli. Należy dobrać również odpowiednie osoby, które mają dostateczny poziom wiedzy z tej dziedziny.

Przyjrzyjmy się kontrolowanej próbie sprawdzenia ośrodka webowego opartego na Microsoft IIS (Internet Information Server) wersji 5.0. Do tego audytu użyto następujących narzędzi hakerskich:

  • NetCat 1.1 firmy @stake - sterowane skryptami utility, które łączy się z ośrodkiem webowym, wysyła zlecenie HTML i pokazuje odpowiedzi ośrodka webowego.

  • Whisker 2.1 for Unix i Whisker 1.4 for Windows firmy Rain Forest Puppy - narzędzie kontroli ośrodka webowego, za pomocą którego uzyskuje się zawartość środka, uruchamia programy na serwerze webowym i łamie hasła w ośrodku webowym.

  • Brutus AET2 firmy HooBie i Entry 2.7 firmy EliteSys - narzędzia do szybkiego łamania haseł.

  • Teleport Pro 1.29 firmy Tennyson Maxwell Information Systems.
Strategia hakerska polegała w tym przypadku na uzyskaniu dostępu do ośrodka webowego przez bombardowanie go niewłaściwie sformatowanymi URL, przejściu przez barierę uwierzytelniania drogą odgadywania hasła i skopiowaniu plików ośrodka webowego po złamaniu jego ochrony.

Wymienione wcześniej narzędzia były pomocne w rozpoznawaniu systemu operacyjnego i innych plików na serwerze webowym, pokonywaniu ochrony zapewnianej przez hasła, a nawet uzyskiwaniu (symulowanych) plików z danymi o kartach kredytowych.

Z rozpoznania, połączonego ze studiowaniem dokumentacji NetCat, wynikało, że włamania najlepiej dokonać, wykorzystując błędy IIS związane z UniCode. Ta luka w oprogramowaniu Microsoftu była ujawniona już w październiku 2000 r., ale wiele ośrodków nie zastosowało jeszcze stosownych łatek likwidujących tę nieszczelność.

Taki atak wygląda następująco: napastnik próbuje uzyskać dostęp do sieci poprzez wadliwie sformatowany URL, który może spowodować udostępnienie przez serwer webowy katalogów zawierających pliki i formy wykonywalne. Napastnik może skopiować te pliki czy formy wykonywalne lub uruchomić je zdalnie.

Pierwszym celem audytu było uzyskanie pewnych informacji podstawowych o ośrodku webowym. W typowych interakcjach serwera webowego kliencka przeglądarka wysyła do serwera webowego zlecenie Get/Default.html wraz z pewnymi danymi identyfikującymi przeglądarkę (takimi jak Mozilla/4.0+ compatibile; +MSIE+5.5; +Windows +NT +4.0). Serwer webowy odpowiada kodem zwrotnym 200, który wskazuje na powodzenie akcji, oraz pewnymi informacjami identyfikacyjnymi i zawartością strony webowej Default.html.

Sprawdzanie odpowiedzi serwera webowego pozwala na uzyskanie informacji o jego wolumenach. W łatwy sposób można uzyskać szczegóły niezbędne do otrzymania dostępu do plików systemu operacyjnego, plików danych, skryptów i baz danych.

Przykładem niebezpiecznego URL jest: 192.100.16.32/scripppts/..%0%af..winnt/system32/cmd.exe?/c+dir+d:\.

Nieszczelny ośrodek webowy odpowie na taki URL listą katalogów i plików na serwerowym dysku D.

Przez zastosowanie specjalnych znaków (nieprawidłowe dekodowanie znaku Unicode "/") wewnątrz URL było możliwe uzyskanie podczas audytu dostępu do takich katalogów, jak WINNT\System32. W nim znaleziono program powłoki komend serwera - CMD.EXE.

W oddzielnych testach eksperymentowano również z maszynami Unix i Linux, na których działał serwer webowy Apache. Stwierdzono, że pliki Uniksa i Linuksa także są narażone na niebezpieczeństwo.

Na przykład serwer może zawierać skrypt programu indeksującego PerlCGI, stanowiący element mechanizmu przeszukiwania tego serwera. Wysyłanie zlecenia GET www.site.com/indexcgi?page=index.cgi do serwera ujawnia kod źródłowy programu index.cgi. Można wtedy, przy pewnym nakładzie pracy, zgromadzić wystarczającą informację o ośrodku, przeglądając skrypt Perl, implementujący ten mechanizm przeszukiwań.


TOP 200