Partage
  • Partager sur Facebook
  • Partager sur Twitter

Verification mot de passe par AJAX = danger ???

    13 janvier 2019 à 23:08:38

    Bonsoir,

    Je me pose cette question car j'ai mis en place une zone de modification de profil, et donc pour valider les modifications apportées, il faut entrer sont mot de passe. Celui-ci est bien-sur vérifié côté serveur mais si jamais il est erroné, la page est rechargée et les modifications sont perdues.

    Donc je me suis dis, un petit coup d'AJAX pour vérifier ce mdp avant l'envoi et le tour est joué. Je suis novice et j'ai un peu de mal à comprendre comment on peut récupérer les valeurs envoyé par POST mais j'ai cru comprendre que c'était dangereux d'envoyer en clair un mot de passe par cette méthode.

    Il me faudrait donc le hasher en js avant l'envoi, mais il faut que côté php le hash soit reconnu pour la comparaison (sachant que j'utilise la fonction password_hash() en php).

    Bref... je bloque.

    Si quelqu'un peut m'éclairer, ce serait bien sympa :)

    -
    Edité par Scueto 13 janvier 2019 à 23:09:16

    • Partager sur Facebook
    • Partager sur Twitter
      14 janvier 2019 à 0:12:20

      Normalement si tu atteins le stade où tu es sur une page de modification d'un profil, tu as déjà authentifié l'utilisateur. Tu ne devrais pas avoir à envoyer le mdp tout court, la session devrait suffire pour s'en assurer.

      Au moment de la connexion, le mdp pourrait passer en clair donc => HTTPS. Pas d'autre solution.

      Hasher coté client n'a aucun intérêt car il suffirait d'ouvrir les outils dev de son navigateur pour lire quelle fonction de hash tu appliques... Si cette méthode de hash est faiblarde, choper le hash + connaître la méthode suffit pour retrouver le mdp (exemple d'un cas d'école, le MD5). De plus, si tout le reste s'est bien passé, c'est du travail complètement inutile. Ne prends pas de risque, authentification au départ, puis session. Et usage du HTTPS.

      Sans HTTPS le danger principal est la présence d'un "man in the middle".

      -
      Edité par Genroa 14 janvier 2019 à 0:14:55

      • Partager sur Facebook
      • Partager sur Twitter
      /!\ Si je cesse de répondre c'est parce que vous êtes venus poster sans avoir suivi les cours de base sur le sujet. /!\
        14 janvier 2019 à 0:44:27

        Merci pour ta réponse, en fait c'est une application web à usage professionnelle, l'utilisateur est bien identifié lors de la connexion, mais il est d'usage d'utiliser la session ouverte des collègues dans mon travail, ce qui ne pose aucun problème, le fait de ressaisir le mot de passe évitait simplement à un collègue blagueur de modifier par exemple la photo de profil par une photo un peu douteuse :lol:...

        Etant donné que l'usage du site est protégé par un htaccess qui n'autorise que l'ip de l'entreprise, je ne devrais pas avoir de problème du coté de l'outils dev (sauf par un collègue), puisqu'il faut déja être entré sur le site?

        Donc avec un HTTPS, peu de risque?

        Qu'en penses tu?

        -
        Edité par Scueto 14 janvier 2019 à 0:45:23

        • Partager sur Facebook
        • Partager sur Twitter
          14 janvier 2019 à 9:02:07

          alors si tu veux vraiment chiffrer ton pass coté client avant de l'envoyer pour le tester : RSA, perso j'avais pas envi de me faire chier avec HTTPS ( problème de certificat autosignés ).

          Je génère une clé privet/publique RSA et je transmet la clé publique au client. Le client fait un hash du pass sha512, le chiffre en RSA le transmet et le serveur déchiffre et test le hash. Comme tu as toute la secu que tu veux, le pass n'est pas envoyé en claire chiffrement RSA et il est pas visible pas l'admin sys dans la data base (seul son hash est visible).

          Si tu veux un exemple pas de souci mais c'est sur NODEJS coté serveur.

          • Partager sur Facebook
          • Partager sur Twitter

          la connaissance est une chose qui ne nous appauvrit pas quand on la partage.

          Mon GitHub

            14 janvier 2019 à 13:08:17

            Merci pour ces conseils ! Je ne connais pas le RSA mais je viens de trouver un cours OCR donc je vais commencer par étudier ça et je repasserai ensuite pour te re-remercier et/ou te demander de l'aide sur ta méthode.

            Merci et bonne journée ;)

            • Partager sur Facebook
            • Partager sur Twitter

            Verification mot de passe par AJAX = danger ???

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown