Bei IT Sonix befassen wir uns regelmäßig mit neuen Testmethoden, um unseren Ansprüchen an qualitativ hochwertige Software gerecht zu werden. Vor kurzem haben unsere Xperten das Tool ZAP by Checkmarx (Zed Attack Proxy) genauer unter die Lupe genommen und für den Projekteinsatz evaluiert. Softwareentwicklung mit KI ist mittlerweile in deutschen Unternehmen angekommen und damit steigt auch die Zahl an Softwareprodukten am Markt. Hohe Geschwindigkeiten und gesteigertes Output können die Fehleranfälligkeit erhöhen. Reviewprozesse werden damit noch wichtiger, als sie es bisher waren.
Auch wir bei IT Sonix arbeiten mit KI und entwickeln darüber hinaus eigene KI-Lösungen, um unseren Kunden die bestmögliche Software zu liefern. Unsere Qualitätssicherung sorgt dafür, dass unsere Anwendungen sicher sind und unsere Kunden diese ohne Bedenken der breiten Masse zur Verfügung stellen können.
Sicherheitsprobleme werden meist schnell teuer und die beste Methode ihnen zu begegnen ist: Sie gar nicht erst entstehen zu lassen.
Was ist ZAP?
ZAP ist ein Open-Source-Projekt, das ursprünglich im Umfeld des OWASP (Open Worldwide Application Security Project) entstanden ist und seit 2024 von Checkmarx weiterentwickelt wird. Die Anwendung ist kostenfrei und eignet sich vor allem für Web- und API-Security-Tests.
Dank seiner Plattformunabhängigkeit lässt sich ZAP sowohl unter Windows als auch unter macOS und Linux einsetzen. Der Funktionsumfang und die leichte Bedienung machen es für Einsteigende, professionelle Pentester und Entwickelnde gleichermaßen attraktiv. ZAP unterstützt maßgeblich beim Auffinden typischer Web-Schwachstellen wie:
- XSS
- SQL-Injection
- Authentifizierungs- und Autorisierungsfehler
Die Anwendung gehört zu den sogenannten DAST-Tools (Dynamic Application Security Testing). Diese Sicherheitslösungen untersuchen Webanwendungen und APIs von außen auf Schwachstellen, ohne den Quellcode zu kennen. Sie simulieren Hackerangriffe (z. B. SQL-Injection, XSS), um Laufzeitprobleme zu identifizieren.
Anwendungsfälle
Bei unseren Tests erwies sich ZAP vor allem für die Sicherheitsüberprüfung klassischer Webanwendungen wie Single Page Applications (SPA) und der Durchführung von API-Tests (REST, SOAP-Schnittstellen) als verlässlicher Partner. Auch bei der Unterstützung von Bug-Bounty-Aktivitäten kann das Tool punkten. Darüber hinaus eignet sich ZAP hervorragend für Schulungen und Trainings im Bereich Web-Security.
Wie funktioniert ZAP?
Das Tool arbeitet als Man-in-the-Middle zwischen Browser und Zielanwendung (Web Application). Es zeichnet HTTP(S)-Requests und Responses auf und analysiert diese. ZAP ermöglicht eine manuelle oder automatisierte Auswertung sowie das Replay von Requests. Auch das sogenannte Fuzzing, also die automatisierte Veränderung von Variablen in Requests, ist mit ZAP möglich.
Bedienung und Funktionen
Die Bedienung erfolgt über drei Interfaces:
- Desktop
- HUD (Head up Display)
- API (Integration in andere Anwendungen möglich)
Die Hauptfunktion ist die Intercepting Proxy mit History-Ansicht. Hier sehen Nutzende alle Requests und können diese modifizieren, inspizieren und ausführen. Hinzukommen Spider und AJAX-Crawler zur automatisierten Pfaderkennung für Black-Box-Testing.
Der AJAX-Crawler in ZAP wurde speziell dafür gebaut, SPAs und andere dynamisch nachladende Seiten zu durchsuchen. Ein gewöhnlicher Crawler (ein Programm, das automatisch Links auf einer Website verfolgt) würde bei einer SPA nicht alle Inhalte finden, weil vieles erst durch Klicks und Interaktionen sichtbar wird. Der AJAX-Crawler simuliert diese Interaktionen.
Eine weitere hilfreiche Funktion ist die Durchführung von Scans. Hier unterscheidet ZAP passive und aktive Scanner.
Passiver Scan:
- getestete Anwendung erhält regulären Traffic und kann Scan nicht erkennen
- Es werden keine zusätzlichen Angriffe ausprobiert
- Erkennung von Header-Problemen, HTTP-Konfiguration, Informationslecks
Aktiver Scan:
- gezielte Angriffe auf Parameter, Formulare, Endpunkte
- fokussiert auf Schwachstellen wie XSS, SQL-Injection, RFI etc.
- nur mit Erlaubnis und in Testumgebungen
- verhält sich aggressiver, um Schwachstellen zu provozieren, niemals in Produktionsumgebungen
Hinzukommen unterschiedliche Scan-Arten:
- automatisiert
- manuelles Explorieren
Während automatisierte Scans regelmäßig ausgeführt werden und breitflächig angelegt sind, gehen manuelle Scans in die Tiefe. Beide Methoden sind eine umfassende Sicherheitsbewertung.
Automatisierter Scan
- nutzt vordefinierte Regeln und Test Policies ohne manuelle Eingriffe
- effizient für breite Coverage und regelmäßige Wiederholungen (z. B. in CI/CD)
- findet bekannte Schwachstellenmuster zuverlässig und schnell
Manuelles Explorieren
- manuelles, kontextbezogenes Testen mit individuellen Payloads
- ermöglicht Anpassung an spezifische Anwendungslogik und ungewöhnliche Strukturen
- entdeckt komplexe oder ungewöhnliche Schwachstellen, die automatisierte Scans übersehen
Darüber hinaus kann ZAP über Marktplatz Add-ons erweitert werden. Unsere Xperten empfehlen:
- Active Scanner Rules (Alpha / Beta): Diese Add-ons erweitern die Scan-Regeln um neue, spezialisierte Angriffsmuster
- Community Scripts: Sind eine Sammlung von Skripten, die von der OWASP-ZAP-Community erstellt wurden, um die Funktionen von ZAP über die Standard-Add-ons hinaus zu erweitern. Bspw. OTPs in MFA Authentications füllen, RSA-Signierung und vieles mehr.
Integration in CI/CD und DevSecOps
Immer schnellere Entwicklungszyklen, kurze Release-Abstände sowie automatisierte Deployments haben die moderne Softwarelandschaft nachhaltig verändert. Damit steigt auch die Gefahr, Sicherheitslücken im Reviewprozess zu übersehen. DevSecOps sorgt dafür, dass Sicherheitsaspekte nicht am Ende geprüft, sondern frühzeitig und automatisiert im Entwicklungsprozess integriert werden.
Die ZAP-REST-API ermöglicht eine weitgehende Automatisierung von Scans und ergänzt den DevOps-Entwicklungsprozess um wichtige Security-Scans. Das ist ein wichtiger Schritt in Richtung DevSecOps. ZAP bietet einen Headless-Modus für nicht-interaktive Build-Pipelines. Die Option Reports (HTML, XML, JSON) zu exportieren, unterstützt Dokumentation und Tracking. ZAP kann für Scans in den Testsystemen verwendet, aber auch als Quality Gate im Entwicklungsprozess integriert werden. Somit kann das Tool bereits innerhalb des Pull-Requests Informationen zur Sicherheit der Implementierung liefern. Das verschiebt die Erkennung von Problemen näher an den Entwicklungsprozess und beschleunigt Fehlerbehebungen.
Fazit
ZAP punktet vor allem durch sein kostenfreies Open-Source-Modell. Zudem ist es flexibel einsetzbar und verfügt über eine große Community. Dadurch ist es äußerst leistungsfähig und bleibt immer am Puls der Zeit.
Die Anwendung ist eine solide Unterstützung beim Aufspüren klassischer Webschwachstellen und eignet sich gut für Trainings sowie erste Pentests. Grenzen zeigen sich bei logischen Schwachstellen (z. B. komplexe Business-Logik), aber auch bei mobilen Apps. Es ist wichtig die Ergebnisse nicht als vollautomatische Sicherheitsgarantie zu bewerten, da es sich lediglich um Hinweise handelt.
Unsere Xperten empfehlen die Tests nur auf Systemen mit ausdrücklicher Genehmigung durchzuführen sowie Scope- und Scan-Policies bewusst einzuschränken. Aktive Scans sollten vorzugsweise in Test- oder Staging-Umgebungen durchgeführt werden. Für den produktiven Einsatz ist es wichtig, Ergebnisse zu priorisieren und systematisch in den nächsten Sprints zu bearbeiten.
Darüber hinaus sind regelmäßige Updates für ZAP und Add-ons unverzichtbar. Wer diese Punkte berücksichtigt, verfügt über ein starkes Werkzeug zur Bewertung von Sicherheitsrisiken bei Webanwendungen.
Qualitätssicherung ist kein Nice-to-have. Sie ist maßgeblich an der Entwicklung exzellenter Software beteiligt. Seit über 20 Jahren bauen wir bei IT Sonix hochwertige Softwarelösungen und legen dabei großen Wert auf einen ganzheitlichen Entwicklungsprozess. Das Ergebnis stellt unsere Kunden zufrieden und verschafft ihnen den notwendigen technologischen Vorsprung, um auf dem schnelllebigen Markt bestehen zu können.