Fuite en 1791

Catégorie: Web - Difficulté: Moyen

Description:

Lien : https://ddfc.challenges.404ctf.fr/

Solution:

Pour ce challenge, nous arrivons sur une page avec un lien redirigeant vers une autre page :

Ici il n'y a rien d'intéressant, alors nous allons directement aller sur l'autre page :

Ah pas de bol, le lien utilisé n'est plus valide. Regardons le de plus près : https://ddfc.challenges.404ctf.fr/ddfc?expiry=-5625891076&signature=wawF6dC4Hz9g5NyCc3j1KCDcfztFE/sp

Nous pouvons y voir 2 paramètres : un expiry (qui est un timestamp) et une signature.

Si nous essayons de changer le timestamp -5625891076 (qui correspond à la date du 21/09/1791 12:38:05) par un plus récent, comme 5625891076 (qui correspond à la date du 11/04/2148 12:31:16) nous avons une autre erreur :

La signature n'est plus valide et nous empêche donc d'accéder à la page souhaitée. Ici nous allons donc devoir chercher des solutions pour contrer ces problèmes.

Au départ, nous pourrions penser à chercher comment est générée la signature en fonction du timestamp, mais ce n'est pas vraiment l'objectif d'un chall web ici... La deuxième solution est de chercher s'il n'y a pas de vulnérabilités à exploiter avec les paramètres d'une URL. C'est là que nous tombons rapidement sur une vulnerabilité nommée : "Parameter Pollution".

En lisant la documentation de site très bien fait, nous voyons le principe de cette attaque : ajouter des paramètres à la fin de l'URL pour bypasser les restrictions précédentes.

Dans notre cas, le seul paramètre auquel nous pouvons toucher car nous avons compris son fonctionnement c'est le paramètre expiry. Alors faisons cela avec l'URL suivante en mettant notre timestamp créé à la fin : https://ddfc.challenges.404ctf.fr/ddfc?expiry=-5625891076&signature=wawF6dC4Hz9g5NyCc3j1KCDcfztFE/sp&expiry=5625891076

Avec ce lien, nous pouvons enfin accéder à la DDFC :

Et trouver le flag tout en bas de la page :

🚩 FLAG
404CTF{l4_p011uti0n_c_3st_m41}

Last updated