Esto se debe a que la cripta basada en DES (AKA 'descifrar') trunca las contraseñas a 8 bytes y solo verifica las primeras 8 para verificar la contraseña.
Esa es la respuesta a su pregunta directa, pero aquí hay algunos consejos generales implicados por su contexto:
Afortunadamente, según mi lectura, MD5
en /etc/login.defs
realidad está md5crypt ($ 1 $), que, aunque está un poco desactualizado y declarado en desuso por su autor , sigue siendo muy superior a la cripta basada en DES (y definitivamente mucho mejor que un hash crudo y sin sal como simple MD5: la mayoría de los hashes sin sal se pueden descifrar en las GPU de productos básicos a tasas de miles de millones por segundo)
Parece que SHA256
(en realidad sha256crypt) y SHA512
(en realidad sha512crypt) también están allí. Elegiría uno de esos en su lugar.
Si establece su contraseña password
o algo en cada esquema, puede verificar visualmente si mi conclusión de que son las variantes -crypt es correcta (los ejemplos aquí se toman de los hashcat de hashcat , todos 'hashcat', algunos envueltos para legibilidad):
No recomendado: tipos de hash sin sal o heredados, demasiado "rápidos" (tasas de descifrado) para el almacenamiento de contraseñas:
MD5 - 8743b52063cd84097a65d1633f5c74f5
SHA256 - 127e6fbfe24a750e72930c220a8e138275656b8e5d8f48a98c3c92df2caba935
SHA512 - 82a9dda829eb7f8ffe9fbe49e45d47d2dad9664fbb7adf72492e3c81ebd3e2 \
9134d9bc12212bf83c6840f10e8246b9db54a4859b7ccd0123d86e5872c1e5082f
descrypt - 48c/R8JAv757A
OK, mucho mejor que sin sal, sin truncamiento, pero ya no lo suficientemente resistente a la fuerza bruta en el hardware moderno:
md5crypt - $1$28772684$iEwNOgGugqO9.bIz5sk8k/
Mejor: hashes relativamente modernos con grandes sales y factores de trabajo:
sha256crypt - $5$rounds=5000$GX7BopJZJxPc/KEK$le16UF8I2Anb.rOrn22AUPWvzUETDGefUmAV8AZkGcD
sha512crypt - $6$52450745$k5ka2p8bFuSmoVT1tzOyyuaREkkKBcCNqoDKzYiJL9RaE8yMnPgh2XzzF0NDrUhgrcLwg78xs1w5pJiypEdFX/
De estos, solo descifrar se trunca en 8. Los dos últimos son su mejor apuesta.
(Nota al margen: las sales de solo dígitos en los ejemplos de md5crypt y sha512crypt anteriores son solo efectos secundarios de cómo hashcat crea ejemplos de hashes; las sales reales y saludables generalmente se obtienen de un espacio de teclas mucho más grande).
Tenga en cuenta también que solo enumero los tipos de hash que son compatibles con /etc/login.defs en esta plataforma. Para uso general, incluso sha256crypt y sha512crypt han sido reemplazados, primero por bcrypt, y luego por hashes verdaderamente resistentes a ataques paralelos como scrypt y la familia Argon2. (Sin embargo, tenga en cuenta que para los inicios de sesión interactivos que deberían completarse en menos de un segundo, bcrypt es en realidad más resistente al ataque que este último)