Introduction
Bienvenue dans ce laboratoire sur l'utilisation de Burp Repeater. Burp Repeater est un outil simple mais puissant de Burp Suite pour manipuler manuellement et réémettre des requêtes HTTP individuelles, et analyser les réponses de l'application. C'est un outil fondamental pour tout testeur de sécurité d'applications web, vous permettant de sonder les vulnérabilités en observant comment un serveur répond à différentes entrées.
Dans ce laboratoire, vous apprendrez le flux de travail principal de Burp Repeater. Vous commencerez par capturer une requête standard d'une application web, l'enverrez à Repeater, modifierez ses paramètres, puis la renverrez au serveur. Enfin, vous analyserez la réponse du serveur à votre requête modifiée et apprendrez à naviguer dans l'historique des requêtes.
Sélectionner une Requête dans un Onglet Repeater
Dans cette étape, vous allez capturer une requête d'une application web d'exemple et l'envoyer à Burp Repeater pour manipulation. L'environnement de laboratoire a déjà démarré une application web et Burp Suite pour vous. Le navigateur est configuré pour proxyfier le trafic via Burp Suite.
Tout d'abord, générons du trafic.
- Ouvrez le navigateur web depuis le bureau.
- Naviguez vers l'application cible en entrant
http://127.0.0.1:5000dans la barre d'adresse. - Vous verrez un formulaire de connexion simple. Laissez les valeurs par défaut (
useretpass) et cliquez sur le boutonSubmit.
Maintenant, trouvons cette requête dans Burp Suite.
- Basculez vers la fenêtre Burp Suite.
- Allez dans l'onglet
Proxy, puis cliquez sur l'onglet secondaireHTTP history. Vous verrez une liste des requêtes que votre navigateur a effectuées. - Recherchez une requête
POSTvers le point de terminaison/login. Elle devrait se trouver près du haut de la liste. Cliquez dessus pour afficher ses détails dans les panneaux ci-dessous. - Faites un clic droit n'importe où dans le panneau de la requête et sélectionnez
Send to Repeaterdans le menu contextuel. Vous pouvez également utiliser le raccourci clavierCtrl+R.
Un nouvel onglet apparaîtra et clignotera en orange dans l'outil Repeater. Cliquez sur l'onglet Repeater pour afficher la requête que vous venez d'envoyer.
Modifier une Valeur d'En-tête ou de Paramètre
Dans cette étape, vous allez modifier la requête que vous avez envoyée à l'onglet Repeater. L'interface utilisateur de Repeater est divisée en deux sections principales : le panneau de requête à gauche et le panneau de réponse à droite. Actuellement, le panneau de réponse est vide car nous n'avons pas encore envoyé la requête depuis Repeater.
Concentrons-nous sur le panneau de requête à gauche. Vous pouvez modifier n'importe quelle partie de la requête ici avant de l'envoyer. Cela inclut la ligne de requête, les en-têtes et le corps de la requête.
- Regardez en bas du panneau de requête. Vous verrez le corps de la requête
POST, qui contient les données du formulaire :username=user&password=pass. - Testons si nous pouvons nous connecter en tant qu'un autre utilisateur. Changez la valeur du paramètre
usernamedeuseràadmin. La ligne devrait maintenant ressembler à ceci :username=admin&password=pass. - Vous pouvez également modifier les en-têtes. Par exemple, trouvez l'en-tête
User-Agentet changez sa valeur pour quelque chose de personnalisé, commeMy-Custom-Browser/1.0.
Votre requête modifiée dans le panneau de gauche est maintenant prête à être envoyée.
Cliquer sur le Bouton 'Send' pour Émettre la Requête Modifiée
Dans cette étape, vous allez envoyer la requête HTTP modifiée au serveur. Après avoir modifié la requête dans le panneau de gauche, la prochaine action consiste à la transmettre.
En haut du panneau de requête, vous trouverez un bouton Send. Ce bouton est utilisé pour émettre la requête actuelle affichée dans le panneau.
- Assurez-vous que votre requête a été modifiée comme décrit dans l'étape précédente (par exemple,
usernameest défini suradmin). - Cliquez sur le bouton
Send.
Burp Repeater va maintenant envoyer cette requête modifiée au serveur cible à 127.0.0.1:5000. Après un moment, la réponse du serveur apparaîtra dans le panneau de réponse à droite.
Analyser la Réponse du Serveur
Dans cette étape, vous allez analyser la réponse du serveur à votre requête modifiée. Après avoir cliqué sur Send, le panneau de réponse à droite a été rempli avec les données renvoyées par le serveur.
- Examinez le panneau de réponse. Vous verrez la réponse HTTP complète, y compris la ligne de statut (par exemple,
HTTP/1.0 200 OK), les en-têtes de réponse et le corps de la réponse. - Regardez le corps de la réponse. Étant donné que notre application de test reflète le nom d'utilisateur dans sa sortie, vous devriez voir le message :
Login attempt for user: 'admin' failed. Please try again.. Cela confirme que le serveur a traité notre entrée modifiée. - Au-dessus du corps de la réponse, il y a plusieurs options d'affichage :
Pretty,Raw,HexetRender.Pretty: Affiche une version formatée de la réponse, ce qui est utile pour le HTML et le JSON.Raw: Affiche les octets exacts reçus du serveur.Render: Tente de rendre la réponse comme le ferait un navigateur web. Cliquez surRenderpour voir une représentation visuelle de la page de connexion avec le message d'échec.
L'analyse des réponses est une compétence essentielle. En envoyant différents payloads et en observant les réponses, vous pouvez découvrir comment une application se comporte et identifier des vulnérabilités potentielles.
Utiliser les Flèches d'Historique pour Naviguer entre les Requêtes Envoyées
Dans cette étape, vous apprendrez à utiliser la fonction de navigation dans l'historique d'un onglet Repeater. Repeater conserve un historique de toutes les requêtes que vous avez envoyées dans l'onglet actuel, ce qui est très utile pour comparer les réponses à des requêtes légèrement différentes.
À côté du bouton Send, vous verrez un numéro (actuellement 1) et des flèches avant/arrière (< et >). Celles-ci vous permettent de parcourir l'historique des requêtes.
- Créons une autre entrée dans l'historique. Dans le panneau de requête, changez à nouveau le
usernameenuser. - Cliquez à nouveau sur
Send. Vous verrez la réponse se mettre à jour pour refléter la tentative de connexion pouruser. Le numéro à côté du boutonSendaffiche maintenant2. - Maintenant, cliquez sur la flèche arrière (
<). Les panneaux de requête et de réponse se mettront à jour pour afficher votre première requête (avecusername=admin) et sa réponse correspondante. Le numéro reviendra à1. - Cliquez sur la flèche avant (
>) pour revenir à la deuxième requête (avecusername=user).
Cette fonctionnalité vous permet de tester rapidement des variations d'une requête et de comparer les résultats sans avoir à retaper manuellement vos modifications ou à gérer plusieurs onglets Repeater.
Résumé
Dans ce laboratoire, vous avez appris les opérations fondamentales de Burp Repeater, un composant essentiel de Burp Suite.
Vous avez réussi à capturer une requête HTTP d'une application web et à l'envoyer à Repeater. Vous vous êtes ensuite exercé à modifier les paramètres et les en-têtes de la requête, à réémettre la requête modifiée au serveur et à analyser la réponse résultante. Enfin, vous avez appris à utiliser la navigation dans l'historique pour passer efficacement d'une requête à l'autre que vous avez envoyées.
Maîtriser Burp Repeater est une étape clé pour devenir compétent en tests manuels de sécurité des applications web, car il offre le contrôle nécessaire pour sonder un large éventail de vulnérabilités.
