Kali Web-Testing mit Burp Suite

Kali LinuxKali LinuxBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab lernen Sie, wie Sie Webanwendungssicherheitstests mit Burp Suite innerhalb eines Kali Linux Containers in der LabEx VM-Umgebung durchführen. Der Schwerpunkt liegt auf der Einrichtung von Burp Proxy, um Web-Traffic abzufangen, HTTP/HTTPS-Anfragen zu analysieren, auf Cross-Site Scripting (XSS)-Schwachstellen zu testen und detaillierte Berichte zu erstellen. Diese praktischen Schritte vermitteln Ihnen grundlegende Fähigkeiten zur Identifizierung und Behebung von Sicherheitsproblemen in Webanwendungen.

Sie arbeiten direkt in einer Kali Linux Container-Shell, die automatisch für Sie eingerichtet wird, wenn Sie das Terminal öffnen. Durch strukturierte Schritte konfigurieren Sie Tools, erfassen Traffic, testen auf Schwachstellen und dokumentieren Ihre Ergebnisse. Dieses Lab ist für Anfänger konzipiert und führt Sie durch jeden Prozess in einer kontrollierten Umgebung, um praktische Cybersicherheitsfähigkeiten aufzubauen.

Installieren und Starten von Burp Suite

In diesem ersten Schritt installieren und starten Sie Burp Suite, ein leistungsstarkes Tool für Webanwendungssicherheitstests, innerhalb des Kali Linux Containers in der LabEx VM-Umgebung. Burp Suite ermöglicht es Ihnen, Web-Traffic abzufangen und zu analysieren, was für die Identifizierung von Schwachstellen in Webanwendungen unerlässlich ist.

Wenn Sie das Terminal in der LabEx VM öffnen, werden Sie automatisch mit der Shell des Kali Linux Containers verbunden. Es ist nicht erforderlich, den Container manuell zu starten oder die Shell zu betreten; die Umgebung ist bereits für Sie konfiguriert. Beginnen wir damit, sicherzustellen, dass die notwendigen Tools installiert und einsatzbereit sind.

Beginnen Sie mit der Aktualisierung der Paketliste, um sicherzustellen, dass Sie die neuesten Informationen über verfügbare Software haben. Geben Sie im Terminal den folgenden Befehl ein und drücken Sie die Eingabetaste:

apt update

Dieser Befehl aktualisiert die Paketrepository-Daten. Die Ausführung kann einige Sekunden dauern, und Sie sehen eine Ausgabe, die den Fortschritt des Aktualisierungsprozesses anzeigt.

Als Nächstes installieren Sie die Burp Suite Community Edition, die in den Kali Linux Repositories verfügbar ist. Geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste:

apt install -y burpsuite

Dieser Befehl installiert Burp Suite ohne Aufforderung zur Bestätigung aufgrund des Flags -y. Die Installation kann ein oder zwei Minuten dauern, und Sie sehen eine Ausgabe, die den Download- und Installationsfortschritt anzeigt.

Erwartete Ausgabe (teilweise, die tatsächliche Ausgabe kann variieren):

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
...
Setting up burpsuite (2023.10.3.7-0kali1) ...

Sobald die Installation abgeschlossen ist, starten Sie Burp Suite, indem Sie den folgenden Befehl eingeben und die Eingabetaste drücken:

burpsuite

Dadurch wird die grafische Benutzeroberfläche (GUI) von Burp Suite geöffnet. Das Laden kann einige Sekunden dauern. Wenn Sie dazu aufgefordert werden, wählen Sie die Standardoption "Temporary Project" und klicken Sie auf "Next" oder "Start Burp", um fortzufahren. Sie sehen das Hauptfenster von Burp Suite.

Burp Suite läuft jetzt, und in den nächsten Schritten konfigurieren Sie es, um Web-Traffic abzufangen. Lassen Sie das Burp Suite-Fenster geöffnet, während Sie fortfahren. Dieser Schritt stellt sicher, dass Sie das primäre Tool für Web-Sicherheitstestaufgaben bereit haben.

