ZAProxy

Was ist ZAProxy?

Das Open-Source-Werkzeug ZAP (Zed Attack Proxy) dient dazu, Schwachstellen in Web-Anwendungen zu finden. Sicherheitslücken stellen ein großes Problem dar, mit dem sich Entwickler und Administratoren konfrontiert sehen. ZAProxy überprüft solche Applikationen fortwährend auf bestehende Lücken. Penetrationstests und simulierte Angriffe dienen dazu, potenzielle Schwachpunkte offenzulegen.

Allgemeines zum Open-Source-Tool Zed Attack Proxy

Das Open-Source-Tool gehört zum Open Web Application Security Projekt oder OWASP. Administratoren finden mit diesem Werkzeug eine Möglichkeit der automatischen Sicherheitsüberprüfung von Web-Apps. Das Tool basiert auf Paros Proxy und richtet sich insbesondere an Entwickler und Nutzer, die bisher wenig Erfahrung mit Sicherheitstests oder Penetrationstests haben. Gleichzeitig ist es auch für die professionelle Anwendung geeignet. ZAP gilt als vergleichsweise einfache Lösung, lässt sich schnell installieren und ist mit vielen Betriebssystemen kompatibel (Windows, macOS X und Linux).

Funktionalität im Überblick

ZAProxy bietet Anwendern eine Reihe von Funktionen, die vom Abfangen und Prüfen der Web-Apps über den aktiven Scan bis zur Entschlüsselung von SSL-Anfragen reicht. Mit der Funktion Intercepting Proxy ermöglicht das Tool es, sämtliche Anfragen und Antworten einer Web-App abzufangen, beispielsweise Ajax-Calls. Diese werden anschließend überprüft.

Mit der Spider-Funktion lassen sich neue URLS auf Webseiten offenlegen und aufrufen. Anwender können mit dem ZAP-Spider sämtliche gefundenen Links auf Sicherheitslücken oder -probleme überprüfen. Mit dem aktiven Scan führt ZAP eine automatische Überprüfung der Web-Anwendungen auf Sicherheitslücken durch. Weiterhin verfügt ZAP auch über die Möglichkeit, Angriffe auszuführen. Die Anwendung dieser Funktion ist allerdings nur für eigene Web-Anwendungen gestattet. Eine weitere Funktionalität ist der passive Scan. Wird dieser angewandt, kommt es lediglich zur Überprüfung der Web-Apps, nicht jedoch zu einem Angriff.

Die Funktion Forced Browse dient dazu, einen Angriff auf ausgewählte Verzeichnisse oder Files auszuführen, diese auf dem Webserver zu öffnen und anschließend zu überprüfen. Mit der Fuzzing-Funktion kann ZAP bewusst ungültige oder nicht erwartete Anfragen an den Server senden. Über die Dynamic SSL Certificates kann ZAP SSL-Anfragen entschlüsseln. Hierbei kommt der MITM-Technik zur Anwendung (Man-in-the-Middle).

Über Smartcard kann ZAProxy Web-Applikationen prüfen. Der Client Digital Certificates Support ermöglicht es, TSL-Handshakes zu überprüfen. Dies kann beispielsweise bei der Kommunikation zwischen Mail-Servern zur Anwendung kommen. Über die Funktion WebSockets kann ZAP auch solche Applikationen testen, die einzelne TCP-Verbindungen zur Kommunikation in beide Seiten nutzen.

ZAProxy bietet vielseitige Skript-Unterstützung. Neben JavaScript und ECMAScript gehören auch Python, Ruby, Groovy und Zest zu den unterstützten Skripten. ZAP ermöglicht es Entwicklern auch, eigene graphische Oberflächen zu erstellen. Damit lässt sich das Werkzeug jederzeit an das eigene Unternehmen anpassen. Zu diesem Zweck kommt die Funktion Powerful REST based API zum Einsatz. REST beschreibt einen Architekturansatz, der die Art der Kommunikation verteilter Systeme definiert. Eine REST API stellt demnach eine bestimmte Programmier-Schnittstelle dar, die an bestimmten Paradigmen ausgerichtet ist.

Mit der von Mozilla entwickelten Plug-n-Hack-Technik lässt sich festlegen, wie Sicherheits-Werkzeuge wie ZAProxy mit Webbrowsern kooperieren und dabei Sicherheitstests durchführen können. Eine weitere Eigenschaft des Open-Source-Tools ist seine Erweiterbarkeit. ZAP eignet sich für die Integration zahlreicher Add-Ons, Plug-ins oder Vorlagen zur Durchführung bestimmter Tests. Zum Erwerb dieser Erweiterungen steht ein eigener Webshop zur Verfügung.

