(1) 2 »


[ PHP ] Probleme de prog sur une RegEx (que je les hais !!!)
Ogre Baveur et Puant
Inscrit:
25/07/2003 15:26
De CORSICA
Post(s): 5837
Salut !!

Même sur PHP CS j'ai pas trouvé d'aide à ce sujet...
Si quelqu'un a la réponse à ca...
Je crois que j'ai trouvé une tite faille exploitable sur les regex en php sans le vouloir.

Tout part d'un probleme.
Sur un site j'ai un besoin, il faut que ce que l'utilisateur rentre dans le champs de son formulaire ne soit que Alphanumérique... pas d'accent, pas de caractere spéciaux que des chiffres et lettres simples soit
[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]
ou comme toute bonne regEx qui se respecte [a-zA-Z0-9]...

Oui mais voilà j'ai tenté plusieurs choses qui ne marchent pas :

$regx = "[[:punct:]]|[[:blank:]]|[[:space:]]|[[:cntrl:]]";
if(eregi($regx, $login))
{
    // C'est pas bon change de login
}


Ne marche pas

if(!preg_match('`^([[:alnum:]]+)$`', $login))
{
    // Pas bon change de login
}


Ne marche pas non plus

Pas plus que :
if (!preg_match('`^([a-z0-9]+)$`i', $login))
{
  // C'est pas bon
} 


Ni même :
if(!ctype_alnum($login))
{
    // Pas bon
}


Le probleme : ces expressions marchent toutes plus ou moins bien jusqu'à ce que je rentre le caractère & qui byzarrement passe tranquile alors qu'il ne devrait pas... Et une fois que j'ai rentré ce &, après lui je peux rentrer n'importe quel autre caractère qui ne passaient pas avant...

Pourquoi le & est-il laissé tranquile et permet d'insérer tout autre caractère non permis ?
Pourquoi si je mets un ereg("&") ca ne marche pas ??
Edit: je l'ai pas ecrit comme ca le ereg hein ;) c'était juste pour dire que j'avais essayé d'interdir la chaine si yavait un & dedans.

Si vous avez une solution à ca, je vous bisoute le pied gauche !

@ plouche
Nx.

Contribution le : 01/01/2008 18:33
_________________
Blenderhead since 1998 !
Nicolas Alfonsi
Créer un fichier PDF de la contribution Imprimer


Re: [ PHP ] Probleme de prog sur une RegEx (que je les hais !!!)
OverdOzed
Inscrit:
04/08/2004 20:08
De l'Île de la Réunion
Post(s): 934
euh si tu fais ton test la dessus ca ne marche pas ?

$resultat = ereg("^[0-9A-Za-z]+$", $login);

Je suis pas très sure d'avoir compris ton problème, tu veux juste empecher lse caractères spéciaux c'est ca ?...

<edit>
un truc de ce genre ça marche pas non plus chez toi ?

if(ereg("^[0-9A-Za-z]+$", $login))
{
echo "bon";
}
else
{
echo "pas bon";
}

</edit>

Contribution le : 01/01/2008 18:55
_________________

Projet Clan
Créer un fichier PDF de la contribution Imprimer


Re: [ PHP ] Probleme de prog sur une RegEx (que je les hais !!!)
Ogre Baveur et Puant
Inscrit:
25/07/2003 15:26
De CORSICA
Post(s): 5837
Citation :

ToTof a écrit:
Je suis pas très sure d'avoir compris ton problème, tu veux juste empecher lse caractères spéciaux c'est ca ?...


Ui c'est bien ca

Citation :

euh si tu fais ton test la dessus ca ne marche pas ?

$resultat = ereg("^[0-9A-Za-z]+$", $login);


Comme j'ai dit, ca marche que si on ne rentre pas un &... Si on rentre un & ca ne marche plus... Enfin le comportement est byzarre.
Si je tape AZERTY ca passe, si je tape azertyè#:; ca passe pas... Si je tape AZERTY& ca marche, si je tape AZERTY&#;:,;, ca marche aussi... Mais si je place mes caractères spéciaux avant le & comme AZERTY#& ca passe pas...
J'ai l'impression que c'est le ereg, preg_match ou ctype_x qui ne marche que jusqu'au caractère & et ne prends plus en compte les autre caractères après lui... Faudrait que je vérifie si les antislashes sont mises après le & sinon ca ferait une grosse vulnérabilité aux injections...


EDIT :

Citation :

<edit>
un truc de ce genre ça marche pas non plus chez toi ?