Konfigurieren der Burp Proxy-Einstellungen

Nachdem Burp Suite installiert und ausgeführt wird, besteht der nächste Schritt darin, die Burp Proxy-Einstellungen zu konfigurieren, um Web-Traffic abzufangen. Der Proxy fungiert als Vermittler zwischen Ihrem Browser und dem Internet und ermöglicht es Ihnen, HTTP/HTTPS-Anfragen und -Antworten zu erfassen und zu analysieren. Dies ist eine kritische Einrichtung für Webanwendungssicherheitstests.

Für Anfänger ist das Verständnis der Rolle eines Proxys wichtig. Ein Proxy befindet sich zwischen Ihrem Browser und der Zielwebsite und fängt alle ausgetauschten Daten ab. Dies ermöglicht es Ihnen, die von Ihrem Browser gesendeten Rohanfragen und die Antworten vom Server zu untersuchen, um potenzielle Sicherheitsprobleme zu identifizieren.

Da Sie sich bereits in der Kali Linux Container-Shell befinden (die automatisch beim Öffnen des Terminals aufgerufen wird), fahren wir mit der Konfiguration der Proxy-Einstellungen direkt in der Burp Suite GUI fort. Stellen Sie sicher, dass Burp Suite noch aus dem vorherigen Schritt ausgeführt wird. Wenn dies nicht der Fall ist, starten Sie es erneut, indem Sie burpsuite in das Terminal eingeben und die Eingabetaste drücken.

Navigieren Sie im Burp Suite-Fenster zur Registerkarte "Proxy". Diese Registerkarte enthält Einstellungen zum Konfigurieren, wie Burp Suite Traffic abfängt. Stellen Sie im Abschnitt "Proxy Settings" sicher, dass der Proxy so eingestellt ist, dass er auf 127.0.0.1:8080 lauscht. Dies ist die Standardkonfiguration, was bedeutet, dass Burp Proxy Traffic auf Ihrem lokalen Rechner an Port 8080 erfasst.

Wenn die Einstellungen nicht auf 127.0.0.1:8080 eingestellt sind, passen Sie sie manuell an, indem Sie diese Werte eingeben und auf "Apply" klicken, falls die Option verfügbar ist. Ändern Sie in diesem Stadium keine anderen Einstellungen.

Um zu bestätigen, dass der Proxy aktiv ist, führen Sie den folgenden Befehl im Terminal aus und drücken Sie die Eingabetaste:

netstat -tuln | grep 8080

Erwartete Ausgabe (die tatsächliche Ausgabe kann variieren):

tcp        0      0 127.0.0.1:8080          0.0.0.0:*               LISTEN

Diese Ausgabe zeigt, dass Burp Proxy auf Port 8080 lauscht. Wenn Sie diese Ausgabe nicht sehen, stellen Sie sicher, dass Burp Suite ausgeführt wird und die Proxy-Einstellungen korrekt konfiguriert sind.

Sie haben jetzt erfolgreich Burp Proxy eingerichtet, um Web-Traffic abzufangen. Behalten Sie Burp Suite mit diesen Einstellungen geöffnet, während wir zum nächsten Schritt übergehen, in dem Sie einen Browser konfigurieren, um Traffic über diesen Proxy zu leiten. Diese Konfiguration ist unerlässlich, um Web-Interaktionen in nachfolgenden Aufgaben zu erfassen und zu analysieren.

Einrichten von Firefox zur Verwendung von Burp Proxy

Nachdem Burp Proxy konfiguriert wurde, besteht der nächste Schritt darin, einen Webbrowser so einzurichten, dass sein Traffic über den Proxy geleitet wird. Dies ermöglicht es Burp Suite, alle HTTP/HTTPS-Anfragen und -Antworten, die vom Browser gesendet werden, zu erfassen und anzuzeigen. Für dieses Lab verwenden Sie Firefox, das innerhalb des Kali Linux Containers installiert und konfiguriert wird.

