Introduction
Burp Suite est une plateforme puissante pour effectuer des tests de sécurité des applications web. L'un de ses outils les plus fondamentaux est le Burp Proxy, qui vous permet d'intercepter, d'inspecter et de modifier le trafic entre votre navigateur et un serveur web.
Dans ce laboratoire, vous apprendrez le flux de travail de base de l'utilisation de Burp Proxy. Vous activerez le mode d'interception, effectuerez une requête à partir d'un navigateur web, visualiserez la requête HTTP capturée dans Burp Suite, puis la transférerez au serveur de destination. Cette compétence est la base de presque toutes les tâches de test d'applications web effectuées avec Burp Suite. L'environnement de laboratoire dispose de Burp Suite et d'un navigateur préconfiguré prêt à être utilisé.
Activer le mode d'interception dans l'onglet Proxy > Intercept
Dans cette étape, vous allez lancer Burp Suite et activer la fonctionnalité d'interception, qui est la première étape pour capturer le trafic web.
Tout d'abord, lancez l'application Burp Suite. Vous pouvez trouver son icône sur le bureau.
- Double-cliquez sur l'icône Burp Suite Community Edition sur le bureau.
- Une boîte de dialogue intitulée "Project" peut apparaître. Sélectionnez Temporary project et cliquez sur Next.
- Une autre boîte de dialogue "Burp configuration" peut apparaître. Sélectionnez Use Burp defaults et cliquez sur Start Burp.
Une fois Burp Suite chargé, vous devez naviguer vers l'outil Proxy et activer l'interception.
- Cliquez sur l'onglet Proxy en haut de la fenêtre.
- Dans l'onglet Proxy, assurez-vous d'être sur le sous-onglet Intercept.
- Vous verrez un bouton indiquant Intercept is off. Cliquez sur ce bouton pour activer l'interception.
Le texte du bouton changera pour Intercept is on, et il apparaîtra enfoncé. Cela indique que Burp Proxy est maintenant prêt à capturer toutes les requêtes effectuées par le navigateur configuré.
Effectuer une requête dans votre navigateur
Maintenant que l'interception est activée dans Burp Suite, vous allez effectuer une requête à partir du navigateur web. Burp Proxy capturera cette requête avant qu'elle n'atteigne le serveur. Le navigateur dans cet environnement de laboratoire est déjà configuré pour envoyer son trafic via Burp Proxy.
- Ouvrez le navigateur web Firefox. Vous pouvez trouver son icône sur le bureau ou dans le panneau des applications.
- Dans la barre d'adresse en haut du navigateur, tapez l'URL suivante et appuyez sur Entrée :
http://127.0.0.1:8000
Après avoir appuyé sur Entrée, vous remarquerez que l'onglet du navigateur affiche une icône de chargement, mais que la page ne se charge pas. C'est le comportement attendu. La requête a été envoyée depuis le navigateur mais est maintenant "bloquée" dans Burp Proxy, attendant que vous l'inspectiez et la transmettiez.
Afficher la requête interceptée dans Burp Suite
Dans cette étape, vous allez revenir à Burp Suite pour visualiser la requête HTTP que vous venez d'effectuer depuis le navigateur.
Retournez à la fenêtre Burp Suite. L'onglet Proxy > Intercept, qui était précédemment vide, contient maintenant la requête HTTP complète que votre navigateur a envoyée.
Vous verrez le texte brut de la requête, qui ressemble à ceci :
GET / HTTP/1.1
Host: 127.0.0.1:8000
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Upgrade-Insecure-Requests: 1
Prenez un moment pour examiner les différentes parties de la requête :
- Ligne de requête :
GET / HTTP/1.1indique la méthode, le chemin et la version HTTP. - En-têtes (Headers) : Des lignes comme
HostetUser-Agentfournissent des informations supplémentaires au serveur sur la requête et le client qui l'effectue. - Corps (Body) : Pour une requête
GETcomme celle-ci, le corps est vide.
Cette vue est essentielle pour comprendre et manipuler le fonctionnement d'une application web.
Cliquer sur le bouton « Forward » pour envoyer la requête au serveur
Après avoir inspecté la requête, la prochaine action consiste à la laisser continuer vers sa destination prévue, qui est notre serveur web local.
Dans l'onglet Proxy > Intercept de Burp Suite, vous verrez plusieurs boutons en haut du panneau de requête : Forward, Drop, Action, etc.
- Cliquez sur le bouton Forward.
Après avoir cliqué sur Forward, la requête disparaîtra de la vue Intercept. Burp Suite a maintenant envoyé la requête au serveur à l'adresse 127.0.0.1:8000.
Maintenant, revenez à votre navigateur Firefox. La page devrait se charger, et vous verrez le texte "Welcome to the LabEx Test Page!". Cela confirme que la requête a été transmise avec succès au serveur, et que la réponse du serveur a été renvoyée au navigateur et rendue par celui-ci.
Désactiver le mode Intercept pour permettre au trafic de circuler librement
Enfin, vous apprendrez comment désactiver le mode d'interception. Il est crucial de désactiver l'interception lorsque vous n'inspectez pas activement le trafic ; sinon, toute votre navigation sera bloquée.
- Retournez à la fenêtre Burp Suite et assurez-vous d'être dans l'onglet Proxy > Intercept.
- Cliquez sur le bouton Intercept is on.
Le texte du bouton changera pour Intercept is off, et il n'apparaîtra plus comme étant enfoncé. Désormais, Burp Proxy permettra à tout le trafic de passer sans être arrêté pour inspection.
Pour confirmer cela, retournez au navigateur Firefox et actualisez la page (vous pouvez appuyer sur F5 ou sur le bouton de rechargement). La page se rechargera instantanément, sans aucun délai, car la requête n'est plus retenue par Burp Suite.
Résumé
Dans ce laboratoire, vous avez appris avec succès le flux de travail fondamental de l'utilisation de Burp Proxy pour intercepter et transmettre le trafic HTTP.
Vous avez pratiqué les compétences clés suivantes :
- Activer et désactiver le mode d'interception dans l'onglet
Proxy > Intercept. - Capturer une requête HTTP en direct d'un navigateur au moment où elle est effectuée.
- Visualiser le contenu brut d'une requête interceptée pour comprendre sa structure.
- Transmettre la requête au serveur pour permettre à la communication de s'achever.
Cette compétence de base est le fondement de techniques de test de sécurité web plus avancées, telles que la modification des requêtes et des réponses pour tester les vulnérabilités.
