WebGoat – OpenSource Alternative zu OSCP

Wer Penetrationstesting lernen will, erreicht dies am besten durch eine Kombination von Theorie und Praxis. Das ist bekannt und trifft auf fast alle Gebiete der Informatik zu.
Als gute Ressource wird immer wieder der Kurs von Offensive Security: Offensive Security Certified Professional empfohlen. Leider übersteigt der Kaufpreis dieses, zweifellos guten, Kurses das Budget vieler, welche sich parallel zum Studium (oder einem vergleichbaren finanziell eher ertragslosen Lebesnabschnitt) spezialisieren oder weiterbilden wollen.

Als Alternative möchte ich kurz das WebGoat-Projekt von der OWASP vorstellen:

Es handelt sich hierbei um ein Lab, welches manuell zusammengestellt, oder auch als JAR einsatzbereit heruntergeladen werden kann. Hier werden dem Nutzer diverse Möglichkeiten geboten, Wissen über die Sicherheit und Angreifbarkeit von Webapplikationen zu erlangen der zu erweitern.

Die einzelnen Bereiche werden in Lessons unterteilt, welche aus Teilabschnitten für Details bestehen. So ist einer der ersten Themen ACF (Access Cotrol Flaws), welches aus einer Einleitung zum Thema besteht, einem Lab, bestehend aus 4 Stages. Einige der Teile funktionieren allerdings nur mit der Developer Version.

Im Folgenden möchte ich kurz das UI der Anwendung vorstellen:

WebGoat Interface
WebGoat Interface

Auf der linken Seite, mit 1 gekennzeichnet, befindet sich eine Übersicht der Lessons. Die Themen sind vielfältig und decken u.A. AJAX, Overflows, XSS, DoS, etc. ab.

Die Buttons 2 bis 5 dienen als Hilfestellung für die Aufgabe. „Java[Source]“ zeigt den Javacode an, „Solutions“ logischerweise die Lösung der Aufgabe. „Lesson Plan“ fasst die Ziele und Aufgaben der Lesson zusammen und „Hints“ präsentiert Lösungsansätze zur Aufgabe.
Nummer 6 ist hierbei wohl der interessanteste Aspekt; hier werden die Daten des HTTP Requests angezeigt, welche benötigt werden, um die Aufgabe zu bewältigen.

Wie kann man diese Anwendung installieren?

Ich werde die Installation der Beginner Version demonstrieren. Hierzu wird folgende Datei benötigt: https://s3.amazonaws.com/webgoat-war/webgoat-container-7.0-war-exec.jar
Alternativ ist der Source auch auf GitHub zu finden.

Zur Installation wird Java und Tomcat benötigt. Sobald die Datei geladen ist, muss die Kommandozeile/Shell geöffnet werden und zum Downloadverzeichnis navigiert werden. Im Falle von Windows kann dies vereinfacht werden, indem man mit gehaltener SHIFT Taste einen Linkslick auf den Ordner tätigt und die Option „Eingabeaufforderung hier öffnen“ auswählt. Andernfalls kann dies per cd gelöst werden.

In der Kommandozeile wird dann dieser Befehl verlangt:

java -jar webgoat-VERSIONSNUMMER-exec.jar

Es sollten jetzt im Hintergrund mehrere Prozesse, u.A auch eine Tomcat Instanz geöffnet werden.
Kommt es zu keiner Fehlermedlung kann am Ende die Seite unter localhost aufgerufen werden:

127.0.0.1:8080/WebGoat

Hier kann man sich mit den gast oder admin Logins in die Applikation einloggen.

Das war’s eigentlich. Ab hier können alle Aufgaben durchgearbeitet werden, um ein besseres Verständnis der Websicherheit zu gewinnen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.