Da Sie sich bereits in der Kali Linux Container-Shell befinden (die automatisch beim Öffnen des Terminals aufgerufen wird), beginnen wir mit der Installation von Firefox, falls es noch nicht verfügbar ist. Geben Sie den folgenden Befehl im Terminal ein und drücken Sie die Eingabetaste, um Firefox zu installieren:

apt install -y firefox-esr

Dieser Befehl installiert die Extended Support Release (ESR)-Version von Firefox, die für die Verwendung in Kali Linux geeignet ist. Die Installation kann einige Momente dauern, und Sie sehen eine Ausgabe, die den Fortschritt anzeigt.

Erwartete Ausgabe (teilweise, die tatsächliche Ausgabe kann variieren):

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
...
Setting up firefox-esr (102.10.0esr-1~deb11u1) ...

Sobald Firefox installiert ist, starten Sie es, indem Sie den folgenden Befehl im Terminal eingeben und die Eingabetaste drücken:

firefox &

Das Symbol & führt Firefox im Hintergrund aus, sodass Sie das Terminal weiterhin verwenden können. Ein Firefox-Fenster öffnet sich in der grafischen Oberfläche der LabEx VM.

Konfigurieren Sie nun Firefox so, dass es Burp Proxy verwendet. Befolgen Sie diese detaillierten Anweisungen im Firefox-Browserfenster:

  1. Klicken Sie auf das Menüsymbol (drei horizontale Linien) in der oberen rechten Ecke von Firefox.
  2. Wählen Sie Settings aus dem Dropdown-Menü.
  3. Scrollen Sie im Tab General nach unten zum Abschnitt Network Settings und klicken Sie auf Settings....
  4. Wählen Sie im Fenster Connection Settings die Option Manual proxy configuration.
  5. Stellen Sie das Feld HTTP Proxy auf 127.0.0.1 und den Port auf 8080 ein.
  6. Aktivieren Sie das Kontrollkästchen mit der Bezeichnung Also use this proxy for HTTPS.
  7. Lassen Sie die anderen Felder unverändert und klicken Sie auf OK, um die Einstellungen zu speichern.

Diese Einrichtung stellt sicher, dass der gesamte Web-Traffic von Firefox über Burp Proxy an 127.0.0.1:8080 geleitet wird. Um zu überprüfen, ob alles funktioniert, navigieren Sie in Firefox zu einer einfachen Website wie http://example.com, indem Sie die URL in die Adressleiste eingeben und die Eingabetaste drücken.

Wechseln Sie zurück zum Burp Suite-Fenster, gehen Sie zur Registerkarte Proxy und wählen Sie die Unterregisterkarte HTTP history. Dort sollten Anfragen an example.com aufgelistet werden. Wenn keine Anfragen angezeigt werden, aktualisieren Sie die Seite in Firefox und vergewissern Sie sich, dass die Proxy-Einstellungen korrekt sind.

Erwartete Ausgabe in Burp Suite (visuell, nicht Terminal):

Sie sehen Einträge in der Registerkarte HTTP history, die Anfragen an example.com anzeigen, mit Details wie dem Host, der Methode (z. B. GET) und dem URL-Pfad.

Dieser Schritt schließt die Browser-Einrichtung ab, um Traffic über Burp Proxy zu leiten. Behalten Sie sowohl Firefox als auch Burp Suite geöffnet, während Sie zum nächsten Schritt übergehen, in dem Sie diese Konfiguration verwenden, um Web-Traffic für Sicherheitstests zu erfassen und zu analysieren.

Erfassen und Analysieren von Web-Traffic

Nachdem Sie Firefox so konfiguriert haben, dass es Burp Proxy verwendet, sind Sie nun bereit, Web-Traffic zu erfassen und zu analysieren. Dieser Schritt ist für Webanwendungssicherheitstests von entscheidender Bedeutung, da er es Ihnen ermöglicht, die Rohdaten zu untersuchen, die zwischen Ihrem Browser und einer Website ausgetauscht werden, und so potenzielle Schwachstellen oder Fehlkonfigurationen zu identifizieren.

