Level 5 (practice)
Dernière mise à jour
Dernière mise à jour
Appeler la fonction prettyHuman()
avec la chaîne de caractères "m5lccw"
en argument :
Ici, deux filtres sont en place : les occurrences du caractère "c"
sont supprimées et le caractère " " (espace)
n'est également pas disponible. Le filtrage du caractère "c"
est gênant car la balise <script></script>
n'est pas utilisable :
Je contourne le filtrage du caractère "c"
en passant par un tag <svg>
ainsi que de l'encodage unicode suivant le contexte. Le "/"
me permet de contourner la suppression du caractère " " (espace)
:
Appeler la fonction prettyRobot()
avec la chaîne de caractères "elcmf4"
en argument mais cette fois sur l'attribut src
dans une balise <img />
:
Il me faut plusieurs essais avant de déterminer les quelques filtres en place ici. Il semble que l’occurrence "on"
ne soit pas permise ainsi que l’occurrence "rr"
qui est transformée en "r"
. De plus le caractère "t"
ne semble pas être permis non plus :
Concernant le "on"
de onerror
je peux passer par le balise <script></<script>
. Pour avoir une seule occurrence de "r"
j'en renseigne un second, puis, finalement, j'utilise l'encodage unicode pour contourner le filtre sur le caractère "t"
:
Appeler la fonction politeSuperHero()
avec la chaîne de caractères "twxdfu"
en argument mais cette fois sur l'attribut href
dans une balise <a>
:
Dans ce challenge, le caractère "u"
ainsi que le caractère "o"
sont filtrés :
Etant donné que le "u"
est filtré, il n'est pas possible d'utiliser l'encodage unicode. J'utilise donc les HTML entities pour le filtrage des caractères "o"
et "u"
. Concernant le "u"
présent dans la chaîne passée en argument on utilise la fonction String.fromCharCode()
. J'utilise également les HTML entities car je me rends compte que la chaîne "String"
est également filtrée :
Je me suis rendu compte seulement à posteriori , mais le filtrage sur le "o"
est contournable en le doublant (par exemple "oo"
).