
SAML2 Burp-Erweiterung
SAML Raider ist eine Burp-Suite-Erweiterung zum Testen von SAML-Infrastrukturen. Sie enthält zwei Kernfunktionen: das Manipulieren von SAML-Nachrichten und die Verwaltung von X.509-Zertifikaten.
Diese Software wurde von Roland Bischofberger und Emanuel Duss während einer Bachelorarbeit an der Hochschule für Technik Rapperswil (HSR) erstellt. Unser Projektpartner und Berater war die Compass Security Schweiz AG. Wir danken Compass für die angenehme Zusammenarbeit und die Unterstützung während unserer Bachelorarbeit.
Die Erweiterung ist in zwei Teile gegliedert: einen SAML-Nachrichteneditor und ein Zertifikatsverwaltungstool.
Funktionen des SAML-Raider-Nachrichteneditors:

Funktionen der SAML-Raider-Zertifikatsverwaltung:

Download: saml-raider-1.2.1.jar
Starten Sie die Burp Suite und klicken Sie im Tab Extender auf Add. Wählen
Sie die SAML-Raider-JAR-Datei aus, um die Erweiterung zu installieren.
Der einfache Weg, SAML Raider zu installieren, ist die Verwendung des BApp
Stores. Öffnen Sie Burp und klicken Sie im Tab Extender auf den Tab
BApp Store. Wählen Sie SAML Raider und klicken Sie auf die Schaltfläche
Install, um unsere Erweiterung zu installieren.
Vergessen Sie nicht, unsere Erweiterung mit so vielen Sternen zu bewerten, wie Sie möchten 😄.
Um SAML-Umgebungen komfortabler zu testen, können Sie in den
Proxy-Einstellungen eine Abfangregel hinzufügen. Fügen Sie eine neue Regel
hinzu, die prüft, ob ein Parametername SAMLResponse in der Anfrage enthalten
ist. Wir hoffen, dass die Verwendung unserer Erweiterung weitgehend
selbsterklärend ist 😄. Wenn Sie Fragen haben, zögern Sie nicht, uns zu
fragen!
Die Burp-Extender-API finden Sie hier: https://portswigger.net/burp/extender/api/index.html.
Klonen Sie das Projekt in Ihren Workspace:
git clone https://github.com/SAMLRaider/SAMLRaider.git
Importieren Sie das vorhandene Projekt in Ihren Eclipse-Workspace: File →
Import... → Existing Projects into Workspace. Wählen Sie den geklonten
Ordner aus und klicken Sie auf Finish.
Laden Sie die neueste Version der
Burp Suite als JAR-Datei herunter und legen Sie sie in den Ordner lib.
Fügen Sie die Burp-Suite-JAR-Datei zu den Bibliotheken hinzu: Rechtsklick auf
das Projekt → Properties → Java Build Path → Libraries und fügen Sie die
JAR-Datei hinzu.
Installieren Sie maven, damit Sie SAMLRaider mit dem
Build-Automatisierungstool Maven erstellen können:
$ mvn install
Laden Sie die Burp-Erweiterung in Burp: Extender → Add → wählen Sie die
JAR-Datei (mit Abhängigkeiten) im Verzeichnis ./target des Projekts, z. B.
./target/saml-raider-$VERSION-SNAPSHOT-jar-with-dependencies.jar.
Danach können Sie die Erweiterung testen und nach einer Änderung neu erstellen.
Tipp: Um die Erweiterung in Burp neu zu laden, ohne Burp neu zu starten,
halten Sie die Ctrl-Taste gedrückt und klicken Sie auf das Kontrollkästchen
neben der Erweiterung im Tab Extender.
Um die Erweiterung direkt aus Eclipse zu starten, importieren Sie das Repository
in Eclipse. Sie können direkt ein vorhandenes Maven-Projekt importieren. Beachten
Sie, dass das Eclipse-Maven-Plugin m2e erforderlich ist. Dieses ist in der
neuesten "Eclipse IDE for Java Developers" enthalten.
Legen Sie die Burp-Suite-JAR-Datei in den Ordner lib und fügen Sie die
Burp-JAR als Bibliothek im Eclipse-Projekt hinzu (Properties → Build Path →
Libraries).
Öffnen Sie die Burp-JAR unter Referenced Libraries im Package Explorer,
klicken Sie im Paket burp mit der rechten Maustaste auf StartBurp.class und
wählen Sie Run As... → Java Application, um Burp zu starten und die
Erweiterung automatisch zu laden. (Oder in Eclipse: Run → Debug As →
Java Application → StartBurp - burp → OK.)
Um den Debug-Modus zu aktivieren, setzen Sie das DEBUG-Flag in der Klasse
Flags aus dem Paket helpers auf true. Dadurch werden alle Ausgaben in die
Logdatei SAMLRaiderDebug.log geschrieben und Beispielzertifikate zum Testen
geladen.
Um eine SAML-Antwort an Burp zu senden, können Sie das Skript samltest im
Verzeichnis scripts/samltest verwenden. Es sendet die SAML-Antwort aus
saml_response an Burp (localhost:8080) und gibt die modifizierte Antwort
unseres Plugins aus. Sie müssen gawk (GNU awk) als awk und libxml2-utils
für den Befehl xmllint installieren.
Feedback ist willkommen! Bitte kontaktieren Sie uns oder erstellen Sie ein neues Issue auf GitHub.
Unsere Bachelorarbeit ist online verfügbar und kann hier gefunden werden: eprints_BA_SAML2_Burp_Plugin_SAML_Raider_eduss_rbischof.pdf.
Siehe die Datei LICENSE (MIT-Lizenz) für Lizenzrechte und -einschränkungen.