Web Application Security

Fehlersuche in Web-Applikationen und Web-Services

Sicherheitslücken in Web-Anwendungen und Web-Services sind ein gefährliches Einfallstor in die Unternehmens-IT. Web-Applikation-Scanner automatisieren die Fehlersuche in Web-Applikationen und reduzieren die Zeit für die Bug-Suche drastisch.

Ob Online-Einkauf, Online-Banking oder nur eine einfache Suche im Internet, interaktive Webseiten mit Formularen und Eingabefeldern sind ein zentrales Element des Internets. Die Bedienung durch plattformunabhängige Browser macht Web-Anwendungen für alle Geschäftsfelder interessant. Doch in erstaunlich vielen Webanwendungen finden sich gravierende Sicherheitslücken. Diese wiegen umso schwerer, da darüber interne Firmendaten von jedem Ort der Welt aus auszuspähen sind.

Schuld ist oft ein straffer Zeitplan, der wenig Zeit für die Fehlersuche in einem neuen Release einer Applikation lässt. Aber auch gut informierten und erfahrenen Programmierern ohne Zeitdruck können Fehler unterlaufen, die eventuell ernste Folgen nach sich ziehen - im schlimmsten Fall lassen sich Befehle auf den zugrundeliegenden Systemen ausführen oder vertrauliche Daten aus der Datenbank auslesen.

Grundsätzlich gilt: Je früher solche Sicherheitslücken in der Entwicklungsphase erkannt werden, desto leichter sind sie zu beheben. Um diese Schwachstellen rechtzeitig auszumerzen, empfehlen sich zwei Herangehensweisen. Zum einen handelt es sich dabei um die statische (Quellcode-)Analyse, die auf Basis des produzierten Codes versucht, den Datenfluss zu erkennen und Fehler in Logik und Datenverarbeitung aufzudecken. Zum anderen gibt es die dynamische Überprüfung an einer lauffähigen Applikation, mit der sich dieser Beitrag schwerpunktmäßig befasst.

Die dynamische Überprüfung, das klassische "Web-Audit", umfasst aufwändige manuelle Aufgaben, lässt sich aber auch ein Stück weit automatisieren: Unterstützung leisten hier Web-Applikations-Scanner, mit deren Hilfe viele Schwachstellen in einer Anwendung effizient aufgespürt werden können. Anders als klassische Netzscanner wie beispielsweise "Nessus" oder "Retina", die auf Betriebssystem- und Dienstebene nach Schwachstellen suchen, setzen diese Spezial-Tools auf einer höheren Ebene an und interagieren - ähnlich wie ein Browser - nur über den HTTP(S)-Kanal mit der Anwendung.