
SAML2 Burp Extension
SAML Raider est une extension Burp Suite pour tester les infrastructures SAML. Elle contient deux fonctionnalités principales : la manipulation des messages SAML et la gestion des certificats X.509.
Ce logiciel a été créé par Roland Bischofberger et Emanuel Duss durant un travail de bachelor à la Hochschule für Technik Rapperswil (HSR). Notre partenaire de projet et conseiller était Compass Security Schweiz AG. Nous remercions Compass pour la bonne collaboration et le soutien durant notre travail de bachelor.
L'extension est divisée en deux parties : un éditeur de messages SAML et un outil de gestion de certificats.
Fonctionnalités de l'éditeur de messages de SAML Raider :

Fonctionnalités de la gestion des certificats de SAML Raider :

Téléchargement : saml-raider-1.2.1.jar
Démarrez Burp Suite et cliquez sur l'onglet Extender puis sur Add. Choisissez le
fichier JAR de SAML Raider pour installer l'extension.
La façon simple d'installer SAML Raider est d'utiliser le BApp Store. Ouvrez Burp et
cliquez dans l'onglet Extender sur l'onglet BApp Store. Sélectionnez SAML Raider puis
cliquez sur le bouton Install pour installer notre extension.
N'oubliez pas de noter notre extension avec autant d'étoiles que vous le souhaitez 😄.
Pour tester les environnements SAML plus confortablement, vous pouvez ajouter une règle d'interception dans les
paramètres du proxy. Ajoutez une nouvelle règle qui vérifie si un nom de paramètre
SAMLResponse est présent dans la requête. Nous espérons que l'utilisation de notre extension est en grande partie
explicite 😄. Si vous avez des questions, n'hésitez pas à nous les poser !
L'API Burp Extender se trouve ici : https://portswigger.net/burp/extender/api/index.html.
Clonez le projet dans votre espace de travail :
git clone https://github.com/SAMLRaider/SAMLRaider.git
Importez le projet existant dans votre espace de travail Eclipse : File → Import... →
Existing Projects into Workspace. Sélectionnez le dossier cloné et cliquez sur Finish.
Téléchargez la dernière version de
Burp Suite sous forme de fichier JAR et placez-la dans le dossier lib.
Ajoutez le fichier JAR de Burp Suite aux bibliothèques : clic droit sur le projet →
Properties → Java Build Path → Libraries puis ajoutez le fichier JAR.
Installez maven afin de pouvoir compiler SAMLRaider à l'aide de l'outil d'automatisation
de compilation Maven :
$ mvn install
Chargez l'extension Burp dans Burp : Extender → Add → sélectionnez le fichier JAR
(avec les dépendances) dans le répertoire ./target du projet, comme
./target/saml-raider-$VERSION-SNAPSHOT-jar-with-dependencies.jar.
Vous pouvez ensuite tester l'extension et la recompiler après une modification.
Astuce : pour recharger l'extension dans Burp sans redémarrer Burp, maintenez la touche Ctrl
enfoncée et cliquez sur la case à cocher à côté de l'extension dans l'onglet Extender.
Pour démarrer l'extension directement depuis Eclipse, importez le dépôt dans
Eclipse. Vous pouvez directement importer un projet Maven existant. Notez que le
plugin Eclipse Maven m2e est requis. Il est inclus dans la dernière « Eclipse
IDE for Java Developers ».
Placez le fichier JAR de Burp Suite dans le dossier lib et ajoutez le JAR de Burp comme
bibliothèque dans le projet Eclipse (Properties → Build Path → Libraries).
Ouvrez le JAR de Burp sous Referenced Libraries dans l'Explorateur de paquets puis
faites un clic droit dans le paquet burp sur StartBurp.class et sélectionnez Run As... →
Java Application pour démarrer Burp et charger l'extension automatiquement. (Ou dans
Eclipse : Run → Debug As → Java Application → StartBurp - burp → OK.)
Pour activer le mode débogage, définissez le drapeau DEBUG dans la classe Flags du
paquet helpers à true. Cela écrira toute la sortie dans le fichier journal
SAMLRaiderDebug.log et chargera des certificats d'exemple pour les tests.
Pour envoyer une réponse SAML à Burp, vous pouvez utiliser le script samltest dans le
répertoire scripts/samltest. Il envoie la réponse SAML de saml_response
à Burp (localhost:8080) et affiche la réponse modifiée par notre
plugin. Vous devez installer gawk (GNU awk) comme awk et libxml2-utils pour
la commande xmllint.
Les retours sont les bienvenus ! Veuillez nous contacter ou créer un nouveau ticket sur GitHub.
Notre travail de bachelor est disponible en ligne et peut être trouvé ici : eprints_BA_SAML2_Burp_Plugin_SAML_Raider_eduss_rbischof.pdf.
Voir le fichier LICENSE (licence MIT) pour les droits et limitations de la licence.