OS X 10.9: băm mật khẩu được lưu trữ ở đâu


15

Tôi nghĩ trên các phiên bản trước của OS X, mật khẩu đã được lưu trong tệp / etc / Shadow.

Tuy nhiên, tệp này dường như không tồn tại trong các phiên bản sau của hệ điều hành - cụ thể là OS X 10.9, đây là phiên bản đầu tiên trong số các bản phát hành OS không có tên mèo.

Có ai biết băm mật khẩu được lưu trữ trên OS X Mavericks không?

Câu trả lời:


19

Bắt đầu với Lion, OS X đã giới thiệu một tệp bóng cho mỗi người dùng là một từ điển nguyên bản chứa băm mật khẩu và các GID / UID / kerberos khác và các loại khóa thư mục mở.

Các tập tin bóng được lưu trữ trên hệ thống tập tin tại /var/db/dslocal/nodes/Default/users. Chúng ở định dạng plist, vì vậy bạn sẽ cần sử dụng lệnh plutil để xem chúng hoặc sử dụng lệnh mặc định để trích xuất / ghi các phím cụ thể nếu muốn. Chỉ rootngười dùng có quyền truy cập vào các tập tin.

Để xem nội dung của tệp bóng cho người dùng:

sudo plutil -p /var/db/dslocal/nodes/Default/users/<username>.plist

Để có được hàm băm:

sudo defaults read /var/db/dslocal/nodes/Default/users/<username>.plist ShadowHashData|tr -dc 0-9a-f|xxd -r -p|plutil -convert xml1 - -o -

Trường hợp <username>trong các ví dụ trên là người dùng bạn đang tìm kiếm hàm băm. Bạn muốn <data>phần tương ứng với <key>entropy</key>khóa trong đầu ra plist đó.

Để tiếp tục thử và bẻ khóa mật khẩu, xem hướng dẫn này .


3
Điều này không hiệu quả với tôi: nó nói rằng ShadowHashData không phải là một tài sản hợp lệ trong <tên người dùng> .plist ...
thepiercingarrow

@MarkWright phiên bản OS X nào? Hoạt động tuyệt vời cho tôi vào ngày 10.11.3. Bạn đang sử dụng LDAP cho các tài khoản hay đây là tài khoản cục bộ?
Ian C.

Tôi đang sử dụng 10.9 trên chế độ người dùng.
thepiercingarrow

Điều gì sudo defaults read /var/db/dslocal/nodes/Default/users/${USER}.plistthể hiện cho bạn?
Ian C.

@MarkWright cùng xảy ra với tôi OSX: 10.10.5 Dùng rằng lợi nhuận lệnh "Tên miền /var/db/dslocal/nodes/Default/users/${USER}.plist không tồn tại"
o.uinn

1

Tôi muốn thêm vào câu trả lời được chấp nhận, chỉ trong trường hợp ai đó cố lấy mật khẩu băm được lưu trữ trên Máy chủ OS X trong Thư mục mở. Đối với người dùng mạng (OD), bạn cần phải

sudo mkpassdb -dump

sẽ cho bạn một danh sách người dùng và ID vị trí tương ứng của họ. Sao chép toàn bộ ID khe bắt đầu bằng 0x và phát hành

sudo mkpassdb -dump slot_id_that_you_retrieved

Bạn sẽ thấy một số mục tiêu hóa, trong đó * cmusaslsecretSMBNT là hàm băm mật khẩu NTLM và * cmusaslsecretDIGEST-MD5 là hàm băm MD5 thông thường. Làm với những gì bạn muốn, nhưng tôi thấy việc gửi chúng đến https://hashkiller.co.uk/ntlm-decrypter.aspx là một dịch vụ bẻ khóa trực tuyến miễn phí dễ dàng hơn . Nó chấp nhận hàm băm của bạn và nếu chưa có trong cơ sở dữ liệu của họ sẽ bắt đầu làm việc với nó. Trở lại một tuần sau đó và nó sẽ bị nứt. Điều này đã được thử nghiệm trên OS X El Capitan và Mac OS Sierra. Bạn có thể không thấy thông báo nếu một số phương thức xác thực đã bị vô hiệu hóa rõ ràng trên máy chủ của bạn nhưng chúng sẽ ở đó theo mặc định.


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.