2011-05-09 3 views
2

J'ai un ensemble d'utilisateurs dans mon OpenLDAP et je souhaite obtenir des informations de leur part, par exemple "cn" et "userPassword".Déchiffrer les mots de passe OpenLDAP

Toutefois, lorsque je récupère ces informations, le mot de passe n'est pas en texte clair, même s'il est défini sur mon serveur LDAP.

Des idées pour résoudre ce problème?

+1

Êtes-vous légalement autorisé à le faire?Si c'est le cas, vous devriez commencer par trouver les algorithmes utilisés et les emplacements des clés utilisées pour le chiffrement. –

+1

Vous voulez vraiment lire/déchiffrer les mots de passe? Cela ne semble pas prudent. Habituellement, les systèmes LDAP travaillent très fort pour s'assurer que les mots de passe ne sont pas décryptables. – IAmTimCorey

+0

Oui je suis, c'est juste un peu de travail de test - je veux juste la possibilité d'analyser les mêmes détails de l'LDAP à travers un autre système de connexion afin que l'utilisateur n'a pas besoin d'entrer à nouveau les détails. ce système ldap est le mien, avec une mise en place simple - d'où la raison ive définir userPassword pour «effacer le texte» – odtf

Répondre

6

Le userPassword est magasin Généralement sous forme hachée

userPassword: {hasAlgorithm}Hashed value 

Exemple:

userPassword: {SSHA}DkMTwBl+a/3DQTxCYEApdUtNXGgdUac3 

L'attribut userPassword est autorisé à avoir plus d'une valeur, et il est possible pour chaque valeur à mémoriser sous une forme différente. Au cours de l'authentification, slapd parcourt les valeurs jusqu'à ce qu'elles en trouvent une qui corresponde au mot de passe offert ou jusqu'à ce qu'il n'y ait plus de valeurs à inspecter. Le système de stockage est stocké comme préfixe sur la valeur

Vous pouvez:

CRYPTE

Ce schéma utilise la crypte du système d'exploitation (3) de la fonction de hachage. Elle produit normalement le hachage de caractère traditionnel de style Unix 13, mais sur les systèmes avec glibc2 il peut également générer plus sûr hachage MD5 34 octets

MD5

Ce schéma prend simplement le hachage MD5 du mot de passe et le stocke en base64 sous forme codée

SMD5

Cela améliore le système MD5 de base en ajoutant du sel (données aléatoires ce qui signifie qu'il ya beaucoup de représentations possibles d'un texte clair donné mot de passe). Par exemple, ces deux valeurs représentent le même mot de passe

ASIS

Ceci est la version salée du régime SHA. Il est considéré comme le système de stockage des mots de passe plus sécurisé pris en charge par slapd

Conclusion

La plupart du temps, vous ne devez pas récupérer le mot de passe, il vous suffit de calculer le hachage du mot de passe donné par l'utilisateur dans le formulaire de connexion et le comparer avec celui de userPassword.

0

Votre configuration comporte une superposition de stratégie de mot de passe configurée pour hacher le mot de passe en texte brut. olcPPolicyHashCleartext: TRUE ou ppolicy_hash_cleartext. Retirez-les et il devrait commencer à stocker les mots de passe en texte brut. Cela dit, il n'est pas recommandé de stocker des mots de passe en texte clair. Au moins, cryptez-le afin qu'il ne puisse pas être facilement renversé par des observateurs occasionnels. Et non, le codage ROT13 ou base64 ne compte pas.

+0

Vous ne devriez pas recommander le chiffrement de mot de passe. Hashing seulement s'il vous plaît. – EJP