Evitez les failles XSS sur votre site
Par Korben le 13 juillet 2007
On en parle souvent en ce moment. Si vous êtes développeur PHP, vous devez y faire attention, car le XSS ou Cross Scripting risque de vous poser quelques soucis.
Si vous voulez être sûr de ne pas provoquer de failles XSS sur votre propre site (fait en PHP avec vos petits doigts), je vous recommande cette fonction tellement simple, qui vous protégera à coup sûr !
function antixss($input) {
strip_tags($input);
$new = htmlspecialchars($input, ENT_QUOTES);
return $new;
}
strip_tags($input);
$new = htmlspecialchars($input, ENT_QUOTES);
return $new;
}
Placez cette fonction dans vos sources et valider vos formulaires (vos inputs..etc) de la façon suivante:
$value = antixss($_REQUEST["name"]);
Je vous recommande aussi la lecture des sujets suivants
- Générateurs…partie 12/24
- Comment créer une application native iPhone sans connaitre l’Objective-C
- FFSniFF, l’extension firefox qui ‘peut’ faire mal
- Laissez un message au propriétaire d’une adresse IP
- Générateurs…partie 8/24






tchouf
c’est à mettre uniquement dans les pages xxxxx.php? merci pour tes lumières
Posté le 13 juillet 2007 à 20:14:24
lich
tchouf, evidemment puisque c’est du PHP.
Posté le 13 juillet 2007 à 20:46:58
ksnapshot
L’argument de strip_tags n’est pas passé par référence, il faut donc utiliser $new = strip_tags($string);
Et plus ou moins grave, il est important de préciser le charset pour htmlspecialchars, sinon certains caractères pourraient bien ne pas être convertis en entités HTML. Il est également important de préciser le charset via l’entête content-type (Content-Type: text/html; charset=charset) et/ou via un meta http-equiv pour éviter les exploits via l’auto détection des navigateurs.
json_encode peut aussi être utilisé sur les chaînes, donc à favoriser si c’est pour afficher dans un javascript.
Posté le 15 juillet 2007 à 20:25:34