OWASP Broken Web Applications Project

11 czerwca 2018, 20:43 | Teksty | 1 komentarz
: zin o bezpieczeństwie - pobierz w pdf/epub/mobi.

Broken Web Applications Project to świetne rozwiązanie dla stawiających pierwsze kroki jako tester penetracyjny aplikacji webowych. Jest to zbiór popsutych webaplikacji, jak sama nazwa wskazuje, a dzięki temu podatnych na rozmaite ataki. Projekt dystrybuowany jest na darmowej linuksowej maszynie wirtualnej i zawiera kolekcję open source’owego oprogramowania z różnych źródeł. Wszystko jest już wstępnie skonfigurowane i gotowe do pentestowania. Licencja na każdy z komponentów pozwala na analizę kodu źródłowego i jego modyfikację w celu usunięcia odnalezionych zagrożeń.

Oprogramowanie zawarte w ostatniej wersji 1.2 wydanej w 2015 roku dzieli się na kilka sekcji:

  • Aplikacje treningowe – zaprojektowane do nauki, kierują użytkownika na konkretne podatności. W skład tego działu wchodzą: OWASP WebGoat, OWASP WebGoat.NET, OWASP ESAPI Java SwingSet Interactive, OWASP Mutillidae II, OWASP RailsGoat, OWASP Bricks, OWASP Security Shepherd, Ghost, Magical Code Injection Rainbow, bWAPP, Damn Vulnerable Web Application.
    Technologie używane w tych aplikacjach to Java, ASP.NET, PHP, Ruby on Rails.
  • Aplikacje realistyczne, lecz w dalszym ciągu umyślnie podatne – stworzone z myślą o nauce, oferują mnóstwo możliwości ataku, jednak wyglądem i działaniem sprawiają wrażenie zwykłych aplikacji. Zestaw zawiera: OWASP Vicnum, OWASP 1-Liner, Google Gruyere, Hackxor, WackoPicko, BodgeIt, Cyclone Transfers, Peruggia.
    Technologie: PHP/Perl, Java/JavaScript, Python, Java JSP, Ruby on Rails.

Rysunek nr 1. Przykładowe aplikacje dostępne w ramach OWASP Broken Web Applications Project

  • Stare wersje prawdziwych aplikacji – otwarte oprogramowanie z jednym lub więcej znanym błędem z zakresu bezpieczeństwa: WordPress, myGallery, Spreadsheet for WordPress, OrangeHRM, GetBoo, gtd-php, Yazd, WebCalendar, Gallery2, TikiWiki, Joomla, AWStats.
    Technologie: PHP, Java, Perl.
  • Aplikacje do testowania narzędzi – stworzone do testowania narzędzi automatyzujących procesy, takich jak skanery: OWASP ZAP-WAVE, WAVSEP, WIVET.
    Technologie: Java JSP, PHP.
  • Strony demonstracyjne / małe aplikacje z umyślnie zaprojektowanymi podatnościami w celu ich zademonstrowania: OWASP CSRFGuard, Mandiant, Simple ASP.NET Forms, Simple Form with DOM Cross Site Scripting.
    Technologie: Java/Struts, HTML/JavaScript, ASP.NET/C#.
  • Aplikacja demonstracyjne OWASP – bez żadnych intencjonalnie pozostawionych podatności: OWASP AppSensor Demo Application (Java).

Maszynę wirtualną można pobrać z adresu sourceforge.net/projects/owaspbwa/files/ i uruchomić przy pomocy VMware jak i VirtualBox. Wymagana będzie zapewne zmiana w ustawieniach sieci maszyny z NAT na mostkowaną kartę sieciową.

Rysunek 2. Konfiguracja maszyny wirtualnej.

Po uruchomieniu na konsoli pojawi się informacja o adresie IP maszyny oraz różnych sposobach administrowania nią.

Rysunek nr 3. Uruchomiona maszyna wirtualna – dane dostępowe.

Podany tam adres zawiera stronę z linkami do wszystkich wymienionych wyżej aplikacji. Strona główna maszyny jest również dostępna przez SSL. Serwer używa własnego certyfikatu. W celu wsparcia możliwości zarządzania maszyną wirtualną, dostępnych jest kilka interfejsów administracyjnych: SSH, Samba shares, Console login, PHPMyAdmin. Oprogramowanie wielu aplikacji może być aktualizowane na miejscu poprzez edycję plików (.php, .jsp, .aspx itp.) w wierszu poleceń (konsola albo SSH), jednak częściej osiągane jest to przez Samba shares. Po edycji plików efekt jest widoczny natychmiast.

Moduł Apache ModSecurity jest włączony, ale żadna reguła nie jest w użyciu (więc żadne zapytanie nie jest blokowane ani logowane). Wirtualna maszyna dostarcza łatwych mechanizmów włączania i wyłączania OWASP !ModSecurity Core Rule Set w celu pozwolenia użytkownikom na poznanie jego efektywności i ograniczeń w przechwytywaniu złośliwych requestów.

OWASP Broken Web Applications Project to pozycja obowiązkowa dla juniorów pentestingu aplikacji webowych. Już samo zawarte w projekcie Mutillidae II w bardzo przystępny sposób kieruje użytkownika za rękę po testowaniu całego OWASP Top 10 czy też web serwisów.

Rysunek nr 4. Mutillidae II – element OWASP Broken Web Applications Project.

Na wypadek trudności w zabraniu się za ataki w każdym ćwiczeniu dostępny jest zestaw podpowiedzi.

Rysunek 5. Mutillidae II – widok podpowiedzi.

Wyjaśniają one, na czym polega dana podatność, jak jej szukać w konkretnym ćwiczeniu oraz w jaki sposób ją wykorzystać.

Rysunek 6. Mutillidae II – widok podpowiedzi.

Na tych, którym mimo podpowiedzi nie idzie, czeka przycisk “Help Me!”, po użyciu którego ujawnione są konkretne ataki możliwe do przeprowadzenia w danym ćwiczeniu.

Rysunek 7. Mutillidae II – lista kroków możliwych do wykonania celem rozwiązania zadania.

Jeśli dodać do tego choćby znany WebGoat, którego nie trzeba osobno instalować, czy owiany (złą) sławą WordPress, każdy adept bezpieczeństwa powinien włączyć do swojej codziennej rutyny zabawę z BWA. Powinno tej zabawy starczyć na dłuższy czas, bo przecież łącznie aplikacji jest tu aż 37.

Piotr Pawłowski

Spodobał Ci się wpis? Podziel się nim ze znajomymi:



Komentarze

  1. prostababa

    Fajna składanka gdyby nie to że dawno już nie aktualizowane, niektóre aplikacje z podatnościami dublują się co powoduje że realnie zadan do realizacji jest o wiele mniej.
    Osobiście moge polecić: Mutillidae II, dobry projekt.

    Odpowiedz

Odpowiedz