Le cookie auquel on fait trop confiance
FitNova, la salle de sport avec l'appli pour les membres, décide qui tu es en regardant un cookie. Tu es un membre quelconque : peux-tu entrer là où seul le personnel entre ? Prouve qu'un simple membre peut devenir administrateur et récupère le flag.
Laboratoire 2 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 :
- Découvrir quel cookie le site envoie (en-têtes) (100 XP)
- Entrer dans l'espace membres avec ton cookie (100 XP)
- Se faire refouler par le panneau du personnel (100 XP)
- Entrer dans le panneau du personnel (150 XP)
Thèmes : web, cookie, owasp-a01.
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 :
Le serveur a décidé des droits en lisant une valeur qui vient du client, et le client est contrôlé par celui qui l'utilise : un cookie se modifie en une seconde avec curl ou avec les outils du navigateur. C'est un classique de l'OWASP A01 (Broken Access Control). Leçon défensive : ne jamais faire confiance aux données que l'utilisateur peut modifier. Le cookie ne doit contenir qu'un identifiant de session aléatoire (ou un jeton signé par le serveur) ; le rôle se lit côté serveur, depuis la session, à chaque requête.
Avant et après ce laboratoire
Pour l’ouvrir, tu dois avoir résolu :
- robots.txt et dossiers oubliés (Web Exploitation, facile)
Après ce laboratoire, tu peux passer à :
- Aurora — Web Breach (Web Exploitation, moyen)
- Des indices dans le code de la page (Web Exploitation, moyen)
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.