Rédaction : Contournement de l'authentification via la divulgation d'informations @ PortSwigger Academy
Cet article pour le laboratoire Contournement de l'authentification via la divulgation d'informations fait partie de ma série de procédures pas à pas pour la Web Security Academy de PortSwigger .
Parcours d'apprentissage : Sujets côté serveur → Divulgation d'informations
Script Python : script.py
Description du laboratoire
Pas
Une analyse
L'application lab est un site marchand avec des produits très intéressants. Comme d'habitude, la première étape consiste à consulter le site Web.
Après avoir parcouru un peu et vous être connecté avec les informations d'identification connues, rien de trop intéressant n'apparaît. Il est temps de vérifier les demandes dans Burp. Là non plus rien de bien intéressant.
Le point de terminaison d'administration dans certains ateliers précédents a été trouvé sous /admin
. Mais pour éviter d'utiliser ces connaissances, je peux utiliser plusieurs moyens de découverte de contenu. Burp Professional est livré avec une telle fonctionnalité et plusieurs bons outils gratuits permettent également la découverte de contenu.
Celui que j'utilise ici est ffuf avec les excellentes listes de mots fournies par SecLists :
Visite du point de terminaison
Je visite cette page pour recevoir ce message :
Aucune autre information n'est donnée.
L'en-tête est un moyen courant de propager les adresses IP d'origine vers un serveur Web (utilisé dans les scénarios de proxy ou d'équilibrage de charge) X-Forwarded-For
. Ceci, cependant, ne fonctionne pas ici (et la description du laboratoire indique qu'il s'agit de toute façon d'un en-tête personnalisé).
Deux verbes HTTP peuvent être utilisés pour obtenir des informations supplémentaires, OPTIONS
et TRACE
. Ce dernier produit un résultat intéressant :
Fournir un en-tête personnalisé
Maintenant que je connais l'en-tête, accéder à l'interface d'administration devient facile. Je dois m'assurer que l'en-tête personnalisé est envoyé avec chaque demande, j'ajoute donc une Match and Replace
règle pour toujours ajouter ce nouvel en-tête aux demandes.
J'utilise 127.0.0.1
comme contenu pour faire croire à l'application que la demande provient de localhost
.
Maintenant, rechargez simplement la page dans le navigateur, accédez au panneau d'administration et supprimez l'utilisateur carlos
pour résoudre le labo :
Publié à l'origine sur https://github.com .
New to Medium? Become a Medium member to access all stories on the platform and support me at no extra cost for you!