Szkoła mistrzów - Uczymy się zabezpieczać aplikacje WWW z Web Security Dojo

Opublikowane:

01.01.2018

Zabezpieczenie własnej witryny przed atakiem wymaga znacznych nakładów finansowych bądź dużej wiedzy i doświadczenia. Dzięki Web Security Dojo nauczymy się myśleć jak specjalista od bezpieczeństwa WWW.

Zabezpieczenie własnej witryny przed atakiem wymaga znacznych nakładów finansowych bądź dużej wiedzy i doświadczenia. Dzięki Web Security Dojo nauczymy się myśleć jak specjalista od bezpieczeństwa WWW.

Erik Bärwaldt

Bezpieczeństwo WWW spędza sen z powiek wielu użytkownikom. Niestety, najnowsze rodzaje ataków są bardzo zaawansowane, wszystko zaś dodatkowo komplikują mechanizmy śledzące – zarówno ze strony nastawionych na zysk korporacji, jak i różnych agenci rządowych – utrudniając rozwój bezpiecznego internetu.

Z pomocą przychodzi nam linuksowe środowisko o nazwie Web Security Dojo [1], dzięki któremu zwykli użytkownicy i początkujący profesjonaliści mogą się wiele nauczyć na temat bezpieczeństwa WWW. Celem Dojo jest udostępnienie praktycznych ćwiczeń związanych z atakami i zabezpieczeniem się przed nimi.

Maszynę wirtualną z Dojo pobierzemy z SourceForge [2] w formie 2,3-gigabajtowego obrazu OVA.

Dojo potrafi działać w VirtualBoksie w wersji co najmniej 5.0 i w VMware. Pobrawszy obraz, instalujemy środowisko testowe w VirtualBoksie, podając ścieżkę dostępu do pobranego pliku OVA z poziomu men File | Import Appliance... Następnie otwieramy nową maszynę wirtualną (Rysunek 1).

Rysunek 1: W obrazie znajdziemy wstępnie skonfigurowaną maszynę wirtualną.

Maszyna wirtualna nosi w VirtualBoksie nazwę Dojo 3.0. Po uruchomieniu Dojo ma postać 32-bitowego Xubuntu 16.04 z pulpitem XFCE desktop (Rysunek 2).

Rysunek 2: Pulpit XFCE Dojo nie zawiera kwiatków ani ptaszków.

Początek i koniec

Wirtualne środowisko do nauki Web Security Dojo zawiera różne usługi, które są skonfigurowane w taki sposób, by służyły za cele symulowanych ataków. Usługi znajdujące się w menu Targets obejmują szeroki zakres scenariuszy ataków. Niektóre z tych usług są domyślnie aktywne – pozostałe musimy uruchomić ręcznie.

Niektóre z usług w menu Targets to aplikacje webowe, które wymagają usługi pośredniczącej. Owe usługi pośredniczące dostępne są w formie dodatków do Firefoksa (Rysunek 3). Ponieważ zarówno narzędzia do przeprowadzenia ataku, jak i atakowane cele znajdują się na tym samym systemie, połączenie z internetem nie jest niezbędne do nauki.

Rysunek 3: W Dojo znajdziemy usługi pośredniczące w formie dodatków do Firefoksa. Są one niezbędne do przeprowadzenia niektórych typów ataków.

W praktyce

W centrum Dojo znajduje się Firefox. Przy pierwszym uruchomieniu proponuje on użytkownikowi otwarcie strony Damn Vulnerable Web Application (DVWA) [3]: jest to wstępnie skonfigurowane środowisko testowe, w którym użytkownik zaznajamia się z wieloma różnymi lukami w zabezpieczeniach aplikacji webowych (Rysunek 4). W oknie DVWA logujemy się, używając nazwy użytkownika admin i hasła password.

Rysunek 4: DVWA zawiera początkowy przegląd scenariuszy ataku.

W menu po lewej znajdziemy różne techniki ataku, takie jak Cross Site Scripting (XSS), SQL Injection, CSRF oraz Brute Force. W każdym przypadku otrzymamy informacje dodatkowe w formie odnośników do odpowiednich stron WWW i wiki.

Oprócz tego w Dojo znajdziemy dodatkowe narzędzia związane z bardziej złożonymi scenariuszami ataku. Jest tam np. javowa aplikacja WebGoat, która stanowi część projektu OWASP [4]. WebGoata uruchamiamy skryptem WebGoat Start w menu Targets, po czym klikamy odnośnik WebGoat na stronie domowej Firefoksa. Logujemy się, używając nazwy użytkownika guest i takiegoż hasła.