Für Anfänger bedeutet das Erfassen von Web-Traffic, die Anfragen aufzuzeichnen, die Ihr Browser an eine Website sendet (z. B. das Laden einer Seite), und die Antworten, die die Website zurücksendet (z. B. den Seiteninhalt). Burp Suite fungiert als Vermittler und zeigt Ihnen diese Daten detailliert an, sodass Sie Header, Parameter und Inhalte auf Sicherheitsprobleme untersuchen können.

Da Sie in der Kali Linux Container-Shell arbeiten (die automatisch beim Öffnen des Terminals aufgerufen wird), stellen Sie sicher, dass sowohl Burp Suite als auch Firefox noch aus den vorherigen Schritten ausgeführt werden. Wenn Burp Suite nicht ausgeführt wird, starten Sie es mit burpsuite neu. Wenn Firefox nicht geöffnet ist, starten Sie es mit firefox &.

Navigieren Sie in Firefox zu einer Testwebsite wie http://example.com, indem Sie die URL in die Adressleiste eingeben und die Eingabetaste drücken. Diese Aktion sendet Anfragen über Burp Proxy, der sie zur Analyse erfasst.

Wechseln Sie zum Burp Suite-Fenster und gehen Sie zur Registerkarte Proxy, und wählen Sie dann die Unterregisterkarte HTTP history. Sie sehen eine Liste der Anfragen, die von Firefox an die Website gestellt wurden. Jeder Eintrag enthält Details wie den Host, die Methode (z. B. GET) und den URL-Pfad.

Wählen Sie eine beliebige Anfrage im Zusammenhang mit http://example.com aus, indem Sie darauf klicken. Dadurch werden zwei Bereiche angezeigt: Request und Response. Der Bereich Request zeigt die Daten an, die von Ihrem Browser gesendet wurden, einschließlich Header und Parameter. Der Bereich Response zeigt die Daten an, die von der Website zurückgegeben wurden, wie z. B. HTML-Inhalt oder Statuscodes.

Erwartete Ausgabe in Burp Suite (visuell, nicht Terminal):

Auf der Registerkarte HTTP history sehen Sie Einträge wie:

  • Host: example.com
  • Method: GET
  • Path: /

Wenn Sie auf einen Eintrag klicken, werden detaillierte Anforderungs-Header (wie User-Agent) und Antwortinhalt (wie HTML-Code für die Seite) angezeigt.

Nehmen Sie sich einen Moment Zeit, um ein paar Anfragen zu untersuchen, um die Struktur des Web-Traffics zu verstehen. Diese Fähigkeit, Traffic zu erfassen und zu analysieren, ist grundlegend für die Identifizierung von Sicherheitsproblemen, auf der Sie im nächsten Schritt aufbauen werden. Behalten Sie Burp Suite und Firefox mit den aktuellen Einstellungen geöffnet, während Sie fortfahren, um nach bestimmten Schwachstellen zu suchen.

Testen auf XSS-Schwachstellen

Mit der eingerichteten Web-Traffic-Erfassung können Sie nun Burp Suite verwenden, um auf Cross-Site Scripting (XSS)-Schwachstellen zu testen. XSS ist ein häufiges Web-Sicherheitsproblem, bei dem Angreifer bösartige Skripte in Webseiten injizieren, die dann im Browser eines Benutzers ausgeführt werden. Dieser Schritt konzentriert sich auf die Identifizierung potenzieller XSS-Fehler durch das Senden von Testeingaben und die Analyse von Antworten.

Für Anfänger tritt XSS auf, wenn eine Webanwendung die Benutzereingabe nicht bereinigt, wodurch schädlicher Code (wie JavaScript) injiziert und ausgeführt werden kann. Es gibt verschiedene Arten von XSS, aber hier testen Sie auf reflektiertes XSS, bei dem die bösartige Eingabe sofort in der Antwort des Servers widergespiegelt wird, ohne gespeichert zu werden.

