IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Sécurité Discussion :

Quel genre d'attaque peut faire ça


Sujet :

Sécurité

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2019
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2019
    Messages : 48
    Points : 38
    Points
    38
    Par défaut Quel genre d'attaque peut faire ça
    Bonjour à tous,

    J'ai détecté une vulnérabilité sur l'un de mes sites. C'est sur un formulaire de contact, j'ai reçu un message avec des caractères non autorisés. Le message n'est pas méchant, c'est un spam qui n'a pas causé de dégâts mais quand bien même.
    Il y a bien un htmlspecialchars + contrôle via une Regex, et pourtant le message est passé. Quand je fais le test manuellement avec ce même texte, l'envoi du formulaire est stoppé.

    Est-ce que vous avez déjà été confronté à ce problème et si oui, savez vous comment s'en protéger ?

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 939
    Points : 44 112
    Points
    44 112
    Par défaut
    Bonjour,
    les « vraies vérifications » sont à effectuées côté serveur, côté client c'est juste pour le confort de l'utilisateur pour éviter des allez-retours inutile.

    Que ce passe-t-il si JavaScript est désactivé ou le script trituré, le formulaire est envoyé !?!

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2019
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2019
    Messages : 48
    Points : 38
    Points
    38
    Par défaut
    Bonjour NoSmoking,

    Le formulaire est envoyé en Ajax. Les vérifications sont faites à la fois côté client (regex pour le gestion des erreurs claviers) et et du côté serveur avec PHP (htmlspecialchars + regex).


    Voilà ma regex côté PHP qui contrôle le message :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
         $re = '/^[a-zA-Z0-9@\sÀÉÈÇÙéàêçèûùôîïœ:\-,.?!\.;\'’«""»+=#%()\/]+$/mi';
                    if ( preg_match($re , $paragraphe) ) {
                        return true;
                    } else {
                        echo "<p class='error'>Erreur : le champs {$champ} ne respecte pas le format requis</p>";
                        die();
                    }
    Dans le message reçu sur ma boite mail il y a des crochets [], des Ü, des Ö, des chevrons < >

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 939
    Points : 44 112
    Points
    44 112
    Par défaut
    Dans le message reçu sur ma boite mail il y a des crochets [], des Ü, des Ö, des chevrons < >
    en quoi ces caractères te dérangent-ils dans du texte ?

    Hormis les chevrons htmlspecialchars ne les traite pas.
    Pour tes Ü et tes Ö, ta regExp ne les prend pas en compte.

  5. #5
    Nouveau membre du Club
    Femme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2019
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2019
    Messages : 48
    Points : 38
    Points
    38
    Par défaut
    Les Ü et Ö ne me dérangent pas, mais les chevrons si.
    Reste que le message n'aurait pas du passer puisque je ne les ai pas autorisé, et pourtant ils sont passés, d'où mon interrogation sur la faille que je ne comprend pas

  6. #6
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 939
    Points : 44 112
    Points
    44 112
    Par défaut
    mais les chevrons si.
    si ils sont passés par htmlspecialchars alors ils ressortent sous la forme &lt; et &gt; et ne sont pas plus gênant que cela mais il s'afficheront sous forme < et >.

    Si tu veux les supprimer purement et simplement alors ajoute les à ta regExp.


    Reste que le message n'aurait pas du passer puisque je ne les ai pas autorisé
    A quel niveau tu as placé l'interdiction ? Si c'est côté client il ne faut pas se surprendre cela peut-être une vrai passoire pour qui ouvre la console !

Discussions similaires

  1. quel etl peut faire ca : charger un pdf dans une colonne BLOB
    Par sulfurex dans le forum Alimentation
    Réponses: 0
    Dernier message: 09/04/2010, 11h01
  2. Quels outils logiciels utiliser pour faire son site ?
    Par tripper.dim dans le forum Outils
    Réponses: 36
    Dernier message: 22/05/2008, 19h39
  3. comment on peut faire un service avec builder c++
    Par infoactif dans le forum C++Builder
    Réponses: 8
    Dernier message: 11/08/2005, 18h33
  4. Qu'est ce qu'on peut faire avec un in ?
    Par elias dans le forum Langage SQL
    Réponses: 7
    Dernier message: 24/07/2005, 11h34
  5. Réponses: 3
    Dernier message: 02/07/2004, 14h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo