par
bubuche » 08 juil. 2007, 23:56
Concernant ces problème de sécurité, je voulais savoir si je fais un usage abusif de settype() ou si c'est normal?
je suis sur qu'un settype ($var, 'integer') est forcé (pour des raisons de sécurité évidente du type liée a "5 est la version de PHP"), mais settype($var, 'string') et autre, je suis moins sur.
Toujours dans le domaine de la sécurité:
si j'ai un champ de sql qui fait une taille de, disons, 100.
est-ce que je dois faire un test strlen avant ou après avoir échappée ma chaine?
(en d'autre terme, si l'utilisateur entre une chaine de 100 caractère qui serons tous échappés, cela fera une taille de 200 caractères au final. Mais est-ce que les caractère sont stockés "échappés", ou est-ce que cela est enlevé a la requète?)
Et concernant les headers, est-ce que leur execution est coté serveur ou coté client?
C'est-a-dire, est-ce qu'il est suffisant de faire un header('location: adresse_ou_tu_degage.php') si je détecte une erreur, ou est-ce que en parametrant son explorateur, le client pourra forcer mon script a continuer de s'exécuter?
Je vous pose ces questions, car elles ne sont pas toujours évidente
aussi important: quand vous vérifiez une variable, vérifiez son existence, son contenu, mais aussi son type.
Trop souvent, il suffit de faire un formulaire en remplaçant name="nom_var" par name="nom_var[]" pour obtenir le message d'erreur tant convoités (parce que contenant plein d'informations)
Voila, c'est tout ce que je voulais dire

Concernant ces problème de sécurité, je voulais savoir si je fais un usage abusif de settype() ou si c'est normal? :D
je suis sur qu'un settype ($var, 'integer') est forcé (pour des raisons de sécurité évidente du type liée a "5 est la version de PHP"), mais settype($var, 'string') et autre, je suis moins sur.
Toujours dans le domaine de la sécurité:
si j'ai un champ de sql qui fait une taille de, disons, 100.
est-ce que je dois faire un test strlen avant ou après avoir échappée ma chaine?
(en d'autre terme, si l'utilisateur entre une chaine de 100 caractère qui serons tous échappés, cela fera une taille de 200 caractères au final. Mais est-ce que les caractère sont stockés "échappés", ou est-ce que cela est enlevé a la requète?)
Et concernant les headers, est-ce que leur execution est coté serveur ou coté client?
C'est-a-dire, est-ce qu'il est suffisant de faire un header('location: adresse_ou_tu_degage.php') si je détecte une erreur, ou est-ce que en parametrant son explorateur, le client pourra forcer mon script a continuer de s'exécuter?
Je vous pose ces questions, car elles ne sont pas toujours évidente :D
aussi important: quand vous vérifiez une variable, vérifiez son existence, son contenu, mais aussi son type.
Trop souvent, il suffit de faire un formulaire en remplaçant name="nom_var" par name="nom_var[]" pour obtenir le message d'erreur tant convoités (parce que contenant plein d'informations)
Voila, c'est tout ce que je voulais dire :D