Basis-Installation von ZAP durchführen

Zur Installation auf einem Rechner mit Windows, Linux oder macOS X ist zunächst die Installationsdatei herunterzuladen. Nach Zustimmung zu den Lizenzbedingungen und Angabe des Installationspfades ist die Anwendung innerhalb weniger Sekunden installiert. Zusätzlich zur eigentlichen Anwendung ist auf dem Rechner eine Java-Umgebung in 64-Bit erforderlich.

Nach dem Start der grafischen Oberfläche können Anwender und Entwickler sofort mit den diversen Tests beginnen. Unter dem Punkt Schnellstart auf der Registerkarte geben Anwender die URL der zu überprüfenden Web-Applikation an. Ein Klick auf Angriff startet den Test. Während des Scans zeigt ZAP in einem Fenster die jeweiligen Ergebnisse an. Im linken Bereich ist der Datenverkehr einsehbar, während die anzugreifende URL in der Mitte steht. Im unteren Bereich sehen Anwender den aktuellen Status des Scanvorgangs. Auch die Scan-Ergebnisse befinden sich im Fenster unten. Die wesentlichen Einstellungen des Werkzeugs finden sich im Bereich Tools – Optionen.

Test der Web-Anwendungen auf Sicherheitslücken und Anfälligkeiten

Weit verbreitete gefährliche Angriffe sind Spider-Attacken und Fuzzing. Beim Fuzzing versuchen Angreifer, sich durch unerwartete Codes Zugriff auf Webserver zu verschaffen, beziehungsweise diesen Code zu übertragen. Eine ähnliche Vorgehensweise ist das Cross-Site-Scripting (XSS). Angriffe dieser Natur lassen sich mittels ZAP überprüfen.

Wenn Anwender auf der linken Seite einen Aufruf auswählen, sehen sie auf der rechten Seite die Registerkarte Anfrage. In dieser Registerkarte ist der Datenverkehr zu sehen, den der Webbrowser an den Server weitergeleitet hat. Das untere Feld zeigt die eingegebenen Anwender-Daten, wobei hier Anmeldenamen und Passwort teils in sichtbarem Klartext erscheinen.

Auf Grundlage dieser Daten können Anwender einen Fuzzing-Angriff starten. Zu diesem Zwecke ist mittels rechter Maustaste einer der Werte anzuklicken und die Option “Fuzzen” auszuwählen. Als Variante des Fuzzens lassen sich auch an Webanwendungen angebundene Datenbanken angreifen und testen. Auch Spider-Angriffe lassen sich via ZAP überprüfen. Diese Form von Attacke ist darauf ausgelegt, alle URLs einer Web-Applikation zu erreichen. Auf diese Weise sollen Sicherheitslücken offengelegt werden.

Zum Test eines Spider-Angriffs ist zunächst die zu überprüfende URL aufzurufen. Dabei ist darauf zu achten, dass im Browser der ZAP-Rechner als Proxyserver angegeben ist. Nachdem die Seite geöffnet wurde, ist sie direkt in ZAP auf der linken Seite zu finden. Nach Auswahl der zu testenden Seite können Anwender im unteren Bereich der Seite die Registerkarte Spider öffnen. Mit dem Menüpunkt New Scan lässt sich der Scanprozess starten. Im Rahmen des Spider-Angriffs lässt sich die Link-Tiefe des Angriffs im Bereich Tools – Optionen steuern und verändern.

Ebenso ist ZAP imstande, versteckte Verzeichnisse nach potenziellen Sicherheitslücken zu überprüfen. Solche Verzeichnisse in Web-Anwendungen sind ein besonders beliebtes Ziel bei Angreifern, da sie interessante Daten beinhalten können. Zu diesen zählen Konfigurationsdateien oder Logfiles.

Einordnung und Ergänzung

Web-Tools wie Zed Attack Proxy sind grundsätzlich dazu geeignet, bestehende Sicherheitslücken in Web-Applikationen aufzudecken. In diesem Zusammenhang sind sie als Zusatz-Werkzeuge im Kontext einer übergeordneten Sicherheits-Strategie zu verstehen. Anwender sollten sie nicht als Ersatz für eine grundsätzliche Sicherheits-Infrastruktur ihrer Web-Anwendungen betrachten. Eher sind Werkzeuge wie ZAP geeignet, die schon bestehende Sicherheitsarchitektur zu testen. Die Stärke des Tools besteht darin, auch Einsteigern, eine schnelle und einfach umzusetzende Überprüfung zu ermöglichen. Auf den zu testenden Servern sind keine Änderungen vorzunehmen und auch keine weiteren Agenten erforderlich.


Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG


Weitere Inhalte