XSS dans une chaîne JavaScript avec apostrophe et antislash échappés

Reflected XSS into a JavaScript string with single quote and backslash escaped

Reflected XSS dans la fonctionnalité de suivi des termes de recherche. La valeur reflétée est insérée dans une chaîne JavaScript ; les apostrophes simples et les backslashes sont échappés, ce qui complique l’évasion.

Objectif

  • Réussir à sortir de la chaîne JavaScript échappée et appeler la fonction alert().

Observations actuelles

  • Si on envoie testing, la valeur est stockée dans la variable searchTerm du script.

  • Tentative d’introduire une nouvelle variable : testing'; var=test='thisIsATest → on observe que des guillemets et des antislashs () sont injectés/présents et empêchent l’injection directe.

  • En insérant simplement la balise de fermeture de script, on peut fermer le contexte script : </script>

  • Après fermeture, du texte HTML simple peut être rendu : </script><h1>HACK</h1>

  • Et enfin, il est possible d’exécuter un alert en ajoutant un nouveau <script> après la fermeture : </script><script>alert(0)</script>

Mis à jour

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