Burp Suite : LE proxy web

To the non-french speaker, note that you can translate the articles using the Google Trad widget situated at the bottom of all pages.


Je vous avais déjà parlé de burp suite dans l’article sur le protocole HTTP mais j’ai décidé de faire un article à part entière car je ne vous ai pas tout dit dessus et franchement, cet outil nous simplifie grandement la tâche quand on part à la recherche de failles sur le web.

Donc Burp Suite est une suite d’outils développée en Java par la société PortSwigger Ltd. Bien évidemment l’outil est disponible par défaut sur Kali Linux. Pour le lancer, ouvrez un terminal et entrez cette commande :

sudo burpsuite

Je vous conseille vraiment de passer par le terminal car le widget présent sur la barre des favoris semblent ne pas avoir les droits nécessaires pour que l’outil fonctionne correctement.

Cette page devrait apparaître :

preburp.png

Cliquez sur « Next » puis sur « Start Burp ». Vous atterrirez sur la page principale de Burp :

accueil.png

Sur la barre du dessus vous avez les différents outils disponibles. Au cours de cet article nous verrons comment utiliser le burp proxy, le burp repeater, le burp spider et pour finir le burp decoder.

I/ Burp Proxy

C’est l’outil le plus utilisé de la suite et pour cause, il nous permet d’intercepter toutes les requêtes envoyées depuis notre navigateur, de les modifier et de réceptionner la réponse du serveur. Burp Proxy se met donc en position de Man In The Middle. Étant donné que c’est un proxy il faut le configurer dans votre navigateur web. Moi je bosse exclusivement sur Firefox donc je vais vous expliquer comment configurer ce navigateur.

Allez dans les « Paramètres » puis dans « Préférences » > « Avancés » et enfin « Réseau ».

settings

Cliquez sur « Paramètres » et complétez le panel de configuration de la façon suivante :

config

En faisant ça on dit juste à Firefox que nous allons utiliser un proxy qui tourne sur le localhost et qui écoute sur le port 8080.

Retournez sur Burp Suite, allez dans l’onglet Proxy et assurez vous que le proxy est configuré pour intercepter les requêtes :

interceptison

Voilà ! Notre Burp Proxy est configuré. Maintenant si vous lancez une requête sur Firefox vous allez recevoir une notification qui vous dit que la requête à été intercéé…

error

Oh wait ! On ne pourra pas se rendre sur des sites en HTTPS à cause des règles HSTS ! Pour régler ce problème on va devoir télécharger le certificat de Burp et l’installer dans Firefox. Pour cela rendez vous ici en ayant le proxy activé. Puis cliquez sur CA Certificate et téléchargez le certificat.

Maintenant rendez vous dans l’onglet « Avancées » puis « Certificats » dans les paramètres Firefox. Cliquez sur « Voir les certificats ». Un onglet va s’ouvrir, allez dans « Autorités » :

autorities

Cliquez sur « Importer » puis sélectionnez le certificat que vous avez téléchargé tout à l’heure. Pour finir cochez « Faire confiance à ce CA pour identifier les sites web » :

finalimport.png

A partir de là vous ne devriez plus avoir de problèmes. Les requêtes HTTP et HTTPS seront captées par Burp et vous pourrez les modifier.

Problèmes encore, si vous êtes en train de tester les sécurités d’un site en écoutant de la musique sur YouTube vous allez recevoir les requêtes du site que vous testez et celles venant de YouTube (et YouTube va vous flooooooder au max). Donc on va voir comment restreindre notre scope à un ou plusieurs sites. Pour cela allez dans l’onglet « Target » sur Burp Suite :

scopetotal

Sur la gauche vous avez tous les sites qui ont été captés par Burp lorsque vous utilisiez le proxy.

Attention, pour que le site apparaisse il faut que vous vous y soyez rendus avec le proxy actif.

Si vous voulez que Burp ne se concentre que sur un site il faudra le sélectionner, faire un clic droit et cliquez sur « Add to scope ». Ensuite retournez dans la section proxy puis « Options » et modifier les règles d’interception comme ceci :

rules.png

Voilà ! Les seuls requêtes que vous recevrez seront celles que vous avez placé dans votre scope.

Une fois que vous avez intercepté une requête, burp vous affichera son contenu :

reqest

Vous pouvez tout modifier. Absolument tout et comment bon vous semble. Ensuite vous n’avez plus qu’à la forwarder (i.e : l’envoyer au serveur) . Et si vous voulez réceptionner la réponse du serveur il vous suffira de cliquer sur « Action » puis sur « Do intercept > Response to this request ».

Bon c’est cool, on intercepte, modifie et renvoie des requêtes mais n’y aurait-il pas moyen de rejouer une requête sans avoir à se retaper toutes ces actions ?

Eh bien si, la suite burp propose un outil qui permet de rejouer une requête très simplement : Burp Repeater.

II/ Burp Repeater

Burp Repeater c’est clairement là où vous passerait le plus de temps. Par défaut il n’y a rien dans cet onglet :

repeater

C’est tout à fait normal, c’est à vous de dire quelle requête vous voulez envoyer dans le repeater. Pour cela choisissez une requête dans le proxy, cliquez sur « Action » puis « Send to Repeater » puis rendez vous dans la section Repeater et … Tadaa :

repeaterfilled

Maintenant vous pouvez modifier votre requête puis l’envoyer. Vous obtiendrez la réponse du serveur automatiquement :

repeaterend

Pour ma part je me sers de cet outil quand j’ai déjà repéré une faille et que je chercher à l’exploiter au mieux.

III/ Burp Spider

Burp Spider est un outil bien sympas puisqu’il permet de mapper un site. C’est en fait un scanner qui va parcourir tous les liens qu’il trouve sur le site web que vous lui avez spécifié.

Pour le lancer c’est très simple, rendez vous dans l’onglet Target, sélectionner le site que vous voulez mapper, clic droit > Spider This Host. Vous trouverez les résultats du scan dans l’onglet Site Map :

pages.png

Ensuite c’est à vous de faire l’analyse des liens. Certains peuvent être intéressants dans le cadre d’une exploitation 😉 !

IV/ Burp Decoder

Le dernier outil que je trouve intéressant c’est le burp decoder. Il permet très rapidement d’encoder/décoder une chaîne de caractères (on s’en sert beaucoup pour bypass des filtres par exemple) :

decoder

Je ne vais pas vous expliquer comment il fonctionne, je pense que c’est assez explicite eheh.

Voilà voilà pour Burp Suite. Cet outil est clairement le couteau suisse du pentester web… D’ailleurs j’ai pris l’habitude quand je fais des CTF’s, challenges ou autres (😏) de lancer Burp Suite pour analyser le format des requêtes et je pense que c’est une bonne pratique 😉 !

Si vous avez des questions n’hésitez pas à me les poser via la page Facebook et lâchez un like si vous voulez être tenu au courant de l’actualité cybernétique 🙂 !

Un commentaire

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google

Vous commentez à l'aide de votre compte Google. Déconnexion /  Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s