Penetrationstest mit OWASP ZAP: Erfahrungsbericht, Vor- und Nachteile

Der Penetrationstest ist eine besondere Form des Softwaretests, bei der die Applikation auf Sicherheitsrisiken und Verwundbarkeiten geprüft wird. Das Ziel des Testers ist es, von außen Zugriff auf das System zu erlangen und damit die Möglichkeiten von Datendiebstahl oder gezielten Angriffen auf das System aufzudecken. Hierfür gibt es verschiede Tools auf den Markt, wovon wir eines in diesem Beitrag näher beleuchten werden.
Was ist OWASP ZAP?
OWASP ZAP ist ein Open-Source Security Scanner für Webapplikationen. Es stellt dem Anwender verschiedene Möglichkeiten für einen Penetrationstest bereit, womit es für Einsteiger als auch für Fortgeschrittene eine gute Alternative zu kommerziellen Anwendungen darstellt. OWASP ZAP ist für Linux, Windows und OS X verfügbar.
Hauptkomponenten von OWASP ZAP
Automated Scan
Der wohl einfachste Weg, einen Securitytest auszuführen, ist über den Automated Scan von OWASP ZAP. Es wird nur die zu testende URL benötigt und das Tool führt den Rest von alleine aus. Über einen Webcrawler werden nun alle verfügbaren Ressourcen erfasst und anschließend auf gängige Sicherheitsfehler, wie unsichere Header, geprüft.

Manual Scan
OWASP ZAP bietet neben dem Automated Scan auch die Möglichkeit, einen manuellen Scan durchzuführen. Hierzu wird ein interner Browser auf Chrome- oder Firefox-Basis benutzt, der den Internettraffic aufzeichnet und diesen passiv auf bekannte Verwundbarkeiten, wie unsichere Cookies oder ungeschützte Session-IDs, scannt. Diese Funktionalität lässt sich einfach in den manuellen Testprozess einbinden und bietet so die Möglichkeit, ohne nennenswerten Mehraufwand einen rudimentären Pentest auszuführen.


Resend Tool
Mit dem Resend Tool ist es möglich, bereits aufgezeichnete Requests erneut zu senden und gegebenenfalls zu manipulieren. Dies ist vor allem beim Testen von Zugriffsrechten oder Authentifizierungen interessant.

Deamon Mode
Es ist möglich, OWASP ZAP ohne UI auszuführen und im Hintergrund passiv zu scannen. Dies ist vor allem für bestehende Automatisierungslösungen interessant. Starten Sie OWASP ZAP mit einer Batchdatei vor Ihren Automatisierungsskripten und werten Sie anschließend die entstandenen Logfiles aus. OWASP ZAP bietet für Selenium sogar eine noch einfachere Anbindung. Hierzu hat OWASP eine kurze und verständliche Anleitung erstellt, wie OWASP ZAP mit Selenium angebunden werden kann.
Der ZAP Marketplace
ZAP bietet außerdem einen internen Marktplatz, über den sich schnell und einfach Plugins und Erweiterungen installieren lassen.
Vorteile
- Open Source
- Vielseitig konfigurierbar und anpassbar
- Einfache Bedienung
- Schneller Start in den PenTest
Nachteile
- Die Auswertung der LogFiles benötigt Pentest Kenntnisse
- Die Anpassung der Scanrules erfordert tiefe fortgeschrittene Kenntnisse in Entwicklung und Test
- Der aktive Scan stellt eine potenzielle Gefahr für die getestete Applikation dar
Kommerzielle Alternativen
Webinar:Continous Security Testing in der Delivery Pipeline, OWASP, Pentesting
Webinar: Skalierbare Lasttests mit JMeter | Cloud, AWS
Fazit
OWASP ZAP bietet eine solide Grundlage an Funktionen, die für den Pentest benötigt werden. Durch die verfügbaren Scanrules und den automatischen Scan ist es ohne viel Vorkenntnis möglich, die gängigsten Sicherheitslücken aufzuspüren. Für die Auswertung und das Aufspüren weiterer Fehler wird jedoch tieferes Fachwissen benötigt. Hierzu empfiehlt sich eine Schulung zum Thema ISTQB Advanced Level Security Tester zu besuchen.


Über den Autor
