XSS dans un template literal avec caractères Unicode échappés

Reflected XSS into a template literal with angle brackets, single, double quotes, backslash and backticks Unicode-escaped

XSS réfléchi dans un template literal (backticks) où les chevrons < et > ainsi que les guillemets simples et doubles sont encodés, et la backtick est échappée en Unicode. L'objectif : provoquer l'exécution de alert() à l'intérieur du template string.

Le paramètre de recherche est reflété dans un template literal JavaScript. Il faut rompre la chaîne template pour exécuter alert() depuis la valeur reflétée.

  • Le caractère backtick (`) délimite le template literal ; la page échappe la backtick fournie par l'utilisateur (ex : ``` ou équivalent Unicode), empêchant une simple sortie.

Exemple de différence d'interpolation en JS (illustration) :

La première ligne affiche littéralement ${variable}, la deuxième interprète la variable grâce aux backticks.

  • On tente d'insérer une expression d'interpolation qui exécute alert() :

Mis à jour

Ce contenu vous a-t-il été utile ?