Da Sie sich in der Kali Linux Container-Shell befinden (die automatisch beim Öffnen des Terminals aufgerufen wird), stellen Sie sicher, dass Burp Suite und Firefox noch aus den vorherigen Schritten ausgeführt werden. Wenn nicht, starten Sie sie mit burpsuite bzw. firefox & neu.

Navigieren Sie in Firefox zu einer Testwebsite, die Benutzereingaben akzeptiert, z. B. einem Suchfeld oder einem Formular. Für dieses Lab können Sie, falls keine spezifische Testseite in der LabEx VM bereitgestellt wird, eine öffentliche Testseite wie http://testphp.vulnweb.com verwenden, falls diese zugänglich ist. Geben Sie die URL in die Firefox-Adressleiste ein und drücken Sie die Eingabetaste.

Sobald die Seite geladen ist, suchen Sie ein Eingabefeld, z. B. eine Suchleiste. Geben Sie eine einfache Testzeichenfolge wie test<xss> in das Feld ein und senden Sie das Formular ab. Diese Eingabe ist harmlos, hilft aber zu überprüfen, ob die Anwendung die Eingabe ohne Bereinigung zurückspiegelt.

Wechseln Sie zu Burp Suite, gehen Sie zur Registerkarte Proxy und wählen Sie die Unterregisterkarte HTTP history. Suchen Sie die Anfrage, die Ihrer Formularübermittlung entspricht. Klicken Sie darauf, um die Details anzuzeigen. Suchen Sie im Bereich Request nach dem Parameter, in dem Ihre Eingabe test<xss> gesendet wurde (er befindet sich möglicherweise unter einem Feld wie search oder query).

Suchen Sie dann im Bereich Response nach Ihrer Eingabezeichenfolge test<xss>. Wenn Sie die exakte Zeichenfolge in der Antwort sehen, ohne dass sie escaped wurde (z. B. nicht in test&lt;xss&gt; konvertiert wurde), ist die Anwendung möglicherweise anfällig für reflektiertes XSS.

Erwartete Ausgabe in Burp Suite (visuell, nicht Terminal):

Wenn Sie im Bereich Response test<xss> so wie es ist im HTML-Inhalt sehen, deutet dies auf eine potenzielle Schwachstelle hin. Wenn es als test&lt;xss&gt; erscheint, wurde die Eingabe bereinigt, wodurch das XSS-Risiko verringert wird.

Wenn Sie eine potenzielle Schwachstelle identifizieren, klicken Sie mit der rechten Maustaste auf die Anfrage auf der Registerkarte HTTP history und wählen Sie Add to site map, um sie für die Berichterstattung im nächsten Schritt zu organisieren. Dieser Prozess des Testens auf XSS durch das Senden von Testdaten und die Analyse von Antworten baut Ihre Fähigkeiten in der Schwachstellenbewertung auf. Behalten Sie Burp Suite und Firefox geöffnet, während Sie zum letzten Schritt übergehen.

Generieren eines Burp Suite-Berichts

In diesem letzten Schritt erstellen Sie einen Bericht in Burp Suite, um Ihre Ergebnisse aus der Web-Traffic-Analyse und den XSS-Schwachstellentests zu dokumentieren. Das Erstellen eines Berichts ist ein wesentlicher Bestandteil von Sicherheitstests, da es die von Ihnen identifizierten Probleme zusammenfasst und eine strukturierte Möglichkeit bietet, Ergebnisse zu überprüfen oder weiterzugeben.

Für Anfänger fasst ein Burp Suite-Bericht Schwachstellen oder Beobachtungen aus Ihrer Testsession zusammen. Er enthält Details wie die Art des Problems, betroffene URLs und zugehörige Anforderungs-/Antwortdaten. Diese Dokumentation ist für die Verfolgung von Sicherheitsfehlern und die Planung von Abhilfemaßnahmen von entscheidender Bedeutung.

