Lorsqu'en javascript certaines variables sont mal protégées, et sont directement mises dans l'url, il est possible d'injecter du code arbitraire. Par exemple, imaginons un script pour afficher une page :
<?php [...] print("page : $page"); [...] ?>
Si le nom de la page est hack me.htm cela donnera :
http://site_vulnerable.com/?page=hack%20me
Le hacker peut donc envoyer n'importe quel code via l'url grâce à la faille XSS :
http://site_vulnerable.com/?page=<script>alert("alph4net");</script>
Ce qui aura pour effet de faire apparaitre une boite de dialogue avec écrit : alph4net
dedans, et là, au cas ou vous ne l'auriez pas vu, il y a une faille, c'est une faille
XSS non-permanente
Maintenant pour sécuriser tous ça, à chaque fois que vous utilisez les fonctions
echo et print() pour afficher une variable faite ceci :
<? print(htmlspecialchars($variable)); ?>
ou
<? echo htmlspecialchars($variable); ?>
Au lieu de ça:
<? print($variable); ?>
ou
<? echo ($variable); ?>
Voila, je le répète, c'est a titre d'information, c'est pour que les personnes qui créent des script php, les sécurisent au Max. Certains (même beaucoup) connaissent cette faille, mais il n'y a pas que des ingénieurs sur ce site ... ;)