Bonsoir,Utiliser $_POST au lieu de $_REQUEST permet de s'assurer que les
données sont transmises dans des circonstances normales
Non. Il permet de détecter *certaines tentatives de transmission
anormale*. Pas toutes, ce serait trop simple (donc s'il en reste,
pourquoi se fatiguer vu qu'il FAUDRA une AUTRE protection).
pourquoi se fatiguer vu qu'il FAUDRA une AUTRE protection
et pas une tentative de CSRF.
http://shiflett.org/articles/security-corner-dec2004
Oui et ? A part rajouter un token en plus du session_id (et puis
pourquoi pas un token2 et un token3, des fois qu'on ait deviné le
premier puis le second) qu'est-ce que cet article indique ?
<CITE>
[le code qui est envoyé par l'image]
Every user that visits this page sends a request to example.org just as
if the user clicked a link to the same URL. Because the sample
application uses $_REQUEST instead of the more specific $_POST, it
cannot distinguish between data sent in the URL from data provided in
the proper HTML form.
</CITE>
BFD ! (big furry deal). C'est surtout parce qu'on ne vérifie pas que
cette requête est valide (i.e. cette personne a le droit de l'exécuter)
que le risque est là.
<CITE>
POST requests can also be forged, so do not consider a strict use of
$_POST to be sufficient protection.
</CITE>
Donc C.S. fait partie des gens qui considèrent que tout ce qui permet de
mettre des batons dans les roues à l'attaquant est bon à prendre, quel
que soit le coût en maintenance et complexification du code (dont il ne
parle pas d'ailleurs).
Moi je considère que quand ça m'oblige à modifier
mon code toutes les 5 minutes parce qu'on golio (cf plus bas) change
d'avis comme de chemise et qu'en plus la "protection" se contourne en 3
secondes, ça ne vaut pas le coup de s'emmerder.
De plus je ne vois pas l'intérêt de changer des requêtes GET en POST,
l'utilisation de chacune des méthodes étant bien différenciée.
Nous sommes tout à fait d'accord : strictement aucun !! Mais va dire ça
à la @#*! d'agence graphiste qui te fournit 15 versions de la même page
en 3 semaines avec un coup l'un, un coup l'autre, et la troisième fois
du JS qui transforme le clic sur une image en POST...
Bonsoir,
Utiliser $_POST au lieu de $_REQUEST permet de s'assurer que les
données sont transmises dans des circonstances normales
Non. Il permet de détecter *certaines tentatives de transmission
anormale*. Pas toutes, ce serait trop simple (donc s'il en reste,
pourquoi se fatiguer vu qu'il FAUDRA une AUTRE protection).
pourquoi se fatiguer vu qu'il FAUDRA une AUTRE protection
et pas une tentative de CSRF.
http://shiflett.org/articles/security-corner-dec2004
Oui et ? A part rajouter un token en plus du session_id (et puis
pourquoi pas un token2 et un token3, des fois qu'on ait deviné le
premier puis le second) qu'est-ce que cet article indique ?
<CITE>
[le code qui est envoyé par l'image]
Every user that visits this page sends a request to example.org just as
if the user clicked a link to the same URL. Because the sample
application uses $_REQUEST instead of the more specific $_POST, it
cannot distinguish between data sent in the URL from data provided in
the proper HTML form.
</CITE>
BFD ! (big furry deal). C'est surtout parce qu'on ne vérifie pas que
cette requête est valide (i.e. cette personne a le droit de l'exécuter)
que le risque est là.
<CITE>
POST requests can also be forged, so do not consider a strict use of
$_POST to be sufficient protection.
</CITE>
Donc C.S. fait partie des gens qui considèrent que tout ce qui permet de
mettre des batons dans les roues à l'attaquant est bon à prendre, quel
que soit le coût en maintenance et complexification du code (dont il ne
parle pas d'ailleurs).
Moi je considère que quand ça m'oblige à modifier
mon code toutes les 5 minutes parce qu'on golio (cf plus bas) change
d'avis comme de chemise et qu'en plus la "protection" se contourne en 3
secondes, ça ne vaut pas le coup de s'emmerder.
De plus je ne vois pas l'intérêt de changer des requêtes GET en POST,
l'utilisation de chacune des méthodes étant bien différenciée.
Nous sommes tout à fait d'accord : strictement aucun !! Mais va dire ça
à la @#*! d'agence graphiste qui te fournit 15 versions de la même page
en 3 semaines avec un coup l'un, un coup l'autre, et la troisième fois
du JS qui transforme le clic sur une image en POST...
Bonsoir,Utiliser $_POST au lieu de $_REQUEST permet de s'assurer que les
données sont transmises dans des circonstances normales
Non. Il permet de détecter *certaines tentatives de transmission
anormale*. Pas toutes, ce serait trop simple (donc s'il en reste,
pourquoi se fatiguer vu qu'il FAUDRA une AUTRE protection).
pourquoi se fatiguer vu qu'il FAUDRA une AUTRE protection
et pas une tentative de CSRF.
http://shiflett.org/articles/security-corner-dec2004
Oui et ? A part rajouter un token en plus du session_id (et puis
pourquoi pas un token2 et un token3, des fois qu'on ait deviné le
premier puis le second) qu'est-ce que cet article indique ?
<CITE>
[le code qui est envoyé par l'image]
Every user that visits this page sends a request to example.org just as
if the user clicked a link to the same URL. Because the sample
application uses $_REQUEST instead of the more specific $_POST, it
cannot distinguish between data sent in the URL from data provided in
the proper HTML form.
</CITE>
BFD ! (big furry deal). C'est surtout parce qu'on ne vérifie pas que
cette requête est valide (i.e. cette personne a le droit de l'exécuter)
que le risque est là.
<CITE>
POST requests can also be forged, so do not consider a strict use of
$_POST to be sufficient protection.
</CITE>
Donc C.S. fait partie des gens qui considèrent que tout ce qui permet de
mettre des batons dans les roues à l'attaquant est bon à prendre, quel
que soit le coût en maintenance et complexification du code (dont il ne
parle pas d'ailleurs).
Moi je considère que quand ça m'oblige à modifier
mon code toutes les 5 minutes parce qu'on golio (cf plus bas) change
d'avis comme de chemise et qu'en plus la "protection" se contourne en 3
secondes, ça ne vaut pas le coup de s'emmerder.
De plus je ne vois pas l'intérêt de changer des requêtes GET en POST,
l'utilisation de chacune des méthodes étant bien différenciée.
Nous sommes tout à fait d'accord : strictement aucun !! Mais va dire ça
à la @#*! d'agence graphiste qui te fournit 15 versions de la même page
en 3 semaines avec un coup l'un, un coup l'autre, et la troisième fois
du JS qui transforme le clic sur une image en POST...
Utiliser $_POST au lieu de $_REQUEST permet de s'assurer que les données
sont transmises dans des circonstances normales et pas une tentative de
CSRF.
http://shiflett.org/articles/security-corner-dec2004
Non, ça ne permet pas de s'en « assurer ».
Si, car un CSRF ne peut se faire que par la méthode GET et que les
données devraient être faites en POST puisque c'est une action d'envoi
de données.
Utiliser $_POST au lieu de $_REQUEST permet de s'assurer que les données
sont transmises dans des circonstances normales et pas une tentative de
CSRF.
http://shiflett.org/articles/security-corner-dec2004
Non, ça ne permet pas de s'en « assurer ».
Si, car un CSRF ne peut se faire que par la méthode GET et que les
données devraient être faites en POST puisque c'est une action d'envoi
de données.
Utiliser $_POST au lieu de $_REQUEST permet de s'assurer que les données
sont transmises dans des circonstances normales et pas une tentative de
CSRF.
http://shiflett.org/articles/security-corner-dec2004
Non, ça ne permet pas de s'en « assurer ».
Si, car un CSRF ne peut se faire que par la méthode GET et que les
données devraient être faites en POST puisque c'est une action d'envoi
de données.
Tu reprochais à John Gallet de couper une partie de ta réponse, mais je
peux te faire le même reproche. J'avais complété ma remarque de :
<cit.>
Si tu peux modifier le code HTML pour y mettre une image, tu peux tout
aussi bien y mettre un formulaire avec tous les champs cachés, et validé
en JavaScript.
</cit.>
En gros, à tous les endroits où tu peux faire un CSRF en GET au moyen
d'une image, tu peux tout aussi facilement faire un CSRF en POST au
moyen de JavaScript. Tu pourrais m'objecter que tout le monde n'a pas
JavaScript, mais la proportion est quand même suffisamment forte.
Tu reprochais à John Gallet de couper une partie de ta réponse, mais je
peux te faire le même reproche. J'avais complété ma remarque de :
<cit.>
Si tu peux modifier le code HTML pour y mettre une image, tu peux tout
aussi bien y mettre un formulaire avec tous les champs cachés, et validé
en JavaScript.
</cit.>
En gros, à tous les endroits où tu peux faire un CSRF en GET au moyen
d'une image, tu peux tout aussi facilement faire un CSRF en POST au
moyen de JavaScript. Tu pourrais m'objecter que tout le monde n'a pas
JavaScript, mais la proportion est quand même suffisamment forte.
Tu reprochais à John Gallet de couper une partie de ta réponse, mais je
peux te faire le même reproche. J'avais complété ma remarque de :
<cit.>
Si tu peux modifier le code HTML pour y mettre une image, tu peux tout
aussi bien y mettre un formulaire avec tous les champs cachés, et validé
en JavaScript.
</cit.>
En gros, à tous les endroits où tu peux faire un CSRF en GET au moyen
d'une image, tu peux tout aussi facilement faire un CSRF en POST au
moyen de JavaScript. Tu pourrais m'objecter que tout le monde n'a pas
JavaScript, mais la proportion est quand même suffisamment forte.
En gros, à tous les endroits où tu peux faire un CSRF en GET au moyen
d'une image, tu peux tout aussi facilement faire un CSRF en POST au
moyen de JavaScript. Tu pourrais m'objecter que tout le monde n'a pas
JavaScript, mais la proportion est quand même suffisamment forte.
Personne ne parle de modifier le code HTML pour y mettre une image, les
CSRF sont des attaques à partir de sites autres que les sites visés ou à
partir d'email.
Les restrictions de Javascript ne permettent pas d'invoquer un élément
qui ne se trouve pas sur le même domaine, je ne vois donc pas trop
comment ce serait possible.
Pour faire un CSRF, il faut pouvoir contacter un autre domaine à l'insu
de l'utilisateur.
En gros, à tous les endroits où tu peux faire un CSRF en GET au moyen
d'une image, tu peux tout aussi facilement faire un CSRF en POST au
moyen de JavaScript. Tu pourrais m'objecter que tout le monde n'a pas
JavaScript, mais la proportion est quand même suffisamment forte.
Personne ne parle de modifier le code HTML pour y mettre une image, les
CSRF sont des attaques à partir de sites autres que les sites visés ou à
partir d'email.
Les restrictions de Javascript ne permettent pas d'invoquer un élément
qui ne se trouve pas sur le même domaine, je ne vois donc pas trop
comment ce serait possible.
Pour faire un CSRF, il faut pouvoir contacter un autre domaine à l'insu
de l'utilisateur.
En gros, à tous les endroits où tu peux faire un CSRF en GET au moyen
d'une image, tu peux tout aussi facilement faire un CSRF en POST au
moyen de JavaScript. Tu pourrais m'objecter que tout le monde n'a pas
JavaScript, mais la proportion est quand même suffisamment forte.
Personne ne parle de modifier le code HTML pour y mettre une image, les
CSRF sont des attaques à partir de sites autres que les sites visés ou à
partir d'email.
Les restrictions de Javascript ne permettent pas d'invoquer un élément
qui ne se trouve pas sur le même domaine, je ne vois donc pas trop
comment ce serait possible.
Pour faire un CSRF, il faut pouvoir contacter un autre domaine à l'insu
de l'utilisateur.
Utiliser $_POST au lieu de $_REQUEST permet de s'assurer que les données
sont transmises dans des circonstances normales et pas une tentative de
CSRF.
http://shiflett.org/articles/security-corner-dec2004
Utiliser $_POST au lieu de $_REQUEST permet de s'assurer que les données
sont transmises dans des circonstances normales et pas une tentative de
CSRF.
http://shiflett.org/articles/security-corner-dec2004
Utiliser $_POST au lieu de $_REQUEST permet de s'assurer que les données
sont transmises dans des circonstances normales et pas une tentative de
CSRF.
http://shiflett.org/articles/security-corner-dec2004
Bon, peu importe les mots employés : si un code HTML peut contenir un
<img src="xxx?var=truc"> où xxx est la ressource à attaquer, il peut
aussi bien contenir :
<form action="xxx" method="post" id="le-formulaire">
<input type="hidden" name="var" value="truc">
...
</form>
N'est-ce pas ?
Et il peut aussi contenir un code JavaScript qui fait un
getElementById("le-formulaire") et qui déclenche le submit,
n'est-ce pas ?
En quoi est-ce si difficile ?
Bon, peu importe les mots employés : si un code HTML peut contenir un
<img src="xxx?var=truc"> où xxx est la ressource à attaquer, il peut
aussi bien contenir :
<form action="xxx" method="post" id="le-formulaire">
<input type="hidden" name="var" value="truc">
...
</form>
N'est-ce pas ?
Et il peut aussi contenir un code JavaScript qui fait un
getElementById("le-formulaire") et qui déclenche le submit,
n'est-ce pas ?
En quoi est-ce si difficile ?
Bon, peu importe les mots employés : si un code HTML peut contenir un
<img src="xxx?var=truc"> où xxx est la ressource à attaquer, il peut
aussi bien contenir :
<form action="xxx" method="post" id="le-formulaire">
<input type="hidden" name="var" value="truc">
...
</form>
N'est-ce pas ?
Et il peut aussi contenir un code JavaScript qui fait un
getElementById("le-formulaire") et qui déclenche le submit,
n'est-ce pas ?
En quoi est-ce si difficile ?
Utiliser $_POST au lieu de $_REQUEST permet de s'assurer que les données
sont transmises dans des circonstances normales et pas une tentative de
CSRF.
http://shiflett.org/articles/security-corner-dec2004
Vous citez bizarrement. Voici ce que dit l'article:
There are a few steps you can take to mitigate the risk of CSRF attacks.
Minor steps include using POST rather than GET in HTML forms that perform
actions, using $_POST instead of $_REQUEST
Puis plus loin sont citées les vraies bonnes solutions (avec le token,
mais on peut penser à bien d'autres choses encore).
Donc l'article que vous utilisez ne va pas du tout dans votre sens.
Utiliser $_POST à la place de $_REQUEST c'est le genre de sécurité
saupoudrée en fin de projet, de la poudre de perlinpinpin qui ne résout
rien...
Utiliser $_POST au lieu de $_REQUEST permet de s'assurer que les données
sont transmises dans des circonstances normales et pas une tentative de
CSRF.
http://shiflett.org/articles/security-corner-dec2004
Vous citez bizarrement. Voici ce que dit l'article:
There are a few steps you can take to mitigate the risk of CSRF attacks.
Minor steps include using POST rather than GET in HTML forms that perform
actions, using $_POST instead of $_REQUEST
Puis plus loin sont citées les vraies bonnes solutions (avec le token,
mais on peut penser à bien d'autres choses encore).
Donc l'article que vous utilisez ne va pas du tout dans votre sens.
Utiliser $_POST à la place de $_REQUEST c'est le genre de sécurité
saupoudrée en fin de projet, de la poudre de perlinpinpin qui ne résout
rien...
Utiliser $_POST au lieu de $_REQUEST permet de s'assurer que les données
sont transmises dans des circonstances normales et pas une tentative de
CSRF.
http://shiflett.org/articles/security-corner-dec2004
Vous citez bizarrement. Voici ce que dit l'article:
There are a few steps you can take to mitigate the risk of CSRF attacks.
Minor steps include using POST rather than GET in HTML forms that perform
actions, using $_POST instead of $_REQUEST
Puis plus loin sont citées les vraies bonnes solutions (avec le token,
mais on peut penser à bien d'autres choses encore).
Donc l'article que vous utilisez ne va pas du tout dans votre sens.
Utiliser $_POST à la place de $_REQUEST c'est le genre de sécurité
saupoudrée en fin de projet, de la poudre de perlinpinpin qui ne résout
rien...
Heureusement que vous coupez ma phrase pour dénaturer mon propos.
Eh, ho, on n'est pas sur fufe ici hein. Si j'ai coupé la phrase ici
Je spécifie bien qu'il permet de "s'assurer de la transmission dans des
circonstances normales face aux CSRF" pas qu'il n'y a pas tentative de
piratage.
Et bien je ne vois pas pourquoi dans le cas spécifique de cette attaque,
L'utilisation de $_REQUEST accroit les risques de manière totalement
inutile.
La vérification de la méthode de transmission ne sert à rien.
C'est encore une des belles inventions des développeurs PHP
Je crois que ce n'est pas spécifique à PHP.
Qui parle de se fatiguer, il suffit de savoir comment on doit récupérer
les données.
Sur chaque interface publique du site.
Pourquoi se fatiguer à utiliser $_REQUEST, $_GET ou $_POST d'ailleurs
quand on peut mettre en register_global à on ?
C'est une excellente question à laquelle j'ai une réponse toute prête et
Pourquoi se fatiguer à vouloir utiliser des fonctions d'échappement
alors qu'il suffit de régler en magic_quotes_gpc à on ?
Je ne vois pas le rapport avec le reste ? Mais je citerai aussi le gars
C'est bien la flemme de certains développeurs qui a amené aux deux
aberrations précédentes.
On est bien d'accord.
Relisez l'article, je crois que vous n'avez pas bien compris le principe
ni des CSRF ni de l'utilisation du token dans ce cas précis.
C'est **tout à fait possible**. Mais je pense qu'alors je ne suis pas le
Vous montrer là une bien mauvaise connaissance des CSRF. L'envoi des
données et bel et bien valide et les droits de la personne aussi ( id,
de session, cookie etc ... ) puisque la requête est envoyée par la bonne
personne avec les bons droits et c'est le but de la méthode.
Alors dans ce cas, ce n'est pas de rajouter un token qui changera quoi
<CITE>
POST requests can also be forged, so do not consider a strict use of
$_POST to be sufficient protection.
</CITE>
Jamais dit le contraire.
Toutes les méthodes de protection sur le web sont contournables en moins
de 3 secondes,
Un id_session aléatoire de 40 chars de long non stocké dans un cookie ça
Je suppose que vous n'en
êtes quand même plus à coder vos formulaires à partir de zéro à chaque
fois mais que vous avez des libs qui vous permettent des les générer et
d'en valider les entrées.
Mauvaise supposition, changer de supposition. Quand on arrive chez un
Il suffit de travailler avec des gens qui connaissent leur boulot ( qui
n'utilisent pas GET pour valider des formulaires, qui respectent un
minimum les standards d'accessibilité etc ...) Il y a assez de monde sur
le marché pour ne pas s'encombrer des boulets de ce genre.
Utiliser GET pour envoyer un formulaire ou pour faire autre chose que de
demander un document est une violation du protocole HTTP.
Oui et ? D'ailleurs, puisque ce protocole est aussi bien fait que ça,
Il est marrant de voir comment vous défendez ce protocole dans certaines
circonstances ( cf le cas rabattu du header Location ) et de voir
comment ça ne vous dérange pas de la violer dans d'autres circonstances.
Heureusement que vous coupez ma phrase pour dénaturer mon propos.
Eh, ho, on n'est pas sur fufe ici hein. Si j'ai coupé la phrase ici
Je spécifie bien qu'il permet de "s'assurer de la transmission dans des
circonstances normales face aux CSRF" pas qu'il n'y a pas tentative de
piratage.
Et bien je ne vois pas pourquoi dans le cas spécifique de cette attaque,
L'utilisation de $_REQUEST accroit les risques de manière totalement
inutile.
La vérification de la méthode de transmission ne sert à rien.
C'est encore une des belles inventions des développeurs PHP
Je crois que ce n'est pas spécifique à PHP.
Qui parle de se fatiguer, il suffit de savoir comment on doit récupérer
les données.
Sur chaque interface publique du site.
Pourquoi se fatiguer à utiliser $_REQUEST, $_GET ou $_POST d'ailleurs
quand on peut mettre en register_global à on ?
C'est une excellente question à laquelle j'ai une réponse toute prête et
Pourquoi se fatiguer à vouloir utiliser des fonctions d'échappement
alors qu'il suffit de régler en magic_quotes_gpc à on ?
Je ne vois pas le rapport avec le reste ? Mais je citerai aussi le gars
C'est bien la flemme de certains développeurs qui a amené aux deux
aberrations précédentes.
On est bien d'accord.
Relisez l'article, je crois que vous n'avez pas bien compris le principe
ni des CSRF ni de l'utilisation du token dans ce cas précis.
C'est **tout à fait possible**. Mais je pense qu'alors je ne suis pas le
Vous montrer là une bien mauvaise connaissance des CSRF. L'envoi des
données et bel et bien valide et les droits de la personne aussi ( id,
de session, cookie etc ... ) puisque la requête est envoyée par la bonne
personne avec les bons droits et c'est le but de la méthode.
Alors dans ce cas, ce n'est pas de rajouter un token qui changera quoi
<CITE>
POST requests can also be forged, so do not consider a strict use of
$_POST to be sufficient protection.
</CITE>
Jamais dit le contraire.
Toutes les méthodes de protection sur le web sont contournables en moins
de 3 secondes,
Un id_session aléatoire de 40 chars de long non stocké dans un cookie ça
Je suppose que vous n'en
êtes quand même plus à coder vos formulaires à partir de zéro à chaque
fois mais que vous avez des libs qui vous permettent des les générer et
d'en valider les entrées.
Mauvaise supposition, changer de supposition. Quand on arrive chez un
Il suffit de travailler avec des gens qui connaissent leur boulot ( qui
n'utilisent pas GET pour valider des formulaires, qui respectent un
minimum les standards d'accessibilité etc ...) Il y a assez de monde sur
le marché pour ne pas s'encombrer des boulets de ce genre.
Utiliser GET pour envoyer un formulaire ou pour faire autre chose que de
demander un document est une violation du protocole HTTP.
Oui et ? D'ailleurs, puisque ce protocole est aussi bien fait que ça,
Il est marrant de voir comment vous défendez ce protocole dans certaines
circonstances ( cf le cas rabattu du header Location ) et de voir
comment ça ne vous dérange pas de la violer dans d'autres circonstances.
Heureusement que vous coupez ma phrase pour dénaturer mon propos.
Eh, ho, on n'est pas sur fufe ici hein. Si j'ai coupé la phrase ici
Je spécifie bien qu'il permet de "s'assurer de la transmission dans des
circonstances normales face aux CSRF" pas qu'il n'y a pas tentative de
piratage.
Et bien je ne vois pas pourquoi dans le cas spécifique de cette attaque,
L'utilisation de $_REQUEST accroit les risques de manière totalement
inutile.
La vérification de la méthode de transmission ne sert à rien.
C'est encore une des belles inventions des développeurs PHP
Je crois que ce n'est pas spécifique à PHP.
Qui parle de se fatiguer, il suffit de savoir comment on doit récupérer
les données.
Sur chaque interface publique du site.
Pourquoi se fatiguer à utiliser $_REQUEST, $_GET ou $_POST d'ailleurs
quand on peut mettre en register_global à on ?
C'est une excellente question à laquelle j'ai une réponse toute prête et
Pourquoi se fatiguer à vouloir utiliser des fonctions d'échappement
alors qu'il suffit de régler en magic_quotes_gpc à on ?
Je ne vois pas le rapport avec le reste ? Mais je citerai aussi le gars
C'est bien la flemme de certains développeurs qui a amené aux deux
aberrations précédentes.
On est bien d'accord.
Relisez l'article, je crois que vous n'avez pas bien compris le principe
ni des CSRF ni de l'utilisation du token dans ce cas précis.
C'est **tout à fait possible**. Mais je pense qu'alors je ne suis pas le
Vous montrer là une bien mauvaise connaissance des CSRF. L'envoi des
données et bel et bien valide et les droits de la personne aussi ( id,
de session, cookie etc ... ) puisque la requête est envoyée par la bonne
personne avec les bons droits et c'est le but de la méthode.
Alors dans ce cas, ce n'est pas de rajouter un token qui changera quoi
<CITE>
POST requests can also be forged, so do not consider a strict use of
$_POST to be sufficient protection.
</CITE>
Jamais dit le contraire.
Toutes les méthodes de protection sur le web sont contournables en moins
de 3 secondes,
Un id_session aléatoire de 40 chars de long non stocké dans un cookie ça
Je suppose que vous n'en
êtes quand même plus à coder vos formulaires à partir de zéro à chaque
fois mais que vous avez des libs qui vous permettent des les générer et
d'en valider les entrées.
Mauvaise supposition, changer de supposition. Quand on arrive chez un
Il suffit de travailler avec des gens qui connaissent leur boulot ( qui
n'utilisent pas GET pour valider des formulaires, qui respectent un
minimum les standards d'accessibilité etc ...) Il y a assez de monde sur
le marché pour ne pas s'encombrer des boulets de ce genre.
Utiliser GET pour envoyer un formulaire ou pour faire autre chose que de
demander un document est une violation du protocole HTTP.
Oui et ? D'ailleurs, puisque ce protocole est aussi bien fait que ça,
Il est marrant de voir comment vous défendez ce protocole dans certaines
circonstances ( cf le cas rabattu du header Location ) et de voir
comment ça ne vous dérange pas de la violer dans d'autres circonstances.
2) il faut que javascript puisse être invoqué, ce qui est rarement le
cas des lecteurs de mail ( vecteur principal des tentatives de CSRF ).
(je croyais qu'OE appliquait les mêmes paramètres qu'IE ? Enfin peu
Mais ma conclusion ne change pas, a quoi bon laisser une porte grande
ouverte à part vouloir attirer les script kiddies.
Etant donné qu'on ne peut pas se contenter de fermer la porte mais qu'il
Ce genre de protection est du même niveau que de cacher la signature du
serveur web, du serveur mail ou de PHP, facilement contournable mais
faisant parti des pré-requis.
A ceci près qu'ils sont totalement transparents pour le développeur.
En faisant la distinction entre les requêtes POST et GET, on sait déjà
que les variables ne doivent pas subir le même type de traitement, les
données fournies par POST étant par définition ( cf protocole HTTP ) des
données non sûres.
La douleur vous égare. ***Toutes*** les données venant du monde
Ca ne veut bien sûr pas dire qu'il ne faut pas
filtrer les données fournies par GET, mais que les filtes à appliquer
ne sont pas forcément les mêmes.
2) il faut que javascript puisse être invoqué, ce qui est rarement le
cas des lecteurs de mail ( vecteur principal des tentatives de CSRF ).
(je croyais qu'OE appliquait les mêmes paramètres qu'IE ? Enfin peu
Mais ma conclusion ne change pas, a quoi bon laisser une porte grande
ouverte à part vouloir attirer les script kiddies.
Etant donné qu'on ne peut pas se contenter de fermer la porte mais qu'il
Ce genre de protection est du même niveau que de cacher la signature du
serveur web, du serveur mail ou de PHP, facilement contournable mais
faisant parti des pré-requis.
A ceci près qu'ils sont totalement transparents pour le développeur.
En faisant la distinction entre les requêtes POST et GET, on sait déjà
que les variables ne doivent pas subir le même type de traitement, les
données fournies par POST étant par définition ( cf protocole HTTP ) des
données non sûres.
La douleur vous égare. ***Toutes*** les données venant du monde
Ca ne veut bien sûr pas dire qu'il ne faut pas
filtrer les données fournies par GET, mais que les filtes à appliquer
ne sont pas forcément les mêmes.
2) il faut que javascript puisse être invoqué, ce qui est rarement le
cas des lecteurs de mail ( vecteur principal des tentatives de CSRF ).
(je croyais qu'OE appliquait les mêmes paramètres qu'IE ? Enfin peu
Mais ma conclusion ne change pas, a quoi bon laisser une porte grande
ouverte à part vouloir attirer les script kiddies.
Etant donné qu'on ne peut pas se contenter de fermer la porte mais qu'il
Ce genre de protection est du même niveau que de cacher la signature du
serveur web, du serveur mail ou de PHP, facilement contournable mais
faisant parti des pré-requis.
A ceci près qu'ils sont totalement transparents pour le développeur.
En faisant la distinction entre les requêtes POST et GET, on sait déjà
que les variables ne doivent pas subir le même type de traitement, les
données fournies par POST étant par définition ( cf protocole HTTP ) des
données non sûres.
La douleur vous égare. ***Toutes*** les données venant du monde
Ca ne veut bien sûr pas dire qu'il ne faut pas
filtrer les données fournies par GET, mais que les filtes à appliquer
ne sont pas forcément les mêmes.
Je n'ai jamais dit que c'était la seule et unique solution pour s'en
prémunir, c'est juste une précaution de base.
Utiliser $_POST à la place de $_REQUEST c'est le genre de sécurité
saupoudrée en fin de projet, de la poudre de perlinpinpin qui ne
résout rien...
Je dirais que c'est plutôt le genre de chose que l'on doit faire en
début de projet,
La soumission d'un formulaire via POST est plus compliquée à faire à
l'insu de l'utilisateur que l'utilisation d'un web bug,
Je n'ai jamais dit que c'était la seule et unique solution pour s'en
prémunir, c'est juste une précaution de base.
Utiliser $_POST à la place de $_REQUEST c'est le genre de sécurité
saupoudrée en fin de projet, de la poudre de perlinpinpin qui ne
résout rien...
Je dirais que c'est plutôt le genre de chose que l'on doit faire en
début de projet,
La soumission d'un formulaire via POST est plus compliquée à faire à
l'insu de l'utilisateur que l'utilisation d'un web bug,
Je n'ai jamais dit que c'était la seule et unique solution pour s'en
prémunir, c'est juste une précaution de base.
Utiliser $_POST à la place de $_REQUEST c'est le genre de sécurité
saupoudrée en fin de projet, de la poudre de perlinpinpin qui ne
résout rien...
Je dirais que c'est plutôt le genre de chose que l'on doit faire en
début de projet,
La soumission d'un formulaire via POST est plus compliquée à faire à
l'insu de l'utilisateur que l'utilisation d'un web bug,