Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
generator-burp-extension — Alles, was Sie über die Erstellung von Burp-Erweiterungen wissen müssen | Kitploit
Tools/GitHubGitHub/rsrdesarrollo/generator-burp-extension
Scripting & AutomatisierungWebsicherheitPenetrationstestsDienstprogramme & Frameworks
GitHubrsrdesarrollo/generator-burp-extension

generator-burp-extension

Alles, was Sie über die Erstellung von Burp-Erweiterungen wissen müssen

Repository anzeigen

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
15827vor 3 JahrenVon Kitploit geprüft

Burp Extension Generator NPM version

Installation

Zuerst installieren Sie Yeoman und generator-burp-extension mit npm (wir gehen davon aus, dass Sie node.js bereits installiert haben).

root@kitploit:~
npm install -g yo
npm install -g generator-burp-extension

Dann generieren Sie Ihr neues Projekt:

root@kitploit:~
yo burp-extension

Funktionen der Burp-Erweiterung

Wenn Sie Ihr Plugin-Projekt generieren, fragt der Generator, welche Funktionen in Ihrem Plugin enthalten sein sollen. Wenn Sie mit der Entwicklung von Burp-Erweiterungen vertraut sind, werden die Namen der Funktionen aussagekräftig genug sein. Falls Sie jedoch neu bei Burp-Erweiterungen sind, finden Sie hier eine kurze Beschreibung dessen, was mit jeder Funktion gemacht werden kann.

Erweiterungstab-GUI

Ein benutzerdefinierter Tab, der zur Benutzeroberfläche von Burp hinzugefügt wird. Normalerweise wird er verwendet, um Funktionalität hinzuzufügen (wie die Erweiterung logger++) oder einfach um dem Benutzer die Konfiguration der Erweiterung zu ermöglichen.

Nachrichtenbearbeitungstab-GUI

Ein benutzerdefinierter Nachrichtenbearbeitungstab, der zur Benutzeroberfläche des Nachrichtenbearbeiters von Burp hinzugefügt wird (Repeater, Intruder…). Normalerweise wird er verwendet, um eine benutzerdefinierte Bearbeitungs-/Ansichtsfunktion für Anfrage-/Antwort-Payloads bereitzustellen. Ein Beispiel ist die Erweiterung JSON Beutifier.

Kontextmenü-GUI

Ein benutzerdefiniertes Kontextmenü wird fast überall zur Burp-Oberfläche hinzugefügt, indem man die rechte Maustaste drückt. Burp erlaubt die Anzeige von Kontextmenüs in jeder dieser Situationen:

  • Ergebnisse von Intruder-Angriffen.
  • Editor für Intruder-Payload-Positionen.
  • Anfrage-Editor.
  • Antwort-Editor.
  • Nicht bearbeitbarer Anfrage-Viewer.
  • Nicht bearbeitbarer Antwort-Viewer.
  • Proxy-Verlauf.
  • Scanner-Ergebnisse.
  • Suchergebnis-Fenster.
  • Ziel-Site-Map-Tabelle.
  • Ziel-Site-Map-Baum.

Ein einfaches Beispiel für diese Funktionalität ist die Erweiterung copy-as-python-requests, mit der eine Anfrage als Python-Code kopiert werden kann (nur ein Beispiel).

HTTP-Listener / Proxy-Listener

Der Listener wird über Anfragen und Antworten benachrichtigt, die vom Proxy-Tool (Proxy-Listener) oder von einem beliebigen Burp-Tool (HTTP-Listener) verarbeitet werden. Erweiterungen können eine benutzerdefinierte Analyse oder Modifikation dieser Nachrichten durchführen.

Mit anderen Worten: Ein Proxy-Listener fängt die Anfragen vom Browser an Burp und die Antworten von Burp an den Browser ab. Ein HTTP-Listener fängt ausgehende Anfragen von Burp an den Webserver und eingehende Antworten vom Webserver ab.

Ein reales Beispiel-Plugin, das diese Erweiterungsfunktion nutzt, ist AutoRepeater.

Intruder-Payload-Generator

Erweitern Sie Intruder-Payloads um benutzerdefinierte Generatorfähigkeiten. Eine mögliche Anwendung dieser Funktionalität könnte die Generierung zufälliger gültiger IBAN-Nummern sein. Ein reales Beispiel ist die Erweiterung Intruder file payload generator (ich verwende sie nicht, es ist nur ein Beispiel).

