BurpSuite
Burp Suite
Burp (Suite) ist ein Tool der Firma Portswigger, das vor allem im Bereich der Web Application Security und Testing eingesetzt wird. Jedoch auch für weitere Analysezwecke bei jeglichem HTTP-Verkehr eingesetzt werden kann. Es gibt drei verschiedene Editions: Community, Professional und Enterprise. Diese unterscheiden sich in Kosten und Funktionsumfang. Die Burp Suite besteht aus mehreren Komponenten, diese sind:
Target: In diesem Bereich können grundlegende Informationen zur untersuchenden Web Applikation festgehalten werden. Alle aufgerufenen URLs, Formulare usw. Werden erfasst und in der sog. Site-map dokumentiert. Der automatisierte Prozess hiervon lässt sich mit Burp Spider erstellen.
Hier lassen sich außerdem sog. Scopes definieren um Teile der Web Applikation aus der Untersuchung auszuschließen.
HTTP Proxy (free-version): Dieses Tool ist der enthaltene Proxy-Server. Dieser schaltet sich nach dem Man-In-The-Middle Prinzip zwischen Browser und Web-Applikation und schneidet den HTTP-Verkehr mit. Über die Interception Funktion lässt sich auswählen, ob nach jedem Request auf ein Weiterleiten der Anfrage gewartet werden soll oder die Anfragen protokolliert und automatisch weitergeleitet werden sollen.
Scanner/Spider: Die Scanner Funktionalität besteht aus zwei Schritten. Zuerst wird der Inhalt der Web Application (links, submitting forms) gecrawlt und ein Tree aus den Ergebnissen erstellt. In der zweiten Phase (Auditing) werden die gefundenen Ergebnisse und der bis dahin ausgetauschte Datenverkehr auf Schwachstellen überprüft. Hierbei geht Burp stufenweise vor.
- Passiv: Hierbei werden die normalen Anfragen und Antworten untersucht
- Light active: Hier werden zusätzliche leicht veränderte Anfragen abgesendet und das Verhalten untersucht
- Medium active: In diesem Schritt werden gezielt Anfragen gestellt, die vergleichbar mit einer gezielten Attacke sind
- Intrusiv active: Diese Anfragen sind so gestellt, dass mit einer Veränderung bzw. Beschädigung der Web Application rechnen muss
- Java Script analysis: Hierbei wird das clientseitige JavaScript analysiert und auf Schwachstellen geprüft
Intruder (eingeschränkt in free-version): Dieser Teil der Burp Suite ermöglicht automatisierte angepasste Attacken gegen Web Applications. Aus einem bereits mitgeschnittenen Request wird ein Template für Intruder verwendet und die Standard Parameter durch payloads ersetz.
Intruder schlägt hierbei automatisch die Position des payloads in den Parametern vor. Die Antworten der Web Application auf die modifizierten Requests können anschließend nach passenden Übereinstimmungen untersucht werden und die Attacken wiederum verfeinert werden
Repeater: Über die Repeater Funktion können wiederholt HTTP-Requests oder WebSocket messages gesendet werden. Hier lässt sich evtl ein verändertes Verhalten über die Quantität der Anfragen erkennen Decoder: Über die Decoder-Funktion können Daten in verschiedene andere Datenformate umgewandelt werden. Folgende Formate werden unterstützt: URL, HTML, Base64, ASCII hex. Hex, Octal, Binary, GZIP. Burp Encoder versucht hierbei das verwendete Format selbstständig zu erkennen.
Comparer: Der Burp Comparer vergleicht Datensätze innerhalb von Burp. Dies kann z.B. hilfreich beim Vergleich von site maps mit unterschiedlichen Benutzern sein. Oder die Auswertung von Intruder Logs mit unterschiedlichen Attack Modis
Sequencer (Pro-Version): Mit Burp Sequencer kann die Qualität der Zufälligkeit mit der z.B. session tokens oder andere Daten erzeugt werden überprüft werden. Hierbei wird eine bereits gesendete Antwort der Web-Applikation selektiert und Burp wird die ursprüngliche Anfrage für diese Antwort wiederholt senden. Anschließend werden z.B. alle Tokens aus den Antworten extrahiert und auf Abhängigkeiten untersucht.
Invisible Proxy (Pro-Version): Proxy für Webapplikationen die keine Proxyeinstellungen zulassen. Hierbei wird der Burp Proxy auf Port 80/443 konfiguriert Extender: Über Burp Extender können Drittanbieter-Erweiterungen in Burp Suite eingebunden und verwendet werden.