Einleitung
Burp Suite ist ein leistungsstarkes Werkzeug für Sicherheitstests von Webanwendungen. Eine seiner Kernkomponenten ist der Proxy, der den gesamten HTTP/S-Verkehr zwischen Ihrem Browser und der Zielanwendung abfängt und protokolliert. Der HTTP-Verlauf (HTTP history) kann sich schnell mit Hunderten oder Tausenden von Anfragen füllen, was es schwierig macht, bestimmte interessante Elemente zu finden.
In diesem Lab lernen Sie, wie Sie die leistungsstarken Filterfunktionen im Proxy-HTTP-Verlauf nutzen können. Die Beherrschung dieser Filter ist unerlässlich, um den Datenverkehr effizient zu analysieren, Schwachstellen zu identifizieren und Ihre Testbemühungen auf die relevantesten Teile einer Anwendung zu konzentrieren.
Gehen Sie zum Tab Proxy > HTTP History
In diesem Schritt starten Sie Burp Suite und navigieren zum Tab HTTP History, wo der gesamte weitergeleitete Datenverkehr protokolliert wird.
Zuerst müssen Sie Burp Suite starten. Sie finden es normalerweise im Anwendungsmenü Ihrer Desktop-Umgebung oder können es vom Terminal aus starten.
Sobald Burp Suite läuft, sehen Sie ein Hauptfenster mit mehreren Tabs oben (Dashboard, Target, Proxy, Intruder usw.). Der Tab Proxy ist der Ort, an dem Sie den Proxy zur Abfangung steuern und den Verlauf der Anfragen einsehen können.
Klicken Sie auf den Tab Proxy. Innerhalb des Proxy-Tabs sehen Sie mehrere Unter-Tabs. Klicken Sie auf den Unter-Tab HTTP history.
Sie sollten nun eine Tabelle sehen, die die HTTP-Anfragen auflistet, die durch den Burp-Proxy geleitet wurden. Wir haben bereits einige Beispiel-Daten für Sie generiert.
Klicken Sie auf die 'Filter'-Leiste, um die Filteroptionen anzuzeigen
In diesem Schritt werden die Filteroptionen angezeigt, mit denen Sie steuern können, welche Anfragen in der Verlaufstabelle angezeigt werden.
Standardmäßig zeigt der HTTP-Verlauf alle erfassten Elemente an. Oberhalb der Anfragetabelle sehen Sie eine hellgraue Leiste mit dem Text "Filter: Showing all items". Diese Leiste verbirgt die detaillierten Filtersteuerungen.
Um die Filteroptionen anzuzeigen, klicken Sie einfach irgendwo auf diese Filterleiste.
Nachdem Sie darauf geklickt haben, wird die Leiste nach unten erweitert und zeigt eine umfassende Auswahl an Optionen zum Filtern des HTTP-Verlaufs an. Dies ist das Bedienfeld, das Sie in den folgenden Schritten verwenden werden, um die Anfragen einzugrenzen.
Aktivieren Sie 'Nur In-Scope-Elemente anzeigen'
In diesem Schritt lernen Sie, wie Sie einen der wichtigsten Filter verwenden: den Scope-Filter. Dieser ermöglicht es Ihnen, sich nur auf den Datenverkehr zu konzentrieren, der mit Ihrer Zielanwendung zusammenhängt.
Zuerst müssen Sie definieren, was Ihr Ziel-Scope ist.
- Gehen Sie zum Tab Target.
- Klicken Sie auf den Unter-Tab Scope.
- Klicken Sie im Abschnitt "Target Scope" auf die Schaltfläche Add.
- Ein Dialogfeld wird angezeigt. Geben Sie
http://portswigger-labs.netals Ziel ein und klicken Sie auf OK. Burp Suite fragt Sie möglicherweise, ob Sie möchten, dass Out-of-Scope-Elemente nicht mehr an den Verlauf gesendet werden. Klicken Sie für dieses Lab auf No, da wir möchten, dass der Filter funktioniert.
Navigieren Sie nun zurück zum Tab Proxy > HTTP history. Suchen Sie in den Filteroptionen, die Sie im vorherigen Schritt geöffnet haben, den Abschnitt "Filter by request type".
Aktivieren Sie das Kontrollkästchen Show only in-scope items.
Sofort wird die Liste der Anfragen in der Verlaufstabelle aktualisiert. Sie sehen nun nur noch Anfragen, die an portswigger-labs.net gesendet wurden. Die Anfrage an example.com wird ausgeblendet, was die Leistungsfähigkeit der Scope-basierten Filterung demonstriert.
Filtern nach MIME-Typ (z. B. HTML)
In diesem Schritt verfeinern Sie den sichtbaren Verlauf weiter, indem Sie nach dem MIME-Typ der Antwort filtern. Dies ist nützlich, um bestimmte Inhaltstypen wie Webseiten, Skripte oder Bilder zu finden.
Wenn die Filteroptionen noch sichtbar sind, suchen Sie den Abschnitt "Filter by MIME type". Dieser Abschnitt ermöglicht es Ihnen, Anfragen basierend auf dem Content-Type-Header in der Antwort anzuzeigen oder auszublenden.
- Stellen Sie sicher, dass der Radiobutton auf Show only gesetzt ist.
- Aktivieren Sie das Kontrollkästchen neben HTML.
Sobald Sie das Kontrollkästchen für HTML aktivieren, wird die HTTP-Verlaufstabelle erneut aktualisiert. Nun werden nur noch In-Scope-Anfragen angezeigt, die eine Antwort mit einem HTML-MIME-Typ zurückgegeben haben. Die Anfrage für die CSS-Datei (main.css) wird ausgeblendet, sodass nur die Hauptseitenanfrage übrig bleibt. Diese Technik ist sehr effektiv, um für Benutzer sichtbare Seiten von anderen Ressourcen wie Stylesheets, Skripten und Bildern zu isolieren.
Filtern nach Suchbegriff im Response Body
In diesem Schritt verwenden Sie den Suchbegriff-Filter, um Anfragen basierend auf spezifischem Inhalt in ihren Antworten zu finden. Dies ist eine äußerst leistungsfähige Funktion, um spezifische Funktionalitäten, Fehlermeldungen oder potenzielle Schwachstellen zu lokalisieren.
Suchen Sie in den Filteroptionen den Abschnitt "Filter by search term" am unteren Rand.
- Geben Sie im Textfeld das Wort
PortSwiggerein. - Stellen Sie sicher, dass das Kontrollkästchen neben Response body aktiviert ist. Dies weist Burp an, im Body der HTTP-Antwort zu suchen.
- Lassen Sie das Dropdown-Menü auf "Literal search" eingestellt. Dies sucht nach dem exakten Text, den Sie eingegeben haben.
Der HTTP-Verlauf wird nun gefiltert, um nur Elemente anzuzeigen, die alle vorherigen Kriterien (in-scope, HTML) erfüllen UND die exakte Zeichenkette "PortSwigger" in ihrem Response Body enthalten. Dies ermöglicht eine hochspezifische und gezielte Analyse des erfassten Datenverkehrs. Sie können auch reguläre Ausdrücke für komplexere Suchmuster verwenden, indem Sie das Dropdown-Menü von "Literal search" auf "Regex" ändern.
Zusammenfassung
In diesem Lab haben Sie die grundlegenden Techniken zum Filtern des Proxy HTTP-Verlaufs in Burp Suite gelernt. Sie haben damit begonnen, zum Verlauf-Tab zu navigieren und die Filteroptionen anzuzeigen. Anschließend haben Sie geübt, mehrere Arten von Filtern in Kombination anzuwenden:
- Scope: Fokussierung auf ein bestimmtes Ziel, um Rauschen zu reduzieren.
- MIME-Typ: Isolierung spezifischer Inhaltstypen wie HTML.
- Suchbegriff: Finden von Anfragen basierend auf spezifischem Inhalt in ihren Antworten.
Die Beherrschung dieser Filterfähigkeiten ist für jeden Web-Sicherheitsexperten von entscheidender Bedeutung, da sie es Ihnen ermöglicht, bei der Analyse großer und komplexer Webanwendungen effizienter und effektiver zu arbeiten.
