Des indices dans le code de la page
La pizzeria Vesuvio a un site pour réserver des tables, fait à la hâte par un développeur optimiste. Une page web est un document que le serveur remet à n'importe qui : lis-la en entier, y compris les parties que le navigateur ne t'affiche pas.
Laboratoire 5 sur 7 du parcours Web Exploitation. Si tu bloques, tu as 3 indices, du plus vague au plus précis : ils coûtent 0, 40 et 120 XP.
Ce que tu apprends
Les objectifs se valident tout seuls pendant que tu travailles dans le terminal ; chacun rapporte des points d’expérience :
- Lire le code source de la page d'accueil (75 XP)
- Ouvrir le fichier JavaScript indiqué par la page (125 XP)
- Atteindre l'endpoint interne oublié (150 XP)
Thèmes : web, information-disclosure, owasp-a05.
Les commandes que tu utiliseras
Le terminal est simulé et comprend une quarantaine de commandes Linux. Dans ce laboratoire, tu auras surtout besoin de celles-ci :
curl: envoie des requêtes HTTP depuis le terminal et montre la réponse brute du serveur, en-têtes compris.
L’environnement simulé
La cible est un hôte imaginaire sur un réseau privé simulé : tu ne l'atteins que depuis le terminal du jeu.
La cible expose ces services :
- SSH: l’accès distant chiffré à la ligne de commande ; on le protège avec des clés plutôt que des mots de passe et sans connexion directe en root.
- Web (HTTP): un serveur web avec des pages, des API ou des panneaux d’administration : la partie la plus exposée de presque toute organisation.
La leçon de défense
Une fois le laboratoire résolu, le compte rendu explique ce qui a mal tourné et comment se protéger :
Tout ce que le serveur envoie au navigateur (HTML, commentaires, JavaScript) est public : les commentaires et les notes du développeur, tout le monde peut les lire, et une adresse « interne » qu'aucune page ne référence reste accessible à qui la connaît. Cacher une adresse n'est pas une défense (security through obscurity). Leçon défensive : nettoyer commentaires et références internes avant la mise en ligne, retirer les endpoints de test de la production et faire passer chaque API par une authentification et des contrôles côté serveur.
Avant et après ce laboratoire
Pour l’ouvrir, tu dois avoir résolu :
- Le cookie auquel on fait trop confiance (Web Exploitation, moyen)
Après ce laboratoire, tu peux passer à :
- Le portail complet (Web Exploitation, difficile)
Le parcours Web Exploitation
Web Exploitation transpose les bases dans le monde des sites et des applications web, où se produit une part énorme des attaques réelles. Tu explores des sites imaginaires avec des requêtes HTTP depuis le terminal et tu découvres des dossiers que quelqu'un espérait cacher, des cookies auxquels le serveur fait trop confiance, des identifiants d'usine jamais changés, des commentaires oubliés dans le code de la page et des messages d'erreur trop bavards. Les leçons suivent les catégories de l'OWASP Top 10, comme Broken Access Control et les défaillances d'authentification, et chacune explique la correction.