Bonjour,
Je dois sécurisé un site dont j'ai repris la maintenance et je dois donc m'attaquer au problème de "cross-site scripting".
Le site étant un peu vieux (codé en PHP4) et mal organisé mais n'ayant pas pour but de le refaire entièrement, je voulais regarder coté Apache pour gérer ce problème.
En gros, je voudrais que lorsque je detecte la chaine "<script" dans une url (chaine qui serait passait en POST dans un champ de formulaire), celle-ci soit encodé pour ne pas être interprété sur le site.
Exemple, actuellement si dans un champ de formulaire je mets la chaine précédente, la page résultat me retourne dans un jolie pop-up les informations de cookie de la page.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 '>"><_script_>_alert(document.cookie)_</_script_> ==> SANS LES _ (je ne peux pas poster le message si je les enlève) :aie:
J'ai essayé par un .htaccess mais sans résultat:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 RewriteEngine On RewriteCond %{REQUEST_METHOD} (GET|POST) [NC] RewriteCond %{QUERY_STRING} ^(.*)(%3C|<)/?script(.*)$ [NC] RewriteRule (.*) - [F]
Partager