Le vendredi 09 octobre 2015 à 13:27, andre_deb...@numericable.fr a écrit : > Je ne sais plus qui, je ne sais plus quand (ça a été tronqué) a écrit : > > pour la sécurité d'une page Internet dynamique tout > > les arguments passés a une page Internet, qu'ils soit > > par l'URL ou par des formulaires, sont à considérer > > comme potentiellement dangereux : > > Le PHP est un langage de sites dynamiques, > comment faire autrement ?
PHP a une très mauvaise réputation de nid à failles. Cette réputation n'est pas forcément très objective mais parmi les arguments qui l'ont faite, on trouve : - que l'API n'est pas très rigoureuse; - qu'on peut développer un site en PHP sans trop de connaissances (et donc sans forcément trop de sécurité non plus). > "php.ini" traite les variables de formulaires, > selon le mode "register_global = off", > avec transmission de la variable à la page de traitement par : > ...$_POST["name"]... > Que peut-on faire de plus ? Ma réponse est indépendante du langage utilisé et vaut autant pour PHP que pour tout autre langage utilisé pour créer des sites dynamiques (et même d'une manière large des programmes client/serveur) : Ne _jamais_ faire confiance à ce qui arrive du client ! Tu considères que tout est douteux et tu vérifies _scrupuleusement_ tout ce qui arrive : - est-ce que le nombre que tu attends est bien seulement un nombre; - est-ce que la chaîne que tu attends ne contient pas de quoi faire de l'injection SQL; - est-ce que la chaîne que tu attends ne contient pas de quoi faire du XSS; - etc. Pour ça, les expressions rationnelles sont un très bon allié. Sébastien