you-can-trust-me
Catégorie: Web Difficulté: easy Flag: CTF{2965f7e9fcc77fff2bd869db984df8371845d6781edb382cc34536904207a53d}
Challenge
Description
We hired a new junior dev to make proof of concept for a route that checks a jwt. Let's just say that he had the right intentions.
Flag format: CTF{sha256}
Ce challenge tourne sur un docker et n'est pas disponible
Analyse du serveur
La première fois que l’on fait une requête, on reçoit la réponse No cookie found

Dans les headers de réponse, on trouve dans le set-cookie
Dans ce JWT :

En faisant à nouveau une requête mais avec ce cookie cette fois, on a la réponse Hello user. Since you do not have administrative privileges I guess you will have to wait here.

Fuzzing
On est bloqué ici et on nous dit d’attendre, traduction : il faut chercher d’autres endpoints

Attaque du JWT
Avant toute attaque plus élaborée, on tente de modifier le payload et l’on découvre avec stupeur que le serveur de vérifie pas la signature. On peut donc contrôler le payload à notre guise et ajouter is_admin dedans
On continue en suivant ce qu’on nous dit
Maintenant il faut bruteforce un nombre à 4 chiffres
Mis à jour