if(ereg("^[0-9A-Za-z]+$", $login))
{
echo "bon";
}
else
{
echo "pas bon";
}

</edit>


Ben non ca marche pas... enfin ca marche bien jusqu'à ce que je mette un &...
Edit2 : et là avec cette syntaxe tu vérifies qu'il y a des caractères normaux dans la chaine mais tu n'empeche pas de glisser un caractère spécial au milieu...

@ plouche
Nx.

Contribution le : 01/01/2008 19:03
_________________
Blenderhead since 1998 !
Nicolas Alfonsi
Créer un fichier PDF de la contribution Imprimer


Re: [ PHP ] Probleme de prog sur une RegEx (que je les hais !!!)
OverdOzed
Inscrit:
04/08/2004 20:08
De l'Île de la Réunion
Post(s): 934
Citation :

WizardNx a écrit:

Si je tape AZERTY ca passe, si je tape azertyè#:; ca passe pas... Si je tape AZERTY& ca marche, si je tape AZERTY&#;:,;, ca marche aussi... Mais si je place mes caractères spéciaux avant le & comme AZERTY#& ca passe pas...


euh j'ai rentré toutes tes expressions... et il n'y a pas de problème chez moi


Citation :

Edit2 : et là avec cette syntaxe tu vérifies qu'il y a des caractères normaux dans la chaine mais tu n'empeche pas de glisser un caractère spécial au milieu...


La syntaxe j'ai juste pour me permettre de vérifier la sortie du "if"

Contribution le : 01/01/2008 19:18
_________________

Projet Clan
Créer un fichier PDF de la contribution Imprimer


Re: [ PHP ] Probleme de prog sur une RegEx (que je les hais !!!)
Ogre Baveur et Puant
Inscrit:
25/07/2003 15:26
De CORSICA
Post(s): 5837
tiens regarde là : http://www.icreativ.com/regex/

c'est plus parlant.

@plouche
Nx.

Contribution le : 01/01/2008 19:23
_________________
Blenderhead since 1998 !
Nicolas Alfonsi
Créer un fichier PDF de la contribution Imprimer


Re: [ PHP ] Probleme de prog sur une RegEx (que je les hais !!!)
OverdOzed
Inscrit:
04/08/2004 20:08
De l'Île de la Réunion
Post(s): 934
étrange j'ai testé ta vérification par php et ça marche chez moi :S

peut être un problème sur la récupération de la variable $login ? ... mes minces compétences s'arrêtent là.

Contribution le : 01/01/2008 19:56
_________________

Projet Clan
Créer un fichier PDF de la contribution Imprimer


Re: [ PHP ] Probleme de prog sur une RegEx (que je les hais !!!)
Ogre Baveur et Puant
Inscrit:
25/07/2003 15:26
De CORSICA
Post(s): 5837
Citation :

ToTof a écrit:
étrange j'ai testé ta vérification par php et ça marche chez moi :S

peut être un problème sur la récupération de la variable $login ? ... mes minces compétences s'arrêtent là.


Ca vient peut-etre de l'Ajax en fait lors du passage des arguments...
Faudrait que je teste en full php pour voir...

Edit: ou ptet un probleme de version (en théorie la fonction est la même depuis php 4.0.4)... T'as quelle version ? moi j'use pas la 5...

@ plouche
Nx enfonceur de backdoors ouvertes...

Contribution le : 01/01/2008 20:07
_________________
Blenderhead since 1998 !
Nicolas Alfonsi
Créer un fichier PDF de la contribution Imprimer


Re: [ PHP ] Probleme de prog sur une RegEx (que je les hais !!!)
OverdOzed
Inscrit:
04/08/2004 20:08
De l'Île de la Réunion
Post(s): 934
ma version c'est la 5.2.3-1 ...

Citation :

Ca vient peut-etre de l'Ajax en fait lors du passage des arguments..


Très certainement ... seul en passant par du "full php" comme tu dis te confirmera cela !

Contribution le : 01/01/2008 20:13
_________________

Projet Clan
Créer un fichier PDF de la contribution Imprimer


Re: [ PHP ] Probleme de prog sur une RegEx (que je les hais !!!)
RegulatorZ
Inscrit:
23/05/2004 07:11
De Metz
Post(s): 11301
Methode un peu crado, mais qui peut fonctionner pour dépanner : avant ton eregi(), supprimes tous les "&" de la chaîne...

Contribution le : 01/01/2008 21:02
_________________
Portfolio
Créer un fichier PDF de la contribution Imprimer


