Jakie metody są używane do szyfrowania haseł w / etc / passwd i / etc / shadow?


19

Dokładne sprawdzenie plików /etc/passwdi /etc/shadowujawnia, że ​​przechowywane hasła są haszowane przy użyciu jakiejś formy funkcji haszującej.

Szybkie wyszukiwanie w Google ujawnia, że ​​domyślnie hasła są szyfrowane przy użyciu DES . Jeśli wpis zaczyna się od $, oznacza to, że użyto innej funkcji haszującej.

Na przykład niektóre wpisy na moim komputerze Ubuntu zaczynają się od $6$...

Co oznaczają różne liczby?

Odpowiedzi:


28

Pełna lista znajduje się w man 3 crypt( wersja internetowa ):

          ID  | Method
          -------------------------------------------------
          1   | MD5
          2a  | Blowfish (on some Linux distributions)
          5   | SHA-256 (since glibc 2.7)
          6   | SHA-512 (since glibc 2.7)

(Blowfish może być $2$albo $2a$według Wikipedia krypty (Unix) ).

To $6$znaczy SHA-512.

To, którego używa twój system, jest regulowane przez wszelkie opcje przekazane do modułu PAM pam_unix .

Domyślne ustawienie najnowszej wersji Ubuntu to /etc/pam.d/common-password:

password        [success=1 default=ignore]      pam_unix.so obscure sha512

co oznacza, że ​​przy następnej zmianie hasła zostanie ono zaszyfrowane przy użyciu SHA-512, przy założeniu, że twoje konto jest lokalne, a nie NIS / LDAP / Kerberos itp.

Zobacz też:


Szybkie podwójne sprawdzenie moich /etc/shadowpokazuje 2 wpisy, które zaczynają się od $6$.
Nathan Osman

Należy pamiętać, że SHA-256 i SHA-512 są częścią zestawu funkcji skrótu SHA-2.
mattdm

4
Zauważ, że skróty krypt oparte na SHA-2 nie są zwykłym SHA-2, co byłoby złe, ponieważ zwykły SHA-2 jest słaby przeciwko atakom słownikowym. Schematy krypt SHA-2 używają zwykłych skrótów jako bloku budulcowego, ale dodają zmienny współczynnik pracy (w celu spowolnienia ataków słownikowych) i sól.
CodesInChaos

Na moim komputerze Ubuntu hasło roota ma symbol wykrzyknika ( !). Czytanie man shadowoznacza, że ​​hasło jest zablokowane, więc nie możesz zalogować się bezpośrednio przy użyciu hasła uniksowego. Ma to związek z domyślnie wyłączonym kontem root w systemie Ubuntu.
Akronix,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.