Solution
D’après la description, nous avons à faire à un service web.
Démarrage du challenge
Commençons par lancer le challenge et rendez-vous à l’URL http://localhost:8000
.
Nous ne sommes pas très avancés. Mais pas de panique, regardons le code source.
Ah ! Il se trouve qu’à la fin du code source, nous avons deux URL en commentaire.
Si nous tentons d’y accèder, nous remarquons qu’à l’URL /api/image
nous demande un paramètre…
… et à l’URL /api/debug
nous amène sur une page remplit de texte.
Il faut savoir que le framework web Flask, il nous est possible d’accèder à une zone de debug qui permet de gérer les erreurs. Cependant, ce mode de débug ne doit pas rester dans un environnement de production.
Si on regarde cette page attentivement, il est indiqué le nom d’un fichier Python.
Récupération du fichier Python
Maintenant que nous avons trouvé une information intéressante, il va falloir accéder au contenu de ce fichier.
/app
c’est le main.html d’un projet Flask.
Donc il nous faut juste entrer dans la barre d’adresse http://localhost:8000/baguettevpn_server_app_v0.py
. Et paf ! nous avons téléchargé le fichier pythyon.
Exploitation du fichier Pyhton
Ouvrez le fichier avec l’éditeur de votre choix.
Ne soyez pas trop rapide et regardez bien les commentaires du haut pour accéder au premier flag :)
# Congrats! Here is the flag for Baguette VPN 1/2
# FCSC{e5e3234f8dae908461c6ee777ee329a2c5ab3b1a8b277ff2ae288743bbc6d880}