Niveau "Medium"
Dernière mise à jour
Dernière mise à jour
Le niveau "Medium" repose sur le même principe : l'utilisateur peut changer de langue et la nouvelle valeur est envoyée au serveur via la paramètre default
:
Le script permettant de renseigner dynamiquement la valeur sélectionnée dans le liste déroulante est toujours le même :
Lorsque je tente de récupérer le jeton de la victime en laissant l'envoi du paramètre au serveur je reçois une redirection 302
qui requête une URL avec en paramètre une valeur whitelistée :
Je tente alors de contourner la protection en place. Au bout de quelques essais il apparaît que le mot clé <script>
soit filtré. Pas de problème, d'autres moyens existent :
Je reçois ainsi bien le cookie de la victime :
Mais comme vu précédemment, il est possible de valider très simplement ce challenge en utilisant la mécanique du fragment URL :
Cela permet de s'affranchir complètement de la vérification effectuée côté serveur :