osCommerce France : Accueil Forum Portail osCommerce France Réponses aux questions Foire aux contributions

Bienvenue invité ( Connexion | Inscription )

> perte du mot de passe admin
aubonheurdesyeux
posté 16 Feb 2012, 10:44
Message #1


Ceinture blanche OSC
Icône de groupe

Groupe : Membres
Messages : 1
Inscrit : 16-February 12
Membre no 30604



j'ai os commerce 2010 et j'ai perdu mon mot de passe admin !
comment le retrouver ?
merci

Ce message a été modifié par aubonheurdesyeux - 16 Feb 2012, 10:45.


--------------------
aubonheurdesyeux
Go to the top of the page
 
 
Start new topic
Réponse(s)
Gnidhal
posté 21 Mar 2012, 22:10
Message #2


5eme dan OSC
Icône de groupe

Groupe : Administrateur
Messages : 9221
Inscrit : 4-March 03
Lieu : Pau
Membre no 927



Citation (francois21 @ 10 Mar 2012, 19:10) *
Citation
il manque le salt

Je ne suis pas un expert, c'est quoi le "salt".
Le salt (sel en français) est un ingrédient qui relève les saveurs. smile.gif
Sans rire, ça s'appelle comme ça et c'est une clé aléatoire qui double la sécurité du mot de passe.
Si tu regardes le code de la fonction d'encryptage du password dans osC, tu vois que cette option est utilisée :
Code
  function tep_encrypt_old_password($plain) {
    $password = '';
    for ($i=0; $i<10; $i++) {
      $password .= tep_rand();
    }
    $salt = substr(md5($password), 0, 2);
    $password = md5($salt . $plain) . ':' . $salt;
    return $password;
  }
dans la version 2.3.1 ce mode de cryptage est passé par la classe PasswordHash qui fait la même chose en mieux.
Donc, pour être compatible avec toutes les versions (la 2.3.1 sait lire les anciens mots de passe avec salt) il vaut mieux créer un pass avec cette clé.
Comme tu le vois le salt est généré de manières aléatoire et on extrait 2 caractères qui sont accolés au mot de passe d'origine avant le cryptage par MD5 puis cette même clé est ajoutée en fin séparée par ":"
MD5 n'a pas de fonction inverse qui permet de décrypter on fonctionne donc par comparaison : on saisit un mot de passe, on le crypte et on vérifie que le résultat est le même que ce qui est stocké en bdd.
Cela a inspiré certains hackeurs qui ont constitué des bases de données de mots de passe cryptés : des millions de combinaisons sur la base d'un MD5 de chaines aléatoires avec en priorité les mots du dico. C'est beaucoup plus rapide de chercher dans une liste existante que de générer chaque possibilité puis de comparer.
La première solution dite du "dictionnaire" ne fonctionne pas sur les mots de passe codés avec un salt car il faut tenir compte de ces deux caractères en plus ce qui multiplie pour chaque mots du dico les possibilités par plus de 1500. Peu probable de sctocker cela dans un fichier.
Il ne reste donc que le système de la force brute : reconstituer une base de données de mots de passe en tenant compte du salt, lisible ne clair à la fin de la chaine et comparer chaque occurrence.
Bien sur, la base de recherche sera généralement un dictionnaire de mots les plus utilisés mais il faut recrypter à chaque fois.

La casse d'un mot de passe dépendra donc de sa complexité de base :
5 caractères (a-z en minuscule) (11881376 combinaisons) demandent quelques minutes à un gros processeur
6 caractères (A-Z a-z) (près de 20.000.000.000)avec les majuscules possibles et là ça devient nettement plus long (plusieurs heures)
Si tu ajoutes les chiffres et que tu passes à 7 caractères (A-Z a-z 0-9) (plus de 3.500.000.000.000 ?), là on peut passer à plus d'un jour et si tes chiffres, lettres, majuscules et minuscules sont habilement mélangés ça peut nécessiter des jours de calcul. Enfin ça dépend de la puissance du processeur et maintenant avec des engins à 6 coeurs, voire plus si on parallélise... quelques heures? minutes?
Mais ça peut aussi aller très vite, question de chance smile.gif
Allez pour être assez tranquille : 8 caractères avec accents + chiffres + ponctuation : une centaines de caractères possibles à la puissance 8 ? ça va faire chauffer le silicium!

Raison pour laquelle il est impératif quand on utilise un mot de passe de ne jamais utiliser un simple prénom ou date de naissance comme mot de passe. Ce genre de mot de passe même entre 6 et 8 caractères se casse en moins d'une heure par dictionnaire + force-brute
"martin", "sylvie", "pierre"... = cassés en moins de 10 minutes sur mon petit PC smile.gif
5 caractères en minuscule, des prénoms... facile! et avec la simple majuscule initiale, ça n'est pas plus long. En revanche martiN ou mArtIn... bien plus hard!


--------------------
Tout d'abord : - Ni Hotline ni Service Après Vente, ces forums sont un lieu d'échange. BIEN POSER SA QUESTION (généralités)
Les "Informations Importantes" que vous devez ABSOLUMENT avoir lues :
Règlement, Bien poser sa question dans ces forums et Bien utiliser les Forums.
Les raccourcis pour gagner du temps : la FAQ, les PDF de la Doc (MS2-fr): PDF-V1 et PDF-V2, le moteur de Recherche sur les forums , la Liste des Contributions de Corbin.

----------------------------- Quelques sites de référence ---------------------------
PHP: Le site du Zéro et PHP Débutant avec la DOC en français -- HTML: Self HTML - WebProgrammation -- CSS: OpenWeb - AlsaCréations - CSS/Edge -- Autres ressources: - XajaX - highslide js
Les bons outils : EasyPHP - WAMP-5 - - Notepad++ - Firefox et son extension WebDeveloper
Le gène idéal c'est le gène original. Le génie des halles est un Génie des Alpages qui tente d'être à la page. (Merci f'murrr pour les cours de philosophie de chien)
Go to the top of the page
 

Les messages de ce sujet


Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



RSS Version bas débit Nous sommes le : 16th April 2024 - 06:07
Ce site est déclaré auprès de la commision Nationale
de l'Informatique et des Libertés (déclaration n°: 1043896)