Re: [ PHP ] Probleme de prog sur une RegEx (que je les hais !!!)
Ogre Baveur et Puant
Inscrit:
25/07/2003 15:26
De CORSICA
Post(s): 5837
Citation :

_tibo_ a écrit:
Methode un peu crado, mais qui peut fonctionner pour dépanner : avant ton eregi(), supprimes tous les "&" de la chaîne...


J'y avait pas pensé, pas con... Mais qui me dit qu'un str_replace trouvera le & quand un eregi ne le trouve pas ?
Ou alors faudrait le faire en js directos sur la page c'est encore moins propre ;)

Bah jverai en tout cas :)

Merci pour votre aide.

@ plouche
Nx.

Contribution le : 01/01/2008 21:24
_________________
Blenderhead since 1998 !
Nicolas Alfonsi
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant
(1) 2 »




Enregistrer votre réponse
Compte*
Nom   Mot de passe   Authentification
Message:*



[Recherche avancée]



Sujets récemment répondus
Forums Sujets Réponses Lus Dernières contributions
Hors Sujet !! Tuto de la baleine, le retours :D - en français - Blender 2.93    [1][2] 13 741 Hier 19:46:00
meltingman 
[WIP] et travaux terminés Autumn Fan art 4 111 Hier 19:25:20
meltingman 
Moteur de jeu GameBlender et alternatives J'ai créé un jeu en une semaine pour une gamejam ! 4 124 Hier 10:26:21
Bibi09 
Questions & Réponses 1080ti ne fonctionne qu'à 10% 3 79 Hier 10:23:09
Bibi09 
Questions & Réponses [résolu] Direction de l'éclairage du ViewPort    [1][2] 11 188 19/04 10:57:19
Horemheb 
Moteur de jeu GameBlender et alternatives [WIP] Un projet UE4 avec du Blender    [1][2][3]...[7] 67 28745 19/04 10:24:34
dynamique-zak 
Questions & Réponses Rapprocher les cheveux du crâne 0 48 19/04 08:26:07
Horemheb 
Hors Sujet !! les tutos de Moonboots    [1][2][3]...[7] 63 4208 18/04 16:00:18
moonboots 
Questions & Réponses Rotation de plusieurs objets comme un tout    [1][2] 10 136 18/04 14:49:26
moonboots 
Questions & Réponses Remplacer un objet par plusieurs autres    [1][2] 11 296 18/04 09:22:27
Horemheb 
Questions & Réponses Explosion via l'option 'locations' et 'limit location constraint' 1 121 18/04 09:16:40
Melodicpinpon 
Questions & Réponses double clic LMB vs. simple clic LMB 0 56 18/04 08:35:11
Melodicpinpon 
Moteur de jeu GameBlender et alternatives [WIP] Jeu "Collapsing - Quandore's Fate"    [1][2][3]...[5] 44 18722 16/04 22:36:54
timeman13 
Questions & Réponses Rigging occasionne des bugs avec automatic weight    [1][2] 10 483 16/04 20:59:50
Patrickletare 
Questions & Réponses Raccourcis valeurs numériques 4 119 15/04 17:35:41
kargall 
Questions & Réponses [résolu] Bug de visualisation 3D 5 161 14/04 13:00:37
Melodicpinpon 
Questions & Réponses Problème de réparation de maillage 1 118 14/04 07:59:49
Melodicpinpon 
Le coin des geeks Problème application android tablette 0 91 13/04 10:19:01
Redstar 
Questions & Réponses Configurer Blender pour plus de productivité (Version 2.5x)    [1][2][3] 28 45375 12/04 17:48:49
meltingman 
[WIP] et travaux terminés [résolu] Deplier une pièce 6 303 12/04 12:24:49
Redstar 

Qui est en ligne
73 utilisateur(s) en ligne (dont 44 sur Forums)

Membre(s): 0
Invité(s): 73


plus...
Nouveaux membres

Nemo
11/3/2021
qingjie 10/3/2021
Kask909 9/3/2021
marie-antoinette 7/3/2021
Bugs 7/3/2021
lolorogli75 4/3/2021
Flagiel 4/3/2021
thedeathclown 1/3/2021
Littlespoon 28/2/2021
luxperpetua 27/2/2021
Dernier Ajout
2020-09-24.jpg

Evènements à venir
Mai 18
Anniversaire Luneo
Jui 30
Anniv des Jedi :-D
Jui 10
BUG de Lyon
plus 256 plus d'élément(s)
 Par Mickaël Guédon [ebrain] © 2003-2021 The Blender Clan - hébergé par TuxFamily - Site déclaré à la CNIL sous le numéro 1155445