xss4

Exploitation

Le quatrième challenge demande explicitement de tenter une injection en utilisant la balise <script></script> :

Une première protection que je rencontre est un contrôle du format de l'adresse email :

Un contournement en utilisant directement Burp est possible, mais ma payload ne semble pas fonctionner car le mot clé script est filtré :

Ici il doit s'agir d'une protection de type pattern matching, je tente de le contourner en modifiant ma façon d'écrire la balise Javascript, soit <ScRiPT>alert(1)</sCRIpt> :

Analyse du code source

L'adresse email est récupéré dans la variable $email. Avant son affichage par la directive echo, un traitement est effectué par la méthode xss_check_1(). Cette méthode remplace le mot "script" par une chaîne de caractères vide mais sans faire attention à son format (minuscule, majuscule, répétition, etc) :

Mis à jour