Eléphant du PHP |
52 Messages
03 mars 2006, 00:31
yes, sauf que si l'on réussit par une faille à atteindre ta base de donnée, on a accès à une liste d'utilisateurs, mots de passe (et sans doute email) et ça c'est dangereux ! Peu de personnes prennent la précaution d'utiliser des mots de passe différents. C'est le genre de liste qui vaut cher sur le net ..
Pour les failles XSS, il te faut penser à filtrer toute variable provenant du client. Tu ne peux pas te fier à ces données qui auraient pu être modifiées (les variables de type GET, POST, COOKIE, ...)
Si c'est du texte que tu réutiliseras par après, il te faut filtrer le code html éventuellement injecté, tu as pour cela la fonction htmlspecialchars()
pour filtrer une variable devant contenir uniquement une donnée numérique on peut par contre utiliser intval()
On te parle de la restriction des caractères acceptés. C'est dans ce sens qu'il faut penser. Il est impossible de définir tout ce que l'on doit refuser. Autant alors définir ce qu'on accepte.
J'appliquerais plutôt cela à l'exemple des URL du type index.php?file=
Si c'est possible, pour se prémunir de tout problème, il est préférable d'avoir dans un array la liste des files qui existent et qui sont acceptés, et de vérifier si celui spécifié dans l'url existe bien. Si ce n'est pas possible il faut adapter les protections selon ton serveur.