Que penser de !eregi("(<|'|").*(>|'|")",$string) comme script de détection d'injections ?
Je ne sais pas de quoi il s'agit, mais la chaîne de recherche "(<|'|").*(>|'|")" ne serait-elle pas équivalente à "[<'"].*[>'"]" ou à '[<'"].*[>'"]', plus lisibles ?
-- Olivier Miakinen Non, monsieur le juge, je vous le jure : jamais je n'ai cité Bruxelles dans ma signature.
Que penser de !eregi("(<|'|").*(>|'|")",$string) comme script de
détection d'injections ?
Je ne sais pas de quoi il s'agit, mais la chaîne de recherche
"(<|'|").*(>|'|")" ne serait-elle pas équivalente à
"[<'"].*[>'"]" ou à '[<'"].*[>'"]', plus lisibles ?
--
Olivier Miakinen
Non, monsieur le juge, je vous le jure : jamais je n'ai cité
Bruxelles dans ma signature.
Que penser de !eregi("(<|'|").*(>|'|")",$string) comme script de détection d'injections ?
Je ne sais pas de quoi il s'agit, mais la chaîne de recherche "(<|'|").*(>|'|")" ne serait-elle pas équivalente à "[<'"].*[>'"]" ou à '[<'"].*[>'"]', plus lisibles ?
-- Olivier Miakinen Non, monsieur le juge, je vous le jure : jamais je n'ai cité Bruxelles dans ma signature.
Vincent Lascaux
Que penser de !eregi("(<|'|").*(>|'|")",$string) comme script de détection d'injections ?
$string = htmlentities($string) ne te permettrait-il pas d'éviter toute forme d'injection proprement et simplement ?
-- Vincent
Que penser de !eregi("(<|'|").*(>|'|")",$string) comme script de
détection d'injections ?
$string = htmlentities($string) ne te permettrait-il pas d'éviter toute
forme d'injection proprement et simplement ?
Que penser de !eregi("(<|'|").*(>|'|")",$string) comme script de détection d'injections ?
$string = htmlentities($string) ne te permettrait-il pas d'éviter toute forme d'injection proprement et simplement ?
-- Vincent
N.K. Cole
Bonjour
php5.0.2 winxp
$str="Un 'apostrophe' en <b>gras</b>" htmlentities($str) donne Un 'apostrophe' en <b>gras</b> et devrait donner Un 'apostrophe' en <b>gras</b> selon la doc php.
Alors si les balises ne sont pas converties on a un danger réel potentiel .
"Vincent Lascaux" a écrit dans le message de news: 423a3f8b$0$20728$
Que penser de !eregi("(<|'|").*(>|'|")",$string) comme script de détection d'injections ?
$string = htmlentities($string) ne te permettrait-il pas d'éviter toute forme d'injection proprement et simplement ?
-- Vincent
Bonjour
php5.0.2 winxp
$str="Un 'apostrophe' en <b>gras</b>"
htmlentities($str) donne Un 'apostrophe' en <b>gras</b>
et devrait donner Un 'apostrophe' en <b>gras</b> selon la doc
php.
Alors si les balises ne sont pas converties on a un danger réel potentiel .
"Vincent Lascaux" <nospam@nospam.org> a écrit dans le message de news:
423a3f8b$0$20728$626a14ce@news.free.fr...
Que penser de !eregi("(<|'|").*(>|'|")",$string) comme script de
détection d'injections ?
$string = htmlentities($string) ne te permettrait-il pas d'éviter toute
forme d'injection proprement et simplement ?
$str="Un 'apostrophe' en <b>gras</b>" htmlentities($str) donne Un 'apostrophe' en <b>gras</b> et devrait donner Un 'apostrophe' en <b>gras</b> selon la doc php.
Alors si les balises ne sont pas converties on a un danger réel potentiel .
"Vincent Lascaux" a écrit dans le message de news: 423a3f8b$0$20728$
Que penser de !eregi("(<|'|").*(>|'|")",$string) comme script de détection d'injections ?
$string = htmlentities($string) ne te permettrait-il pas d'éviter toute forme d'injection proprement et simplement ?
-- Vincent
CrazyCat
N.K. Cole wrote:
$str="Un 'apostrophe' en <b>gras</b>" htmlentities($str) donne Un 'apostrophe' en <b>gras</b> et devrait donner Un 'apostrophe' en <b>gras</b> selon la doc php.
Donne à l'affichage? ou dans le code source de la page? Si c'est à l'affichage: c'est normal, tout va bien. Si c'est dans le code source, il y a effectivement un problème.
-- Découvrez Original War: http://www.original-war.org Humour: http://www.chatfou.com Tchattez en liberté: http://www.c-p-f.net
N.K. Cole wrote:
$str="Un 'apostrophe' en <b>gras</b>"
htmlentities($str) donne Un 'apostrophe' en <b>gras</b>
et devrait donner Un 'apostrophe' en <b>gras</b> selon la doc
php.
Donne à l'affichage?
ou dans le code source de la page?
Si c'est à l'affichage: c'est normal, tout va bien.
Si c'est dans le code source, il y a effectivement un problème.
--
Découvrez Original War: http://www.original-war.org
Humour: http://www.chatfou.com
Tchattez en liberté: http://www.c-p-f.net
$str="Un 'apostrophe' en <b>gras</b>" htmlentities($str) donne Un 'apostrophe' en <b>gras</b> et devrait donner Un 'apostrophe' en <b>gras</b> selon la doc php.
Donne à l'affichage? ou dans le code source de la page? Si c'est à l'affichage: c'est normal, tout va bien. Si c'est dans le code source, il y a effectivement un problème.
-- Découvrez Original War: http://www.original-war.org Humour: http://www.chatfou.com Tchattez en liberté: http://www.c-p-f.net
Cleo
"Vincent Lascaux" a écrit dans le message de news: 423a3f8b$0$20728$
Que penser de !eregi("(<|'|").*(>|'|")",$string) comme script de détection d'injections ?
$string à été saisi par l'utilisateur (ton client), en vertue de quel principe te permets tu d'en modifier le contenu ?
La solution proposée par vincent est incontournable ... bien sûr on peut toujours réinventer les fonctions htmlentities ou htmlspecialchars ...
bref. -- Cléo.
"Vincent Lascaux" <nospam@nospam.org> a écrit dans le message de news:
423a3f8b$0$20728$626a14ce@news.free.fr...
Que penser de !eregi("(<|'|").*(>|'|")",$string) comme script de
détection d'injections ?
$string à été saisi par l'utilisateur (ton client), en vertue de quel
principe te permets tu d'en modifier le contenu ?
La solution proposée par vincent est incontournable ... bien sûr on peut
toujours réinventer les fonctions htmlentities ou htmlspecialchars ...
"Vincent Lascaux" a écrit dans le message de news: 423a3f8b$0$20728$
Que penser de !eregi("(<|'|").*(>|'|")",$string) comme script de détection d'injections ?
$string à été saisi par l'utilisateur (ton client), en vertue de quel principe te permets tu d'en modifier le contenu ?
La solution proposée par vincent est incontournable ... bien sûr on peut toujours réinventer les fonctions htmlentities ou htmlspecialchars ...
bref. -- Cléo.
Vincent Lascaux
$str="Un 'apostrophe' en <b>gras</b>" htmlentities($str) donne Un 'apostrophe' en <b>gras</b> et devrait donner Un 'apostrophe' en <b>gras</b> selon la doc php.
Donne à l'affichage? ou dans le code source de la page? Si c'est à l'affichage: c'est normal, tout va bien.
Pourquoi est ce qu'un serait ajouté avant les apostrophes à l'affichage ?
-- Vincent
$str="Un 'apostrophe' en <b>gras</b>"
htmlentities($str) donne Un 'apostrophe' en <b>gras</b>
et devrait donner Un 'apostrophe' en <b>gras</b> selon la
doc
php.
Donne à l'affichage?
ou dans le code source de la page?
Si c'est à l'affichage: c'est normal, tout va bien.
Pourquoi est ce qu'un serait ajouté avant les apostrophes à l'affichage ?
$str="Un 'apostrophe' en <b>gras</b>" htmlentities($str) donne Un 'apostrophe' en <b>gras</b> et devrait donner Un 'apostrophe' en <b>gras</b> selon la doc php.
Donne à l'affichage? ou dans le code source de la page? Si c'est à l'affichage: c'est normal, tout va bien.
Pourquoi est ce qu'un serait ajouté avant les apostrophes à l'affichage ?
-- Vincent
Sebastian 'CrashandDie' Lauwers
Vincent Lascaux wrote:
Pourquoi est ce qu'un serait ajouté avant les apostrophes à l'affichage ?
Sûrement qu'il l'a soumis à PHP en $_POST ou $_GET, et que les magic quotes sont activés.
S.
Vincent Lascaux wrote:
Pourquoi est ce qu'un serait ajouté avant les apostrophes à l'affichage ?
Sûrement qu'il l'a soumis à PHP en $_POST ou $_GET, et que les magic
quotes sont activés.
Pourquoi est ce qu'un serait ajouté avant les apostrophes à l'affichage ?
Sûrement qu'il l'a soumis à PHP en $_POST ou $_GET, et que les magic quotes sont activés.
S.
N.K. Cole
<form action=""> <input size@ name="str"> <input type=submit> </form> <?= htmlentities($str); ?> ----> affiche Un 'apostrophe' en <b>gras</b>
si quelqu'un écrit <$b> au lieu de <b> et que ce $b soit un script malin, ca ne risque pas de causer des pb ??
htmlentities($str) donne Un 'apostrophe' en <b>gras</b> et devrait donner Un 'apostrophe' en <b>gras</b> selon la doc
php.
Donne à l'affichage? ou dans le code source de la page? Si c'est à l'affichage: c'est normal, tout va bien. Si c'est dans le code source, il y a effectivement un problème.
<form action="">
<input size@ name="str">
<input type=submit>
</form>
<?= htmlentities($str); ?> ----> affiche Un 'apostrophe' en
<b>gras</b>
si quelqu'un écrit <$b> au lieu de <b> et que ce $b soit un script malin, ca
ne risque pas de causer des pb ??
htmlentities($str) donne Un 'apostrophe' en <b>gras</b>
et devrait donner Un 'apostrophe' en <b>gras</b> selon la
doc
php.
Donne à l'affichage?
ou dans le code source de la page?
Si c'est à l'affichage: c'est normal, tout va bien.
Si c'est dans le code source, il y a effectivement un problème.
<form action=""> <input size@ name="str"> <input type=submit> </form> <?= htmlentities($str); ?> ----> affiche Un 'apostrophe' en <b>gras</b>
si quelqu'un écrit <$b> au lieu de <b> et que ce $b soit un script malin, ca ne risque pas de causer des pb ??
htmlentities($str) donne Un 'apostrophe' en <b>gras</b> et devrait donner Un 'apostrophe' en <b>gras</b> selon la doc
php.
Donne à l'affichage? ou dans le code source de la page? Si c'est à l'affichage: c'est normal, tout va bien. Si c'est dans le code source, il y a effectivement un problème.
Sebastian 'CrashandDie' Lauwers
N.K. Cole wrote:
Au lieu d'utiliser un <form>, et qui fausse les résultats si on ne comprend pas les bases tels les magic quotes ou autres, utilisez le script suivant:
<?php
$var = "une p'tite chaine quelconque qui n'a pas de <b>réelle</b> importance";
$var = htmlentities ($var);
echo $var;
?>
N'oubliez pas de regarder la source et l'affichage, c'est deux choses totalement différentes...
si quelqu'un écrit <$b> au lieu de <b> et que ce $b soit un script malin, ca ne risque pas de causer des pb ??
J'ai pas compris... Comment $b peut-il être un script malicieux? Il existe une grande différence entre la sécurisation des variables d'entrées, et les regexp utilisées pour permettre l'utilisation de code html dans ses formulaires, dans les deux cas, votre remarque n'a pas de sens.
AMHA
Mes 2 centimes
S.
N.K. Cole wrote:
Au lieu d'utiliser un <form>, et qui fausse les résultats si on ne
comprend pas les bases tels les magic quotes ou autres, utilisez le
script suivant:
<?php
$var = "une p'tite chaine quelconque qui n'a pas de <b>réelle</b>
importance";
$var = htmlentities ($var);
echo $var;
?>
N'oubliez pas de regarder la source et l'affichage, c'est deux choses
totalement différentes...
si quelqu'un écrit <$b> au lieu de <b> et que ce $b soit un script malin, ca
ne risque pas de causer des pb ??
J'ai pas compris... Comment $b peut-il être un script malicieux? Il
existe une grande différence entre la sécurisation des variables
d'entrées, et les regexp utilisées pour permettre l'utilisation de code
html dans ses formulaires, dans les deux cas, votre remarque n'a pas de
sens.
Au lieu d'utiliser un <form>, et qui fausse les résultats si on ne comprend pas les bases tels les magic quotes ou autres, utilisez le script suivant:
<?php
$var = "une p'tite chaine quelconque qui n'a pas de <b>réelle</b> importance";
$var = htmlentities ($var);
echo $var;
?>
N'oubliez pas de regarder la source et l'affichage, c'est deux choses totalement différentes...
si quelqu'un écrit <$b> au lieu de <b> et que ce $b soit un script malin, ca ne risque pas de causer des pb ??
J'ai pas compris... Comment $b peut-il être un script malicieux? Il existe une grande différence entre la sécurisation des variables d'entrées, et les regexp utilisées pour permettre l'utilisation de code html dans ses formulaires, dans les deux cas, votre remarque n'a pas de sens.
AMHA
Mes 2 centimes
S.
Vincent Lascaux
<form action=""> <input size@ name="str"> <input type=submit> </form> <?= htmlentities($str); ?> ----> affiche Un 'apostrophe' en <b>gras</b>
si quelqu'un écrit <$b> au lieu de <b> et que ce $b soit un script malin, ca ne risque pas de causer des pb ??
Non : PHP ne remplace le contenu des variable dans une chaine de caractère uniquement si elles sont explicitement écrites entre guillemets doubles. Par exemple $foo = 'bar'; echo "Foo $foo"; affichera Foo bar et $foo = '$bar'; echo "Foo $foo" affichera bien Foo $bar (même si $bar est une variable qui existe) : l'interpreteur voit $foo dans une chaine avec des guillemets double, il remplace par la valeur et s'arrête là.
-- Vincent
<form action="">
<input size@ name="str">
<input type=submit>
</form>
<?= htmlentities($str); ?> ----> affiche Un 'apostrophe' en
<b>gras</b>
si quelqu'un écrit <$b> au lieu de <b> et que ce $b soit un script malin,
ca
ne risque pas de causer des pb ??
Non : PHP ne remplace le contenu des variable dans une chaine de caractère
uniquement si elles sont explicitement écrites entre guillemets doubles.
Par exemple $foo = 'bar'; echo "Foo $foo"; affichera Foo bar
et $foo = '$bar'; echo "Foo $foo" affichera bien Foo $bar (même si $bar est
une variable qui existe) : l'interpreteur voit $foo dans une chaine avec des
guillemets double, il remplace par la valeur et s'arrête là.
<form action=""> <input size@ name="str"> <input type=submit> </form> <?= htmlentities($str); ?> ----> affiche Un 'apostrophe' en <b>gras</b>
si quelqu'un écrit <$b> au lieu de <b> et que ce $b soit un script malin, ca ne risque pas de causer des pb ??
Non : PHP ne remplace le contenu des variable dans une chaine de caractère uniquement si elles sont explicitement écrites entre guillemets doubles. Par exemple $foo = 'bar'; echo "Foo $foo"; affichera Foo bar et $foo = '$bar'; echo "Foo $foo" affichera bien Foo $bar (même si $bar est une variable qui existe) : l'interpreteur voit $foo dans une chaine avec des guillemets double, il remplace par la valeur et s'arrête là.