Auditierung von Web-Applikationen
Um eine Webapplikation beziehungsweise einen Webserver mit mehreren Applikationen in der Tiefe zu auditieren ist eine Kombination von Tools und händischen Überprüfungen notwendig. Allgemein kann die Auditierung in vier Phasen unterteilt werden.
Phase 1 Reconnaissance (Informationsfindung)
In dieser Phase wird die Applikation vom Auditor ein erstes Mal analysiert und die Funktionalität der Applikation überprüft beziehungsweise verifiziert. Diese Phase wird als eine der wichtigsten im gesamten Security-Audit angesehen. Denn nur durch vollständiges Verstehen der Applikation ist es einem Auditor auch möglich, Angriffsvektoren zu identifizieren und aufzuzeigen.
Phase 2: Mapping (Aufstellung von Abhängigkeiten, Kartographie)
Mapping dient dem Zweck, die Abhängigkeiten zwischen einzelnen Pages aufzulisten und die verwendeten Variablen aufzuzeichnen.
Phase 3: Discovery
Das Erkennen von Sicherheitslücken und deren Dokumentation. Punkt für Punkt werden die in Phase 1 und 2 gefundenen Variablen getestet, ob Schwachstellen existieren beziehungsweise ob diese Variablen auf Sicherheit gefiltert werden. Hin und wieder wird für die Überprüfung der Variablen ein eigenes Skript programmiert, meistens wird diese Prüfung aber per Hand durchgeführt. Das von Auditoren hauptsächlich hierbei verwendete Tool ist der Webbrowser (meistens kombiniert mit einem Interception Proxy wie beispielsweise Paros oder der Burp Suite).
Phase 4: Exploitation
Die letzte Phase bezieht sich auf die Entwicklung eines Exploits, der beispielsweise Benutzernamen und Passwort-Kombination sammeln oder Kommandos auf dem Webserver ausführt.
Details zu den geprüften Technologien
Die häufigsten Schwachstellen nach denen im Rahmen eines Applikationsaudits gesucht wird, sind Schwachstellen in den Bereichen Cross Site Scripting und SQL Injection. Die Audits der Firma SiteXs-Databusiness bieten insofern einen Mehrwert, als dass nach Absprache mit dem Kunden ebenso folgende Themen auditiert werden:
- Clientseitige Schwachstellen (beispielsweise Cross Site Request Forgery)
- Disclosure von Informationen auf der Seite des Servers
- Überprüfung der Sicherheit von kryptographischen Mechanismen beispielsweise des „Single Sign On“
- Mechanismus in der Kommunikation zwischen mehreren Webportalen
- Prüfung der korrekten Implementierung von Authentifizierung und Authorisierung
- Überprüfung der Applikationslogik bei Webshops und sogenannten „Stateful Services“
- Überprüfung auf File Inclusion und Command Injection

