2010-02-01 4 views
19

ans qu'elle était le cas que les mots de passe Unix ont été limités à 8 caractères, ou si vous avez fait le mot de passe plus de 8 caractères extra ne fait aucune différence.Les mots de passe des systèmes Unix/Linux modernes sont-ils toujours limités à 8 caractères? Il y a

Est-ce toujours le cas sur la plupart des systèmes Unix/Linux modernes?

Si oui, autour des mots de passe plus quand ne deviennent possible sur la plupart des systèmes?

est-il un moyen facile de dire si un système donné prend en charge les mots de passe et si plus ainsi, ce que le maximum efficace (le cas échéant) serait?

Je l'ai fait une recherche web sur ce sujet et n'a pas pu trouver vraiment rien de définitif; une grande partie de ce qui s'est passé était du début des années 2000 quand je pense que la limite de 8 caractères était encore commune (ou assez commune pour justifier de coller à cette limite).

Répondre

12

En glibc2 (toute distribution Linux moderne) la fonction de chiffrement de mot de passe peut utiliser MD5/SHA-xxx (provoquée par un préfixe de sel magique) qui traite alors comme important tous les caractères d'entrée (voir man 3 crypt). Pour un test simple sur votre système, vous pouvez essayer quelque chose comme:

#!/bin/perl -w 
my $oldsalt = '@@'; 
my $md5salt = '[email protected]@$'; 
print crypt("12345678", $oldsalt) . "\n"; 
print crypt("123456789", $oldsalt) . "\n"; 
print crypt("12345678", $md5salt) . "\n"; 
print crypt("12345678extend-this-as-long-as-you-like-0", $md5salt) . "\n"; 
print crypt("12345678extend-this-as-long-as-you-like-1", $md5salt) . "\n"; 

(qui donne sur mon système)

@@nDzfhV1wWVg 
@@nDzfhV1wWVg 
[email protected]@$PrkF53HP.ZP4NXNyBr/kF. 
[email protected]@$4fnlt5pOxTblqQm3M1HK10 
[email protected]@$D3J3hluAY8pf2.AssyXzn0 

Autres * variantes ix un soutien similaire - par exemple crypt(3) since at least Solaris 10. Cependant, il s'agit d'une extension non standard - POSIX does not define it.

+1

Le hachage md5 utilisant '$ 1 $' est ** 22 ** ans. Il était utilisé par défaut pour hacher le 'shadow 'pendant un certain temps, mais il n'est pas sûr pour le moment. Personne ne l'a sérieusement utilisé en 2010. La vieille crypte utilisait des, et tous les personnages n'étaient pas significatifs. Ce n'était pas vraiment cassé ~ 1995, avec un bon mot de passe. –

+0

@ AnttiHaapala C'est certainement! Ceci est juste l'exemple le plus simple - la page de manuel (liée) pour crypt donne d'autres valeurs pour l'algorithme, comme $ 5 $ pour SHA-256 et $ 6 $ pour SHA-512. – jmb

1

Vous trouverez ce article d'intérêt. Il y a quelque chose appelé PAM (mot de passe d'authentification Module) qui exécute votre mot de passe à travers une série de modules (configurés dans /etc/pam.d/passwd ou /etc/pam.conf) pour déterminer si le mot de passe est valide ou non.

4

Pas pour Linux. Ce n'est que 8 si vous désactivez MD5 Hashing.

http://www.redhat.com/docs/manuals/linux/RHL-8.0-Manual/security-guide/s1-wstation-pass.html

Vous pouvez administrer des politiques et des mots de passe plus faire respecter plus complexes aussi bien.

Les longueurs complètes sont discutées ici:

http://www.ratliff.net/blog/2007/09/20/password-length/

+1

Est-ce que Linux utilise encore MD5 ces jours-ci? Je demande parce que c'est considéré comme cassé. –

+0

@Steven: IIRC, oui il utilise toujours MD5 par défaut. Il utilise cependant un assez bon sel, donc il est assez à l'abri des attaques de la table arc-en-ciel, mais pas aussi sûr qu'il pourrait l'être. – rmeador

+1

Intéressant. Je me souviens vaguement que certaines variantes d'Unix supportent plus d'un algorithme de hachage. –

0

Je pense à l'époque où les mots de passe réels ont été déplacés de/etc/passwd à l'ombre, sur Linux. Je devine autour de 2000, Red Hat 6.x avait de longs mots de passe IIRC. Autour de 2000, il y avait encore beaucoup de vieux SUN, et ils avaient des limites de mot de passe et de nom d'utilisateur.

5

Demandez-vous sur l'algorithme crypt?

http://linux.die.net/man/3/crypt

« En prenant les plus bas 7 bits de chacun des huit premiers caractères de la clé ... »

« La version glibc2 de cette fonction présente les caractéristiques suivantes. ... La clé entière est significative ici (au lieu de seulement les 8 premiers octets). "

est ici une indication quant à la façon dont il y a longtemps ce changement est arrivé.

Glibc 2 HOWTO 
    Eric Green, [email protected] 
    v1.6, 22 June 1998 
12

Bien que le original DES-based algorithm n'utilisé les 8 premiers caractères du mot de passe, Linux, Solaris et autres systèmes plus récents prennent désormais en charge en outre d'autres algorithmes de hachage de mot de passe tels que MD5 qui n'ont pas cette limite. Parfois, il est nécessaire de continuer à utiliser l'ancien algorithme si votre réseau contient des systèmes plus anciens et si NIS est utilisé. Vous pouvez dire que l'ancien algorithme basé sur DES est toujours utilisé si le système vous connecte lorsque vous entrez seulement les 8 premiers caractères de votre mot de passe> 8 caractères.

Parce qu'il est un algorithme de hachage, MD5 n'a pas une limite intrinsèque. Cependant diverses interfaces imposent généralement some limit of at least 72 characters.Bien qu'initialement, le mot de passe chiffré ait été stocké dans un fichier lisible par le monde (/etc/passwd), il est généralement stocké dans une base de données temporaire séparée (par exemple /etc/shadow) qui n'est lisible que par le superutilisateur. Par conséquent, la force de l'algorithme n'est plus aussi importante qu'elle l'était autrefois. Cependant, si MD5 est inadéquat, Blowfish ou SHA peut être utilisé à la place sur certains systèmes. Et Solaris prend en charge les modules de chiffrement de mot de passe enfichables, vous permettant d'utiliser any crazy scheme. Bien sûr, si vous utilisez LDAP ou une autre base de données utilisateur partagée, vous devrez sélectionner un algorithme supporté sur tous vos systèmes.

+0

Informations et liens utiles - Merci d'avoir répondu! Il y avait beaucoup de bonnes réponses et j'ai donc fini par accepter celui qui m'a donné le code pour déterminer s'il était sûr d'utiliser des mots de passe supérieurs à 8, mais j'ai mis à jour toutes les bonnes réponses, y compris les vôtres. Merci! – Chirael

+0

Pas de problème. BTW il est toujours * sûr * d'utiliser des mots de passe de plus de 8 caractères, c'est juste que si votre mot de passe est stackoverflow, il peut également accepter stackoverload. L'ajout de caractères supplémentaires peut faciliter la mémorisation et ne diminue pas la sécurité. Gardez également à l'esprit que tous les algorithmes peuvent avoir des collisions de hachage et accepter plus d'un mot de passe, surtout s'ils sont longs. – mark4o

Questions connexes