Une partie de mon /etc/login.defs
Le fichier ressemble à ceci:
ENCRYPT_METHOD SHA512
# Define the number of SHA rounds.
# If not specified, the libc will choose the default number of rounds (5000).
# The values must be inside the 1000-999999999 range.
# If only one of the MIN or MAX values is set, then this value will be used.
# If MIN > MAX, the highest value will be used.
#
# SHA_CRYPT_MIN_ROUNDS 5000
SHA_CRYPT_MAX_ROUNDS 6000
D'après ce que je comprends, c'est que le mot de passe passera à 6000 tours de hachage.
Maintenant, quand j'ai utilisé un outil comme hashcat
Comment puis-je dire que le hachage a traversé le nombre de rondes "x".
Je suis capable d'utiliser Hashcat comme si: hashcat -m 1800 -a 0 -o found.txt hash.txt rockyou.txt
Et il est toujours capable de le trouver. Est-il capable de comprendre le nombre de tours en soi?
Edit: Je viens de découvrir que la boîte de Linux n'utilisait pas 6000 tours de hachage, bien que je pensais que je l'avais configuré pour utiliser 6000 tours. Au lieu de cela, c'était seulement 5000.
Avec certains Python code, j'ai pu répliquer le cryptage de mot de passe "SHA512" sous Linux:
from passlib.hash import sha512_crypt
sha512_crypt.encrypt("testing123",rounds=6000,salt="6EGwX1iP")
Le hachage résultant est $6$rounds=6000$6EGwX1iP$oMerxGPimb/4ZXcI0Vbt87sNfw07eh7VPzcQwHOls8t3hLYGLQR0KjncrpyAjLTfPC3Fj7jhFoZKeuPRfTbJa/
Bien sûr, cette chaîne présente le nombre de rondes pouvant être transmises à hashcat
.
EDIT: J'ai vu que vous avez trouvé votre réponse, mais je l'ajouterai ici pour l'intérêt de l'exhaustivité. (Et j'ai déjà eu ceci écrit).
Hashcat ne devine pas le nombre de tours et la quantité de tours spécifiée dans votre /etc/login.defs
n'est pas correctement appliqué.
J'ai pris un exemple de ma boîte Linux:
$ 6 $ ELIIOT8D $ LXVE7ZXTABNVYI3KGRVGOPQ.I/TQU9CN.G2FGPCJYXOVIBBB1TJDBK7NFKOWO7YST.W8BWNACXQ0876/HZ6L //
C'est la même chose que:
$ 6 $ ronds = 50 & eliiot8d $ lxve7zxtabnvyi3kgrvgopq.i/tqu9cn.g2fgpcjyxovibbb1tjdbk7nfkowo7yst.w8bwnacxq0876/hz6l //
Si la quantité de tours était correctement définie, vous verriez un numéro différent au lieu de 5000 dans le hachage.
Sur ma boîte, Kali Linux, j'ai pu spécifier le nombre de tours en allant au /etc/pam.d/common-password
et trouver la ligne (ligne 25 dans mon cas):
mot de passe [SUCCESS = 1 Par défaut = Ignorer] PAM_UNIX.SO Obscure SHA512
J'ai annexé "tours = 1234" pour cela:
mot de passe [SUCCESS = 1 Par défaut = Ignorer] PAM_UNIX.SO Obscure Rounds SHA512 = 1234
enregistré et créé un utilisateur:
$> adduser test3
Et fini avec cela dans mon /etc/shadow
-déposer:
$>tail --lines=1 /etc/shadow
test3: $ 6 $ tours = 1234 $ SZWCXUIH $ YX1QDME1PG7grJ/4RJ8LKWGGMEffo/4RJ8LKWGGMEFFOO9VUCUPAHL3X2SBQZJ8N2A2OOEHPFEKAWDH2O.NGYWBLFZNABFoqLquz21: 16627: 0: 99999: 7 ::::
Vous pouvez spécifier manuellement combien d'itérations hachcat devraient faire en ajoutant des tours supplémentaires = [# d'itérations] après la signature, E.g:
$ 6 $ ronds = 50 & eliiot8d $ lxve7zxtabnvyi3kgrvgopq.i/tqu9cn.g2fgpcjyxovibbb1tjdbk7nfkowo7yst.w8bwnacxq0876/hz6l //
Cela sera toutefois automatiquement appliqué si la quantité de tours! = 5000, en /etc/shadow