Intruder-Payload-Prozessor

Erweitern Sie Intruder-Payloads um benutzerdefinierte Prozessorfähigkeiten. Ein mögliches Beispiel wäre die Durchführung einer AES-Verschlüsselung basierend auf einem statischen Schlüssel.

Scanner-Prüfung

Beim Scannen wird Burp die Prüfung auffordern, aktives oder passives Scannen auf der Basis-Anfrage durchzuführen und alle identifizierten Scanner-Probleme zu melden.

Scanner-Einfügungspunkt-Anbieter

Wenn eine Anfrage aktiv gescannt wird, ruft der Scanner dies auf, und der Anbieter sollte eine Liste benutzerdefinierter Einfügungspunkte bereitstellen, die im Scan verwendet werden.

Sitzungsbehandlungsaktion

Jede registrierte Aktion wird in der Benutzeroberfläche der Sitzungsbehandlungsregel zur Verfügung stehen, damit der Benutzer sie als Regelaktion auswählen kann. Benutzer können wählen, eine Aktion direkt eigenständig auszuführen oder nach Ausführung eines Makros.

Erweiterungsstatus-Listener

Der Listener wird benachrichtigt, wenn die Erweiterung aus Burp entladen wird. Hinweis: Erweiterungen, die Hintergrundthreads starten oder Systemressourcen (wie Dateien oder Datenbankverbindungen) öffnen, sollten einen Listener registrieren und Threads beenden / Ressourcen schließen, wenn die Erweiterung entladen wird.

Scanner-Listener

Der Listener wird über neue Probleme benachrichtigt, die vom Scanner-Tool gemeldet werden. Erweiterungen können eine benutzerdefinierte Analyse oder Protokollierung von Scanner-Problemen durchführen, indem sie einen Scanner-Listener registrieren.

Bereichsänderungs-Listener

Der Listener wird benachrichtigt, wenn eine Änderung am suite-weiten Zielbereich von Burp auftritt.

Wahrscheinlich nutzlos, da Burp keinen Zugriff auf die globale Bereichsdefinition erlaubt.

Kompromisse

Dieser Abschnitt erläutert einige Entscheidungen bei der Entwicklung der Vorlage.

Warum Java und nicht Python/Ruby

Zuallererst, ich bin kein Java-Fan.

Wie Sie vielleicht wissen, erlaubt BurpSuite die Entwicklung von Erweiterungen in drei Hauptsprachen: Java, Python und Ruby. Eigentlich stimmt das nicht ganz. Burp erlaubt die Entwicklung in Jython und JRuby. Das eigentliche Problem hier ist, dass Sie, wenn Sie Jython oder JRuby in einer Burp-Erweiterung verwenden, immer noch in Java denken müssen (da dies die Hauptsprache von Burp ist). Am Ende entwickeln Sie also in Python und Java, aber mit vielen Problemen, Ihr Projekt in eine echte IDE zu integrieren, mit Autovervollständigung und diesen modernen Dingen.

Ein weiterer guter Grund, Java anstelle von Jython zu verwenden, ist, dass es auf Python 2.7 basiert, und ich verwende JRuby nicht, weil ich Ruby nicht mag, das ist alles.

Alles ist ein Singleton (leitender Artikel)

Wie Sie vielleicht bemerken, folgen alle Implementierungen eines Burp-Interfaces einem Singleton-Pattern. Der Hauptgrund dafür ist völlig subjektiv.

Die Sache ist die, dass Burp ein großartiges Werkzeug ist, aber seine Interna sind etwas undurchsichtig und wahrscheinlich ein wenig chaotisch. So erlaubt Burp Ihnen beispielsweise, mehrere IHTTPListener zu registrieren, aber Sie verlieren wichtige Entscheidungen wie die Reihenfolge des Aufrufs dieser Listener. Diese Art von Situationen könnte meiner bescheidenen Meinung nach das Verständnis einer Burp-Erweiterung und die Wartbarkeit des Codes erschweren.

Sie können jede Singleton-Klasse als einen notwendigen Verbindungspunkt mit Burp betrachten, der eindeutig sein muss. Von diesem Verbindungspunkt aus können Sie Ihren Code steuern und jede Art von objektorientiertem Design umsetzen.

Lizenz

MIT © Raul Sampedro

Tool herunterladen