Joomladay francophone 2018 à Paris 18 et 19 mai

[Password] Chiffrement des données

Réduire
X
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [Password] Chiffrement des données

    Bonjour à tous

    J'ai commencé récemment l'utilisation de Joomla! afin de faire un site d'administration.

    Pour la partie HTML (du moins utilisable via un navigateur), pas de problème, le site est au point (c'est là le but de Joomla!, non ? )

    Ensuite, je voulais incorporer quelques choses d'assez sympa (du moins dans le contexte où je suis ) : l'administration par mail !

    J'explique : j'ai codé une page PHP bien isolée et logiquement introuvable de l'exterieur (dans les moyens normaux et humains ). Ensuite, l'utilisateur envoi un mail à mon serveur mail, et celui-ci le redirige vers ma page. Je fais une lecture du contenu du mail et je parse les informations dont j'ai besoin : Login & Password dans le sujet, et le contenu de l'article dans le mail.

    Une fois les informations parser, je vérifie bien qu'il n'y a pas n'importe quoi dans les valeurs envoyées (requêtes SQL, etc...), ensuite je match le login et le password pour voir s'il correspond bien à un utilisateur du site.

    Pour le login, no problem : jos_users.username, et hop

    Par contre, pour le password... c'est une tout autre affaire

    J'ai commencé à lire les sources. J'ai plus ou moins compris comment le cryptage était généré. Cependant, je ne comprends pas comment le mot de passe est retrouvée, et même après plusieurs lectures des fichiers d'identifications. Je ne comprends pas comment Joomla! recrée le cryptage afin de le comparer à celui de la BDD.

    Est-il possible d'être éclairé sur ce point ?

    J'ai bien une solution qui consite à recréer une table moi-même en récupérant les informations que je veux et en cryptant à ma manière le mot de passe, mais autant utiliser ce qui éxiste déjà pour éviter de tout surcharger inutilement

    Merci d'avance

  • #2
    En fait, ce n'est pas Joomla qui s'occupe de ça, mais MySQL, qui utilise le cryptage MD5, trés connu. En fait, ton mot de passe n'est jamais stocké.

    Le jour où tu créé ton mot de passe pour la première fois, MySQL va faire notamment ce qu'on appelle un XOR ( de mémoire), en d'autres termes il applique une opération mathématique à ton pass, puis fais une division et conserve le produit de la division (c'est ce qu'on voit dans la table). Les fois suivantes où tu te loggue, MySQL se contente de refaire l'opération mathématique sur le pass proposé et compare les produits entre eux, s'ils sont identiques = accés, sinon message d'erreur.
    http://securis.info
    Joomla t'aide ? Alors Aide joomla! http://forum.joomla.fr/showthread.php?t=293
    SOJ, outils de diagnostic et d'audit pour régler vos soucis Joomla! : http://www.joomlafrance.org/telechar..._Autonome.html

    Commentaire


    • #3
      Ah bah, ça par exemple

      Je n'avais pas vu ça comme ça O_o

      Il serait possible de récuperer la séquence quelques part ?

      A moins que c'est le fonctionnement du md5 que tu m'as décrit ?

      Car avec php, j'ai affiché un md5 de mot de passe, j'ai essayé diverses séquences, mais je n'arrive jamais à matcher...

      Il y a une commande MySQL qui permet de récuperer sa séquence ?

      Pour infos : PHP 5, MySQL 5 aussi, si je ne me trompe pas (je ne suis plus au bureau ') et Joomla! 1.0.13.

      Merci

      Commentaire


      • #4
        Tu pourrai utiliser un convertisseur md5, par ex http://www.iwebtool.com/md5 , et une fois avec un pass d'utilisateur, tu fais ta conversion et tu regarde si ça correspond à un hash-md5 dans ta table ...
        http://securis.info
        Joomla t'aide ? Alors Aide joomla! http://forum.joomla.fr/showthread.php?t=293
        SOJ, outils de diagnostic et d'audit pour régler vos soucis Joomla! : http://www.joomlafrance.org/telechar..._Autonome.html

        Commentaire


        • #5
          la fonction de génération du hash du password est à la ligne 1009 et suivante de include/joomla.php
          Code PHP:
          $passwd     stripslashesstrvalmosGetParam$_POST'passwd''' ) ) )
          $harden mosHash( @$_SERVER['HTTP_USER_AGENT'] );
          list(
          $hash$salt) = explode(':'$user->password);
          $check_password md5$hash $harden ); 
          c'est simple on
          cours de SVT - infos scientifiques : www.nicolas-ogier.fr
          pas de demandes d'aide par mp, elles seront systématiquement refusées !

          Commentaire


          • #6
            Login..durdur

            Bonjour,

            Est-ce que ce code est toujours valable sous Joomla 1.0.15 ?

            Je suis en train de faire une interface 'a part' pour un composant spécifique..
            l'interface recoit par $_POST le username et de password.

            Donc j'utilise le mème bout de code, soit :

            $passwd = stripslashes( strval( mosGetParam( $_POST, 'passwd', '' ) ) )
            $harden = mosHash( @$_SERVER['HTTP_USER_AGENT'] );
            list($hash, $salt) = explode(':', $user->password);
            $check_password = md5( $hash . $harden );

            if ( $check_username == $username && $check_password == $passwd ) {
            $row = $user;
            $valid_remember = true;
            }


            et impossible de matcher $check_password et $passwd ...

            Je tourne en rond et trouve assez peu d'informations..alors si qlln a une idée ?


            Merci d'avance !

            Commentaire


            • #7
              Bonjour,

              OK pour Joomla 1.0 : Il s'agit du codage md5 de mysql.

              mais qu'en est il de Joomla 1.57 ? Je n'ai pas réussi à retrouver comment Joomla recode le mot de passe en un code de 2x32 caractères ????

              Quelqu'un connait il l'astuce ?
              Bertrand
              Association Aquariophile du Pays de Vierzon
              Fédération Française d'Aquariophilie
              Joomla + GMAccess , JCE , PhocaGallery , Rokdownload , VirtueMart

              Commentaire


              • #8
                personne n'a de solution à mon problème ?
                Bertrand
                Association Aquariophile du Pays de Vierzon
                Fédération Française d'Aquariophilie
                Joomla + GMAccess , JCE , PhocaGallery , Rokdownload , VirtueMart

                Commentaire

                Annonce

                Réduire
                1 sur 2 < >

                C'est [Réglé] et on n'en parle plus ?

                A quoi ça sert ?
                La mention [Réglé] permet aux visiteurs d'identifier rapidement les messages qui ont trouvé une solution.

                Merci donc d'utiliser cette fonctionnalité afin de faciliter la navigation et la recherche d'informations de tous sur le forum.

                Si vous deviez oublier de porter cette mention, nous nous permettrons de le faire à votre place... mais seulement une fois
                Comment ajouter la mention [Réglé] à votre discussion ?
                1 - Aller sur votre discussion et éditer votre premier message :


                2 - Cliquer sur la liste déroulante Préfixe.

                3 - Choisir le préfixe [Réglé].


                4 - Et voilà… votre discussion est désormais identifiée comme réglée.

                2 sur 2 < >

                Assistance au forum - Outil de publication d'infos de votre site

                Compatibilité: PHP 4.1,PHP4, 5, 6DEV MySQL 3.2 - 5.5 MySQLi from 4.1 ( @ >=PHP 4.4.9)

                Support Version de Joomla! : | J!3.0 | J!2.5.xx | J!1.7.xx | J!1.6.xx | J1.5.xx | J!1.0.xx |

                Version française (FR) D'autres versions sont disponibles depuis la version originale de FPA

                UTILISER À VOS PROPRES RISQUES :
                L'exactitude et l'exhaustivité de ce script ainsi que la documentation ne sont pas garanties et aucune responsabilité ne sera acceptée pour tout dommage, questions ou confusion provoquée par l'utilisation de ce script.

                Problèmes connus :
                FPA n'est actuellement pas compatible avec des sites Joomla qui ont eu leur fichier configuration.php déplacé en dehors du répertoire public_html.

                Installation :

                1. Téléchargez l'archive souhaitée : http://afuj.github.io/FPA/

                Archive zip : https://github.com/AFUJ/FPA/zipball/master

                2. Décompressez le fichier de package téléchargé sur votre propre ordinateur (à l'aide de WinZip ou d'un outil de décompression natif).

                3. Lisez le fichier LISEZMOI inclus pour toutes les notes de versions spécifiques.

                4. LIRE le fichier de documentation inclus pour obtenir des instructions d'utilisation détaillées.

                5. Téléchargez le script fpa-fr.php à la racine de votre site Joomla!. C'est l'endroit que vous avez installé Joomla et ce n'est pas la racine principale de votre serveur. Voir les exemples ci-dessous.

                6. Exécutez le script via votre navigateur en tapant: http:// www. votresite .com/ fpa-fr.php
                et remplacer www. votresite .com par votre nom de domaine


                Exemples:
                Joomla! est installé dans votre répertoire web et vous avez installé la version française du fichier FPA:
                Télécharger le script fpa-fr.php dans: /public_html/
                Pour executer le script: http://www..com/fpa-fr.php

                Joomla! est installé dans un sous-répertoire nommé "cms" et vous avez installé la version française du fichier FPA:
                Télécharger le script fpa-fr.php dans: /public_html/cms/
                Pour executer le script: http://www..com/cms/fpa-fr.php

                En raison de la nature très sensible de l'information affichée par le script FPA, il doit être retiré immédiatement du serveur après son utilisation.

                Pour supprimer le script de votre site, utilisez le lien de script de suppression fourni en haut de la page du script. Si le lien de suppression échoue pour supprimer le script, utilisez votre programme FTP pour le supprimer manuellement ou changer le nom une fois que le script a généré les données du site et le message publié sur le forum. Si le script est toujours présent sur le site, il peut être utilisé pour recueillir suffisamment d'informations pour pirater votre site. Le retrait du script empêche des étrangers de l'utiliser pour jeter un oeil à la façon dont votre site est structuré et de détecter les défauts qui peuvent être utilisé à vos dépends.
                Voir plus
                Voir moins
                Travaille ...
                X