variable = Danger ?

WRInaute discret
Bonjour à tous,


J'ia un site avec une page nommée "page.php" et cette page récupère 2 variables (pays & id)

exemple : page.php?pays=France&id=FR

Or je m'appercois que si quelqu'un remplace une variable dans l'url ca affiche sur la page.

exemple : page.php?pays=NUL&id=a-chier

Ça affichait "nul a chier" sur mon site.

Y a t-il un moyen d'éviter cela ?

:wink:
 
WRInaute accro
Vérifier que toutes les variables que tu utilises ont des valeurs parmi celles que tu autorises.

Tu devrais au passage te documenter un peu sur les problèmes d'injection et de cross-site scripting.

Jacques.
 
WRInaute passionné
Si tu mets même un
Code:
<script>alert(document.cookie);</script>
et que tu vois tes cookies apparaitre en pop up c'est encore "plus" un danger.

Si la liste des pays n'est pas énorme, tu peux "sanitizer" ta variable en utilisant (par exemple)
Code:
$validcountry = array('France', 'Belgique', 'etc');
if (isset($_GET['pays']) && in_array($validcountry, $_GET['pays'])) {
} else {
 die('Pays ' . htmlspecialchars($_GET['pays']) . ' incorrect');
}
(attention quand même je crois que c'est case sensitive).
 
Discussions similaires
Haut