Phương pháp nào được sử dụng để mã hóa mật khẩu trong / etc / passwd và / etc / bóng?


19

Kiểm tra cẩn thận /etc/passwd/etc/shadowcác tệp cho thấy mật khẩu được lưu trữ được băm bằng cách sử dụng một số dạng hàm băm.

Một tìm kiếm nhanh của Google cho thấy theo mặc định, mật khẩu được mã hóa bằng cách sử dụng DES . Nếu một mục bắt đầu bằng $, thì nó chỉ ra rằng một số chức năng băm khác đã được sử dụng.

Ví dụ: một số mục trên máy Ubuntu của tôi bắt đầu bằng $6$...

Những con số khác nhau đại diện cho những gì?

Câu trả lời:


28

Danh sách đầy đủ có trong man 3 crypt( phiên bản web ):

          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 có thể là $2$hoặc $2a$theo Wikipedia Crypt (Unix) .)

Vậy $6$có nghĩa là SHA-512.

Hệ thống nào bạn sử dụng bị chi phối bởi bất kỳ tùy chọn nào được chuyển đến mô-đun PAM pam_unix .

Mặc định trên phiên bản Ubuntu mới nhất được đặt trong /etc/pam.d/common-password:

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

điều đó có nghĩa là lần tới khi bạn thay đổi mật khẩu, mật khẩu sẽ được băm bằng SHA-512, giả sử tài khoản của bạn là cục bộ, thay vì NIS / LDAP / Kerberos, v.v.

Xem thêm:


Kiểm tra nhanh hai lần /etc/shadowcho thấy 2 mục bắt đầu bằng $6$.
Nathan Osman

Lưu ý rằng SHA-256 và SHA-512 là một phần của bộ hàm băm SHA-2.
mattdm

4
Lưu ý rằng băm mật mã dựa trên SHA-2 không phải là SHA-2 đơn giản, điều này sẽ rất tệ vì SHA-2 đơn giản là yếu trước các cuộc tấn công từ điển. Các lược đồ mật mã SHA-2 sử dụng các hàm băm đơn giản làm khối xây dựng, nhưng thêm một yếu tố công việc biến đổi (để làm chậm các cuộc tấn công từ điển) và một muối.
CodeInChaos

Trong máy Ubuntu của tôi, mật khẩu của root có ký hiệu dấu chấm than ( !). Đọc man shadow, có nghĩa là mật khẩu đã bị khóa, vì vậy bạn không thể đăng nhập trực tiếp bằng mật khẩu unix. Nó phải làm với Ubuntu thiết lập tài khoản root bị tắt theo mặc định.
Akronix
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.