|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Inscrit
Inscription : juin 2006 Messages : 531 ![]() |
Bonjour,
- Admettons que vous avez un formulaire avec x champs. - Le formulaire renvoit sur la même page. - Sur cette page, vous testez la présence de la variable 'valider' issue de l'attribut "name" du bouton submit. - Si cette variable est présente, vous déclenchez le script, puisque le formulaire a été soumis. - Bien sûr vous filtrez toutes les entrées du formulaires, avec les expregs ou mysql_real_escape_string(). Mais la variable 'name' du bouton submit, est-ce utile de la "filtrer" ? Pour moi non, puisqu'elle ne sert qu'à déclencher le script et n'est pas inclue dans la base de donnée et sa valeur n'est affichée nul part. On ne teste que sa présence. Qu'en pensez-vous ? |
|
|
00
|
|
|
#2 |
|
Membre chevronné
![]() Ingénieur systèmes et réseaux Inscription : juillet 2006 Messages : 836 ![]() |
Ben non (si t'es en mode POST) dans ce cas un simple if(isset($_POST['valider'])) suffit, si t'es en GET la par contre filtre la
__________________
Dire Straits, Bob Dylan, Led Zeppelin, the Who, Pink Floyd, AC/DC, Guns & Roses, the Doors, ... |
|
|
00
|
|
|
#3 |
|
Inscrit
Inscription : juin 2006 Messages : 531 ![]() |
Oui je suis en mode POST et je fais comme tu dis.
Cela changerait quoi en mode GET ? Elle s'afficherait dans l'URL et le gars pourrait en profiter pour modifier sa valeur et expédier une requête SQL en rechargeant la page ? Qu'est-ce qui l'empêche de le faire en POST, puisque dans les deux cas, la variable n'est ni affichée ni envoyée en BD ? |
|
|
00
|
|
|
#4 | |
|
Membre émérite
![]() Alain Inscription : novembre 2005 Messages : 897 ![]() |
Citation:
Si tu veux essayer en Get, qui t'en empêche et de vérifier si c'est falsifiable ? Ca te prend 1 minute pour modifier tes sources.
__________________
Ce n'est pas parce que les choses sont difficiles qu'on n'ose pas les entreprendre. C'est parce qu'on n'ose pas les entreprendre qu'elles sont difficiles. |
|
|
|
00
|
|
|
#5 |
|
Inscrit
Inscription : juin 2006 Messages : 531 ![]() |
Je n'ai rien compris à ta réponse, tu n'as donc sans doute rien compris à ma question, mais c'est pas grave.
|
|
|
00
|
|
|
#6 | |
|
Membre chevronné
![]() Inscription : mai 2005 Messages : 657 ![]() |
Salut,
Si tu testes juste la présence de la variable (isset) et que tu n'utilises nulle part son contenu, ça ne sert a rien de la filtrer évidement Citation:
|
|
|
|
00
|
|
|
#7 |
|
Membre chevronné
![]() Ingénieur systèmes et réseaux Inscription : juillet 2006 Messages : 836 ![]() |
Bref on s'en fou dans tous les cas tu demandes si la variable du submit est presente, si le mec s'eclate a la changer via l'adresse, elle n'est pas reconnue est basta. C'est tout. T'embetes pas avec tout ca
Et Taum imagine il demande if(isset($_GET['variable']) AND $_GET['variable'] == "submit"){ alors si l'utilsateur la change ca bug, mais qui irait faire ca oO
__________________
Dire Straits, Bob Dylan, Led Zeppelin, the Who, Pink Floyd, AC/DC, Guns & Roses, the Doors, ... |
|
|
00
|
|
|
#8 |
|
Inscrit
Inscription : juin 2006 Messages : 531 ![]() |
Imaginons la chose suivante :
- J'ai un formulaire avec la méthode GET. - L'attribut name du bouton submitt est "valider". - Après la validation, je test if(isset($_GET[valider])); Ici $_GET['valider'] ne sert à rien d'autre qu'à vérifier que le formulaire est posté. Toutes les autres valeurs du formulaires sont filtrées, puisqu'elles sont incluses. Qu'est-ce qui empêche ici le pirate de trafiquer dans l'URL la valeur de $_GET['valider'] pour y entrer une requête sql afin de faire une injection ? |
|
|
00
|
|
|
#9 | |
|
Membre Expert
![]() Eleveur de cornichons Inscription : juin 2002 Messages : 1 060 ![]() |
Citation:
Nas' |
|
|
|
00
|
|
|
#10 |
|
Membre chevronné
![]() ![]() Aurélien Développeur Web Inscription : avril 2006 Messages : 510 ![]() |
les injections SQL c'est possible que si la variable qui est trafiquée est envoyée à la BdD
si tu fais que tester l'existence d'une valeur, tu t'en contrefous de son contenu par rapport à tes requêtes SQL |
|
00
|
Copyright © 2000-2012 - www.developpez.com