Da Sie sich in der Kali Linux Container-Shell befinden (die automatisch beim Öffnen des Terminals aufgerufen wird), stellen Sie sicher, dass Burp Suite noch ausgeführt wird. Wenn nicht, starten Sie es mit burpsuite neu.

Navigieren Sie in der Burp Suite-Oberfläche zur Registerkarte Target oder Issues (je nach Version). In diesem Abschnitt werden alle Schwachstellen aufgelistet, die Burp Suite automatisch erkannt hat, oder Probleme, die Sie manuell hinzugefügt haben. Wenn Sie im vorherigen Schritt ein potenzielles XSS-Problem markiert haben, indem Sie es der Site Map hinzugefügt haben, wird es hier möglicherweise angezeigt.

Wenn keine Probleme aufgeführt sind, können Sie zur Übung manuell eines hinzufügen. Gehen Sie zur Registerkarte Proxy, wählen Sie eine Anfrage aus dem HTTP history aus, in der Sie auf XSS getestet haben (z. B. mit der Eingabe test<xss>), klicken Sie mit der rechten Maustaste darauf und wählen Sie Report issue oder Send to Issues. Wählen Sie einen Typ wie Cross-site scripting (reflected) aus, falls verfügbar, fügen Sie eine kurze Beschreibung wie Potential XSS in input field hinzu und klicken Sie auf OK.

Um den Bericht zu generieren, klicken Sie auf der Registerkarte Issues auf die Schaltfläche Report oder suchen Sie im Menü nach Generate Report. Führen Sie diese Schritte im Berichtsassistenten aus:

  1. Wählen Sie das Format HTML für ein lesbares Format.
  2. Wählen Sie aus, ob Sie All issues oder bestimmte Probleme einbeziehen möchten, falls Sie welche hinzugefügt haben.
  3. Wenn Sie nach einem Speicherort gefragt werden, legen Sie den Pfad auf /root/xss_report.html innerhalb des Kali Linux Containers fest.
  4. Klicken Sie auf Next oder Finish, um den Bericht zu speichern.

Bestätigen Sie nach dem Generieren des Berichts, dass er gespeichert wurde, indem Sie den folgenden Befehl im Terminal eingeben und die Eingabetaste drücken:

ls -l /root/xss_report.html

Erwartete Ausgabe (die tatsächliche Ausgabe kann variieren):

-rw-r--r-- 1 root root [size] [date] /root/xss_report.html

Diese Ausgabe bestätigt, dass die Datei xss_report.html im Verzeichnis /root vorhanden ist. Wenn die Datei nicht vorhanden ist, wiederholen Sie den Berichtserstellungsprozess und stellen Sie sicher, dass der richtige Pfad angegeben wurde.

Sie haben nun erfolgreich einen Burp Suite-Bericht erstellt, der Ihre Testergebnisse dokumentiert. Damit ist das Lab abgeschlossen und bietet Ihnen praktische Erfahrung im Web-Sicherheitstesting mit wichtigen Tools in einer Kali Linux-Umgebung.

Zusammenfassung

In diesem Lab haben Sie die Grundlagen des Webanwendungssicherheitstests mit Burp Suite innerhalb eines Kali Linux-Containers in der LabEx VM-Umgebung gelernt. Sie begannen mit der Installation und dem Start von Burp Suite und konfigurierten dann den Burp Proxy, um Web-Traffic abzufangen. Durch die Einrichtung von Firefox zur Weiterleitung des Datenverkehrs über den Proxy haben Sie HTTP/HTTPS-Anforderungen und -Antworten erfasst und analysiert. Sie testeten auch auf XSS-Schwachstellen, indem Sie Testeingaben sendeten und Serverantworten untersuchten. Schließlich erstellten Sie einen detaillierten Bericht, um Ihre Ergebnisse zu dokumentieren. Diese Schritte haben Sie mit praktischen Fähigkeiten ausgestattet, um Web-Sicherheitsprobleme mithilfe von Industriestandard-Tools zu identifizieren und zu beheben.