🔕Burp Suite
Burp Suite est une suite d'outils de test de sécurité des applications web. D
éveloppée par PortSwigger Web Security, cette suite offre une gamme complète de fonctionnalités pour découvrir, évaluer et sécuriser les vulnérabilités des applications web.
Que ce soit pour tester les vulnérabilités communes telles que les injections SQL, les failles XSS, ou pour analyser la robustesse des mécanismes d'authentification. La suite comprend une variété de modules, chacun ayant son propre ensemble de fonctionnalités spécifiques, allant de l'interception des requêtes HTTP à l'exploration automatique de l'application.
Dans cette documentation, nous explorerons en détail les différents modules de Burp Suite, en mettant l'accent sur leur fonctionnement, leurs cas d'utilisation et des exemples pratiques pour illustrer leur utilisation. De l'analyse du trafic avec le module Proxy à l'automatisation des attaques avec le module Intruder, nous découvrirons comment Burp Suite peut être utilisé pour renforcer la sécurité des applications web de manière efficace et efficiente.
🛡️ Proxy (Intercepteur)
Le module Proxy est l'un des modules centraux de Burp Suite. Il agit comme un proxy web intermédiaire entre le navigateur de l'utilisateur et le serveur web.
⚙️ Fonctionnement : Lorsqu'il est activé, le Proxy intercepte les requêtes HTTP(S) envoyées par le navigateur et les affiche dans une interface conviviale. L'utilisateur peut alors inspecter et modifier ces requêtes avant qu'elles ne soient envoyées au serveur.
📝 Utilisation :
Intercepter et modifier les requêtes pour tester l'injection SQL, XSS, etc.
Analyser le trafic pour découvrir des vulnérabilités ou des informations sensibles.
🤔 Exemple :
Infiltration d'un formulaire : Lors d'un test d'intrusion, le Proxy peut être utilisé pour intercepter une requête POST envoyée lors de la soumission d'un formulaire. L'utilisateur peut alors modifier les paramètres du formulaire pour voir comment le serveur réagit aux données modifiées.
Inclusion de scripts malveillants : En interceptant une requête vers une page web, l'utilisateur peut ajouter du code JavaScript malveillant dans les données envoyées. Cela permet de tester la vulnérabilité XSS du site.
🔍 Scanner Automatique
Le Scanner Automatique de Burp Suite est un outil puissant pour détecter automatiquement les vulnérabilités courantes dans les applications web.
⚙️ Fonctionnement : Le Scanner Automatique analyse les pages web à la recherche de vulnérabilités telles que les injections SQL, les traversées de répertoire, les failles XSS, etc.
📝 Utilisation :
Analyser rapidement une application web pour détecter les vulnérabilités courantes.
Générer des rapports détaillés sur les vulnérabilités détectées avec des recommandations de correction.
🤔 Exemple :
Détection d'une injection SQL : Le Scanner Automatique peut détecter automatiquement les points d'injection SQL dans les paramètres des requêtes et générer un rapport indiquant les endroits vulnérables.
Identification d'une faille XSS : En analysant le code source des pages web, le Scanner Automatique peut repérer les endroits où des données utilisateur non filtrées sont affichées, indiquant ainsi une possible faille XSS.
⚔️ Intruder (Intrus)
Le module Intruder de Burp Suite est utilisé pour effectuer des attaques automatisées sur les applications web.
⚙️ Fonctionnement : Intruder permet d'envoyer une série de requêtes avec des charges utiles modifiées à chaque itération pour tester la résistance d'une application aux attaques par force brute, par dictionnaire, etc.
📝 Utilisation :
Tester la robustesse des paramètres d'entrée d'une application web.
Automatiser les attaques de type bruteforce ou dictionnaire.
🤔 Exemple :
Attaque par force brute : Intruder peut être utilisé pour tester un formulaire de connexion en envoyant différentes combinaisons de noms d'utilisateur et de mots de passe.
Attaque par dictionnaire : En utilisant une liste de mots de passe courants, Intruder peut tester la force d'un mot de passe en l'envoyant avec différentes charges utiles.
🔄 Repeater (Répétiteur)
Le module Repeater de Burp Suite permet de répéter manuellement des requêtes HTTP pour tester et comprendre le comportement de l'application web.
⚙️ Fonctionnement : Repeater permet à l'utilisateur de copier et de modifier une requête HTTP à la main, puis de l'envoyer au serveur pour observer la réponse.
📝 Utilisation :
Tester différentes combinaisons de paramètres pour voir comment l'application web réagit.
Vérifier les réponses du serveur en fonction des modifications apportées aux requêtes.
🤔 Exemple :
Test de sécurité d'un formulaire : En modifiant les paramètres d'un formulaire, l'utilisateur peut voir comment l'application web traite différentes entrées, révélant ainsi d'éventuelles vulnérabilités.
Validation de l'authentification : Repeater peut être utilisé pour vérifier différentes combinaisons de jetons de session ou de cookies, permettant de valider les mécanismes d'authentification de l'application.
🎯 Sequencer (Séquenceur)
Le module Sequencer de Burp Suite est utilisé pour analyser la qualité de l'entropie des jetons de session générés par l'application web. Plus l'entropie est élevée, plus le système est considéré comme imprévisible et sécurisé.
⚙️ Fonctionnement : Sequencer analyse une série de jetons de session pour mesurer leur degré d'imprévisibilité.
📝 Utilisation :
Évaluer la qualité des mécanismes de génération de jetons de session.
Détecter les faiblesses dans la génération aléatoire des jetons.
🤔 Exemple :
Analyse d'un jeton de session : Sequencer peut être utilisé pour analyser un jeton de session généré par une application web et calculer son entropie.
Comparaison de plusieurs jetons : En comparant les entropies de plusieurs jetons, Sequencer peut identifier les modèles ou les faiblesses dans la génération des jetons.
🧩 Decoder (Décodeur)
Le module Decoder de Burp Suite permet de décoder les données encodées (Base64, URL, etc.) pour les examiner.
⚙️ Fonctionnement : Decoder prend en charge divers types d'encodage et permet à l'utilisateur de convertir les données encodées en texte lisible.
📝 Utilisation :
Examiner les données encodées pour comprendre leur contenu réel.
Décoder les chaînes d'URL ou les fichiers encodés en Base64.
🤔 Exemple :
Décodage d'une URL : Decoder peut être utilisé pour convertir une chaîne d'URL encodée en un format lisible, révélant ainsi les paramètres et les valeurs.
Analyse de fichiers encodés en Base64 : En décodant un fichier encodé en Base64, l'utilisateur peut afficher son contenu réel, ce qui peut être utile lors de l'analyse de données sensibles.
🧠 Comparer (Comparateur)
Le module Comparer de Burp Suite permet de comparer deux requêtes HTTP pour identifier les différences.
⚙️ Fonctionnement : Comparer affiche les deux requêtes côte à côte, mettant en évidence les différences dans les en-têtes, les paramètres et les corps de requête.
📝 Utilisation :
Identifier les changements entre deux requêtes similaires.
Vérifier les modifications apportées lors de l'analyse des réponses du serveur.
🤔 Exemple :
Comparaison de deux requêtes POST : Comparer peut être utilisé pour analyser les différences entre deux requêtes POST, mettant en évidence les paramètres ou les valeurs modifiées.
Vérification des modifications d'en-tête : En comparant deux requêtes avec des en-têtes différents, l'utilisateur peut voir les changements apportés aux informations de l'en-tête.
🧐 Extender (Extension)
Le module Extender de Burp Suite permet d'ajouter des fonctionnalités personnalisées à Burp Suite en utilisant des extensions.
⚙️ Fonctionnement : Les extensions peuvent être développées en Java et intégrées à Burp Suite pour étendre ses fonctionnalités.
📝 Utilisation :
Étendre les capacités de Burp Suite avec des fonctionnalités spécifiques à un contexte.
Intégrer des outils ou des scripts personnalisés dans l'interface de Burp Suite.
🤔 Exemple :
Développement d'une extension personnalisée : Un utilisateur peut développer une extension Java pour ajouter une nouvelle fonctionnalité de scan ou d'analyse dans Burp Suite.
Utilisation d'une extension existante : En installant une extension à partir du BApp Store, l'utilisateur peut ajouter des fonctionnalités telles que des outils de chiffrement personnalisés ou des intégrations avec d'autres outils de sécurité.
🤝 Collaborator (Collaborateur)
Le module Collaborator de Burp Suite permet de détecter les interactions entre l'application testée et les services externes, aidant à identifier les canaux de communication non sécurisés.
⚙️ Fonctionnement : Collaborator génère des domaines et des adresses IP uniques pour chaque interaction, permettant de surveiller les requêtes sortantes de l'application testée.
📝 Utilisation :
Identifier les fuites d'informations ou les canaux de communication non prévus.
Détecter les requêtes sortantes vers des domaines suspects ou malveillants.
🤔 Exemple :
Détection de fuites d'informations : Collaborator peut être utilisé pour détecter si l'application envoie des informations sensibles à des services externes sans autorisation.
Identification des requêtes sortantes : En surveillant les requêtes sortantes, l'utilisateur peut détecter les connexions inattendues ou non autorisées.
🕷️ Spider (Spider)
Le module Spider de Burp Suite est utilisé pour explorer automatiquement l'application web, découvrant les pages et les fonctionnalités disponibles.
⚙️ Fonctionnement : Spider parcourt les liens sur une page web initiale pour découvrir les autres pages de l'application.
📝 Utilisation :
Cartographier la structure de l'application web.
Identifier les pages cachées ou les fonctionnalités non référencées.
🤔 Exemple :
Cartographie de l'application : Spider peut être utilisé pour créer une carte visuelle de toutes les pages accessibles d'une application web.
Découverte de pages cachées : En explorant les liens, l'utilisateur peut trouver des pages qui ne sont pas liées directement à partir de la page d'accueil, révélant ainsi des parties cachées de l'application.
📋 Organiseur
L'Organiseur de Burp Suite est conçu pour vous aider à stocker et annoter les copies des requêtes HTTP que vous souhaiterez peut-être revoir ultérieurement.
⚙️ Fonctionnement : L'Organiseur permet de trier et de cataloguer les requêtes enregistrées pendant les tests.
📝 Utilisation :
Enregistrer les requêtes intéressantes pour un examen ultérieur.
Ajouter des notes ou des tags aux requêtes pour faciliter leur gestion.
🤔 Exemple :
Enregistrement de requêtes de test : Lors d'un test, l'utilisateur peut enregistrer les requêtes qui nécessitent une analyse ou une correction ultérieure.
Gestion des requêtes par type : En ajoutant des tags comme "Injection SQL" ou "XSS", l'utilisateur peut trier les requêtes en fonction des vulnérabilités détectées.
🍪 Les Macros
Les macros sont des outils puissants pour mettre à jour dynamiquement les cookies de session lors de connexions répétées. Lorsqu'une tentative de connexion est effectuée à plusieurs reprises, le cookie de session peut devenir invalide. Pour résoudre ce problème, l'utilisation de macros avec des règles spécifiques est recommandée.
🛠️ Ajout d'une Macro pour la Mise à Jour du Cookie
Après Interception : Après avoir intercepté le trafic dans l'outil approprié (par exemple, Burp Suite), suivez ces étapes :
Intruder : Naviguez vers l'onglet "Intruder".
Paramètres : Cliquez sur "Paramètres".
Session : Sélectionnez l'onglet "Session".
Macro : Choisissez l'option "Macro".
Ajouter : Cliquez sur "Ajouter" pour créer une nouvelle macro.
Sélectionner la Requête : Choisissez la requête qui contient le cookie de session à mettre à jour.

