Burpsuit: Intruder

Burpsuit: Eindringling

Celia Catalán


Guten Morgen allerseits!

Heute werden wir über eines der am häufigsten verwendeten und leistungsstärksten Tools innerhalb der Burp Suite selbst sprechen, um Web-Audits durchzuführen.

Burp Suite ist ein Tool zum Testen der Sicherheit von Webanwendungen. Fängt Anfragen ab, prüft und ändert sie. Sie können damit visualisieren, wie eine Anfrage erstellt wird, und außerdem häufige Schwachstellen wie SQL-Injections und Cross-Site-Scripting erkennen. Bietet Funktionen, mit denen Sie allgemeine Aufgaben automatisieren und Arbeitsabläufe anpassen können. Es ist ein vielseitiges und leistungsstarkes Werkzeug.

Der Intruder ist ein internes Modul der Burp Suite, mit dem wir Anfragen automatisieren können, was bei der Durchführung von Fuzzing- oder Brute-Force-Aufgaben sehr nützlich ist.

Es ermöglicht uns, eine Anfrage (normalerweise im Proxy erfasst, bevor sie an Intruder weitergeleitet wird) als Vorlage zu verwenden, um viele weitere Anfragen mit leicht veränderten Werten automatisch zu senden. Wenn wir beispielsweise eine Anfrage erfassen, die einen Anmeldeversuch enthält, könnten wir Intruder so konfigurieren, dass die Felder „Benutzername“ und „Passwort“ durch Werte aus einer Liste von Wörtern ausgetauscht werden, wodurch wir effektiv das Anmeldeformular erzwingen können. Ebenso könnten wir eine Liste von Wörtern an Fuzz-Unterverzeichnisse, Endpunkte oder virtuelle Hosts übergeben. Diese Funktionalität ist der von Tools wie Wfuzz oder Ffuf angebotenen sehr ähnlich.

Die häufigsten Verwendungszwecke für den Eindringling sind:

  • Fuzzing-Verzeichnisse oder Parameter: Suchen Identifizieren Sie Schwachstellen basierend auf Eingaben.
  • Subdomains auflisten: Entdecken oder vergrößern Sie eine zusätzliche Angriffsfläche.
  • Brute-Force-Angriffe auf Logins: Automatisieren Sie Benutzernamen- und Passwortkombinationen.

Nachdem wir nun seine Hauptfunktionen kennen, werden wir anhand eines Beispiels sehen, wie es funktioniert.

Der erste Schritt besteht darin, eine Anfrage über den von Burp Suite angebotenen Proxy abzufangen. Dazu öffnen wir den von Burp Suite angebotenen Browser und aktivieren das Abfangen.



Für den Test nutzen wir ein Portswigger-Labor, in dem wir Angriffe mit dem Intruder üben können. In diesem Fall gehen wir zur Anmeldeseite, wo wir einen Brute-Force-Angriff auf die Anmeldung durchführen können.



Wenn der Proxy aktiviert ist, klicken wir auf „Anmelden“, um die Anfrage für die von uns verwendete Testseite abzufangen.



Sobald die Anfrage erfasst wurde, senden wir sie an den Eindringling, wo wir den Angriff ausführen.




Beim Eindringling können wir wählen, welche Art von Angriff wir wollen, und dabei vier verschiedene unterscheiden:

1. Scharfschütze:

Der Eindringling nimmt jede Nutzlast, die wir ihm übergeben (aus einer Liste von Nutzlasten), und platziert sie der Reihe nach an jeder definierten Position. Das heißt, jede Nutzlast in der Liste wird der Reihe nach an jeden Parameter übergeben.

Beispiel: Wenn wir eine Anfrage haben, die zwei Parameter Benutzername und Passwort enthält und wir eine Liste mit Wörtern haben, die lauten: rülpsen, Suite und Eindringling. Die Anfragen wären so:



2. Rammbock:

Nehmen Sie eine Reihe von Nutzdaten (z. B. eine Liste von Wörtern). Wobei an jeder Position (Parameter) die gleiche Nutzlast platziert wird.

Beispiel: Wenn wir eine Anfrage haben, die zwei Parameter Benutzername und Passwort enthält und wir eine Liste mit Wörtern haben, die lauten: rülpsen, Suite und Eindringling. Die Anfragen wären so:


