Writeup du Dojo #27 de YesWeHack — XSS réfléchi via bypass d’encodage Unicode et JSFuck pour contourner les filtres de caractères.

Description

Le Cross-Site Scripting (XSS) réfléchi permet à un attaquant d’injecter des scripts malveillants qui s’exécutent dans le navigateur de la victime. Les conséquences incluent le vol de session, l’exfiltration de données, ou la défiguration de site.

Mécanismes de Bypass

Trois techniques combinées pour contourner les filtres :

1. Encodage du caractère ß

Le caractère allemand ß est converti en SS par les fonctions uppercase, permettant d’injecter du contenu non filtré.

2. Substitution Unicode

< à la place de < pour bypasser le remplacement de caractères.

3. Encodage JSFuck

Syntaxe JavaScript obfusquée évitant la détection directe par caractères :

[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]...]

Mitigation

Valider la longueur des données après application des fonctions de transformation uppercase.

← retour aux articles