📜 Définition des Règles pour la Macro
Après avoir ajouté la macro, définissez des règles pour sa mise à jour automatique :
Ajout de Règles :
Cliquez sur "Ajouter de Règles" pour spécifier les actions de la macro.
Nommer la Règle : Attribuez un nom significatif à la règle pour la référence future.
Action - Exécuter une Macro :
Sélectionnez "Exécuter une Macro" comme action à effectuer.
Cette action assure que la macro sera activée et exécutée automatiquement lors du clic sur la valeur du cookie.
🎬 Exemple d'Utilisation
Supposons que vous testiez un site web qui nécessite une authentification par cookie de session. Après vous être connecté une fois, vous remarquez que le cookie de session expire après un certain temps ou après une action spécifique. Voici comment utiliser une macro pour gérer ce scénario :
Création de la Macro : Enregistrez une macro qui inclut les étapes suivantes :
Soumettre le formulaire de connexion avec vos identifiants.
Capturer le cookie de session dans la réponse.
Configurer la macro pour répéter ces étapes à chaque nouvelle connexion.
Exécution de la Macro : Chaque fois que vous voulez vous reconnecter pour maintenir la session active, vous pouvez simplement exécuter la macro. Cela soumettra automatiquement le formulaire de connexion et mettra à jour le cookie de session, évitant ainsi toute déconnexion due à une expiration du cookie.
Les macros dans Burp Suite sont donc extrêmement utiles pour automatiser des actions répétitives lors des tests d'applications web, en particulier pour gérer les cookies de session et maintenir une session active de manière dynamique.
🛠️ Personnalisation avec les Extensions
Burp Suite permet aux utilisateurs de personnaliser et d'étendre ses fonctionnalités en utilisant des extensions Java. Voici quelques exemples d'extensions populaires :
Extensions du BApp Store :
Installez et gérez les extensions du BApp Store pour étendre les capacités de Burp Suite.
Intégration de Jython :
Utilisez Jython pour exploiter les modules Python dans la suite Burp.
Exploration des API :
Développez des applications Java, Python ou Ruby en utilisant les API de Burp Suite.
⌨️ Raccourcis clavier
Raccourcis Globaux
Ouvrir Proxy Interception
Ctrl
+ Shift
+ C
Ouvrir Repeater
Ctrl
+ Shift
+ R
Ouvrir Scanner
Ctrl
+ Shift
+ S
Ouvrir Target
Ctrl
+ Shift
+ T
Ouvrir Proxy
Ctrl
+ Shift
+ P
Proxy Interception
Basculer Interception On/Off
Ctrl
+ Shift
+ U
Mettre en Pause/Continuer l'Interception
Ctrl
+ Shift
+ I
Envoyer à Repeater
Ctrl
+ Shift
+ B
Envoyer à Comparer
Ctrl
+ Shift
+ V
Envoyer à Intruder
Ctrl
+ Shift
+ F
Outils de Recherche
Rechercher
Ctrl
+ F
Rechercher Suivant
F3
ou Enter
Rechercher Précédent
Shift
+ F3
Intruder
Ouvrir Intruder
Ctrl
+ I
Repeater
Ouvrir Repeater
Ctrl
+ R
Envoyer Requête
Ctrl
+ Enter
Comparer
Ouvrir Comparer
Ctrl
+ D
En résumé, Burp Suite offre un ensemble complet d'outils pour les tests de sécurité des applications web.
De l'interception de requêtes au test d'attaques automatisées, en passant par l'analyse de l'entropie des jetons de session, chaque module offre des fonctionnalités uniques pour assurer la sécurité des applications web. Utilisé correctement avec des extensions personnalisées, Burp Suite peut répondre aux besoins avancés des professionnels de la sécurité.
Last updated