Une application web expose davantage que les liens visibles dans le navigateur. Répertoires non référencés, hôtes virtuels nommés, paramètres non documentés et routes d’API peuvent tous élargir la surface d’attaque. Ce cours vous apprend à découvrir ces éléments puis à examiner les requêtes HTTP qui permettent de les atteindre.
Avec ffuf, Gobuster, curl et jq sur des cibles locales, vous passerez de l’énumération de contenu à la construction précise de requêtes et à l’interaction avec une API REST. Le défi final combine ces compétences : découvrir un hôte virtuel caché, cartographier son chemin d’API et construire la requête nécessaire pour obtenir un jeton de laboratoire.
Ce que vous apprendrez
- Utiliser les listes fournies avec
ffufpour énumérer les répertoires cachés et filtrer par code d’état HTTP. - Rechercher avec Gobuster des fichiers portant des extensions choisies telles que
.phpet.txt. - Découvrir des hôtes virtuels nommés en fuzzant l’en-tête
Hostet en filtrant les réponses par taille. - Fuzzer des noms de paramètres GET et POST non documentés, puis vérifier le comportement obtenu.
- Examiner des échanges HTTP détaillés avec
curlet construire des requêtes, en-têtes, cookies et corps de formulaire. - S’authentifier auprès d’une API REST locale, envoyer un jeton Bearer, analyser le JSON avec
jqet tester PUT et DELETE. - Combiner découverte d’hôte virtuel, énumération de répertoires et requête API personnalisée dans un défi autonome.
À qui s’adresse ce cours
Ce cours intermédiaire s’adresse aux apprenants en sécurité qui comprennent les requêtes web élémentaires et souhaitent cartographier concrètement une surface d’attaque web. Il convient aux futurs pentesteurs web, aux personnes étudiant la sécurité des API et aux développeurs ou défenseurs voulant comprendre comment tester des routes cachées et des champs HTTP contrôlés par le client.
Prérequis : Être à l’aise dans un terminal Linux et avec la redirection de base, et comprendre les URL, méthodes HTTP, en-têtes, codes d’état et structures JSON.
Environnement d’apprentissage : Un terminal Ubuntu 22.04 avec ffuf, Gobuster, curl, jq, des listes fournies et des cibles web et API locales isolées sur le port 8080. Aucun système public n’est analysé.
Questions fréquentes
Ce cours utilise-t-il Burp Suite ou un autre proxy d’interception graphique ?
Non. Le laboratoire d’interception s’appuie sur la sortie détaillée de curl pour apprendre manuellement à lire et modifier les composants d’une requête. Il prépare aux proxys graphiques, mais n’enseigne pas de processus Burp Suite ou OWASP ZAP.
Le fuzzing sert-il à deviner des mots de passe ?
Non. Les exercices emploient de petites listes fournies pour tester des noms de répertoires, fichiers, hôtes virtuels et paramètres. Ils ne réalisent pas de force brute sur des identifiants.
Enverrai-je des requêtes vers de vrais sites web ?
Non. Toute l’énumération et les requêtes API ciblent des services de l’environnement du cours sur 127.0.0.1 ou localhost, port 8080.
Quelles opérations d’API vais-je effectuer ?
Vous identifierez des endpoints, vous authentifierez avec les identifiants fixes du laboratoire, transmettrez un jeton Bearer, extrairez des champs JSON et enverrez des requêtes PUT et DELETE modifiant l’API isolée. Le défi final exige aussi une requête POST avec des en-têtes personnalisés pour obtenir un jeton de laboratoire.