3. Heugabel:

Pitchfork verwendet eine Reihe von Nutzlasten pro Position und durchläuft diese alle gleichzeitig. Idealerweise sollten unsere Nutzlastsätze bei der Arbeit in Pitchfork die gleiche Länge haben, da Intruder den Test beendet, sobald eine der Listen vollständig ist. Wenn wir beispielsweise zwei Listen haben, eine mit 100 Zeilen und eine mit 90 Zeilen, stellt Intruder nur 90 Anfragen und die letzten zehn Elemente der ersten Liste werden nicht getestet.

Beispiel: Wenn wir eine Anfrage haben, die zwei Parameter Benutzername und Passwort enthält und wir zwei Listen mit Wörtern haben, was wäre die erste Namensliste: 
  • Administrator
  • Wurzel
  • Administrator

Und die zweite Liste der Passwörter:
  • P@ssw0rd
  • toor
  • 123456
Die Anfragen wären so:


4. Streubombe:

Streubombe ermöglicht es uns, mehrere Nutzlastsätze auszuwählen: einen pro Position. Während Pitchfork jedoch jeden Nutzlastsatz gleichzeitig durchläuft, durchläuft Streubombe jeden Nutzlastsatz einzeln, um sicherzustellen, dass alle möglichen Nutzlastkombinationen getestet werden.

Beispiel: Wenn wir eine Anfrage haben, die zwei Parameter Benutzername und Passwort enthält und wir zwei Listen mit Wörtern haben, was wäre die erste Namensliste: 
  • Administrator 
  • Wurzel
  • Administrator
Und die zweite Liste der Passwörter:
  • P@ssw0rd
  • toor
  • 123456
Die Anfragen wären so:


Sobald wir die verfügbaren Angriffsarten kennen, fahren wir mit dem praktischen Beispiel fort. In unserem speziellen Fall wählen wir den Typ „Scharfschütze“, da wir den Benutzernamen und das Passwort separat erhalten. Als nächstes fügen wir die Position der Nutzlast im Feld „Benutzername“ hinzu


Sobald die Position ausgewählt ist, fügen wir die Nutzlast hinzu, die wir für den Angriff verwenden werden. In diesem Fall haben wir eine Liste gebräuchlicher Namen als Wörterbuch verwendet. 



Wenn alles bereit ist, können wir den Angriff starten, der mit allen bereitgestellten Benutzernamen Anfragen an die Website sendet.


Wir können sehen, wie sich bei den Payload-Benachrichtigungen die Größe der Antwort ändert. Dies liegt daran, dass die Fehlermeldung anders ist und uns mitteilt, dass das Passwort falsch ist. Von hier aus erfahren wir, dass es einen Benutzer namens „alerts“ gibt.
Jetzt verwenden wir die gleiche Methode, suchen jedoch im Passwortfeld nach dem Passwort des identifizierten Benutzers


Sobald sich der Benutzer geändert hat, mit dem wir uns anmelden möchten, wiederholen wir den gleichen Angriff mit dem Passwort und ändern die Liste in eine Liste mit typischen Werten für schwache Passwörter.


In diesem Fall können wir die Änderung in der Antwort erkennen, da es sich um eine Weiterleitung handelt, die uns mitteilt, dass sie möglicherweise validiert wurde.

Wir testen, ob wir auf der Testseite richtig liegen:

Und mit den erhaltenen Zugangsdaten können wir das Labor betreten und verlassen.
So wie ich diesen Test mit einem Portswinger-Labor durchgeführt habe, gibt es viele Seiten und Maschinen, die zum Üben mit dem Intruder verwendet werden können. Einige von ihnen sind:


Bisher hat diese Einführung in den Eindringling, wie Sie sich vorstellen können, eine Vielzahl von Verwendungsmöglichkeiten und kann je nach den Anforderungen des Audits auf sehr unterschiedliche Weise angewendet werden. 
Wir hoffen, dass es Ihnen gefallen hat und wir sehen uns in der nächsten Ausgabe von FluProject.


Zurück zum Blog

Hinterlasse einen Kommentar

Bitte beachten Sie, dass Kommentare vor der Veröffentlichung genehmigt werden müssen.