Na początku pojawi się krótkie wprowadzenie i lista różnych scenariuszy testowych po lewej stronie ekranu (Rysunek 5). W podgrupach możemy znaleźć częściowy opis poszczególnych kategorii, np. w Authentication Flaws znajdziemy testy luk w zabezpieczeniach związanych z uwierzytelnianiem.

Rysunek 5: WebGoat bardziej przyda się zaawansowanym użytkownikom.

U góry ekranu znajduje się kilka  opcji. Rozwiązanie danego scenariusza znajdziemy w Show Solution, natomiast w Show Plan – dodatkowe informacje dydaktyczne. Show Source pozwoli nam zaznajomić się z kodem źródłowym, a Restart Lesson ponownie uruchomi aktywne zadanie. Usługę zatrzymujemy, klikając w menu pozycję WebGoat Stop.

Kolejne dwie platformy do nauki technik obrony przed atakami webowymi to Google Gruyere i Hacme Casino firmy McAfee. Narzędzia te uruchamiamy ręcznie z menu Targets, po czym odpowiednie witryny pojawią się w Firefoksie. Gruyere, którego nazwa pochodzi od słynnego sera, prezentuje wiele popularnych metod włamań na witryny i przedstawia rozwiązania uniemożliwiające tego typu ataki. Z kolei Hacme Casino przypomina wyglądem kasyno internetowe – niech nas to jednak nie zmyli: to bardzo przydatne narzędzie edukacyjne, które zaznajomi użytkownika z wieloma popularnymi technikami ataku. Istnieje też szczegółowy podręcznik Hacme Casino zawierający wiele praktycznych przykładów [5].

W menu Tools znajdziemy wiele narzędzi i skanerów, które możemy wykorzystać do własnych celów. jest tam skaner zabezpieczeń Arachni, framework BeEF do wykrywania dziur w przeglądarkach, Metasploit oraz W3af – również w wersji działającej w wiersz poleceń. Dostępny jest też Dirbuster – napisana w Javie aplikacja do przeprowadzania ataków siłowych, oraz Burpsuite. Nie zabrakło też aplikacji działających w wiersz poleceń, takich jak Skipfish, SqlMap czy Skavenger Shell.

Dokumentacja

Twórcy włożyli wiele wysiłku w dostarczenie obszernej dokumentacji. Narzędziom towarzyszą pliki HTML i PDF; możemy tez korzystać z samouczków na YouTube, dzięki którym początkującym użytkownikom łatwiej będzie zainstalować system i się z nim zaznajomić. Pewne podstawowe informacje znajdziemy też na pulpicie w plikach README.html i GettingStarted.html.

Dokumentacja do głównych zestawów narzędzi znajduje się w katalogu Documentation. Możemy też tworzyć własne notatki, używając w tym celu Zima – wiki działającego na pulpicie. Aby go uruchomić, klikamy ikonę Zima na pulpicie.

@ZT:Wnioski

Web Security Dojo to doskonałe narzędzie dla początkujących profesjonalistów, którzy chcą zaznajomić się z mechanizmami zabezpieczeń aplikacji webowych. Obraz OVA jest łatwy w instalacji, a lekkie środowisko XFCE ułatwia pracę. Programiści starannie dostosowali narzędzia i środowiska testowe pod kątem nauki, możemy więc od razu rozpocząć program edukacyjny.

Pamiętamy jednak, że choć Web Security Dojo to potężne narzędzie do nauki bezpieczeństwa WWW, nie zostało one zaprojektowane z myślą o wykorzystaniu jako platforma do testów penetracyjnych – twórcy Dojo zalecają użycie w tym celu Kali Linuksa [6].

Info

[1] Web Security Dojo: https://www.mavensecurity.com/resources/web-security-dojo
[2] Witryna Dojo w serwisie SourceForge: https://sourceforge.net/projects/websecuritydojo/files/
[3] DVWA: http://www.dvwa.co.uk
[4] OWASP: https://www.owasp.org
[5] Podręcznik Hacme-Casino https://github.com/spinkham/Hacme-Casino/blob/master/install/userguide/HacmeCasino_UserGuide.pdf
[6] Kali Linux: https://www.kali.org

Aktualnie przeglądasz

Styczeń 2018 - Nr 167
Jan-2018a

Top 5 czytanych

Znajdź nas na Facebook'u

Opinie naszych czytelników

Nagrody i wyróżnienia