Điểm:2

Mật khẩu băm và hàm băm

lá cờ es

Tôi hoàn toàn là một người mới. Tôi đã đọc về các hàm băm. Vì vậy, nếu một ngân hàng có mật khẩu người dùng chạy qua hàm băm, nó sẽ tạo ra một hàm băm duy nhất cho mọi mật khẩu phải không? Do đó, ngay cả khi tin tặc có thể lấy được một số dữ liệu, chúng sẽ chỉ có các giá trị băm chứ không phải mật khẩu ban đầu.

Nhưng tôi cũng đọc được rằng nếu một tin tặc chạy nhiều mật khẩu phổ biến thông qua hàm băm, sau đó so sánh các hàm băm phổ biến mà anh ta tạo ra với các hàm băm bị đánh cắp, thì anh ta có thể tìm ra mật khẩu ban đầu.

Câu hỏi của tôi là, tin tặc chỉ có thể làm điều này nếu anh ta biết cách thức hoạt động của hàm băm (được sử dụng bởi ngân hàng). Rõ ràng là anh ta không thể tạo ra hàm băm của các mật khẩu phổ biến nếu anh ta không biết cách thức hoạt động của hàm băm mà ngân hàng sử dụng. Vậy thì tại sao băm mà không có muối lại là một mối nguy hiểm về bảo mật? Điều này có nghĩa là tất cả các hàm băm hoạt động giống nhau?

Điểm:1
lá cờ us

Rõ ràng là anh ta không thể tạo ra các giá trị băm của các mật khẩu phổ biến nếu anh ta không biết hàm băm mà ngân hàng sử dụng hoạt động như thế nào.

Đây là tiền đề bị lỗi. Nếu một ngân hàng muốn có chứng nhận FIPS, ví dụ, sau đó nó phải băm mật khẩu với một số tốt, tiêu chuẩn hóa hàm băm. Tính bảo mật của xác thực dựa trên mật khẩu không xuất phát từ bí mật về hàm băm hoạt động như thế nào --- điều đó sẽ được coi là "bảo mật do tối nghĩa". Bất kể loại chứng nhận nào của chính phủ, sẽ là một cách làm tồi nếu để tính bảo mật do tối nghĩa làm cơ sở chính cho bảo mật của bạn. Nhìn thấy Nguyên lý Kerckhoffs.

Tuy nhiên, có thể kết hợp thông tin "bí mật" làm đầu vào cho hàm băm -- thông tin mà kẻ tấn công không có.

  • Muối là thông tin bổ sung được sử dụng làm đầu vào cho hàm băm, nhưng được lưu trữ cùng với hàm băm mật khẩu.Vì vậy, nếu kẻ tấn công có thể lấy được mã băm mật khẩu, thì nhìn chung chúng cũng có thể lấy được muối. Muối không ngăn kẻ tấn công thử đoán mật khẩu phổ biến. Nhưng họ ngăn cản tiền tính toán như bảng cầu vồng --- kẻ tấn công không thể bắt đầu thử đoán mật khẩu phổ biến cho đến khi sau đó học muối Các muối cũng "cá nhân hóa" hàm băm, để hai người dùng có cùng mật khẩu không giống nhau.

  • Tiêu là thông tin bổ sung được sử dụng làm đầu vào cho hàm băm, thông tin này không được lưu trữ cùng với đầu ra của hàm băm. Hạt tiêu thực sự bí mật, vì có thể đánh cắp mã băm mật khẩu mà không ăn cắp hạt tiêu. Hệ thống xác thực cần được thiết lập để cho phép tiêu. Máy chủ số 1 giữ mật khẩu băm và thu thập mật khẩu từ người dùng. Một máy chủ riêng biệt số 2 (thường bị khóa với thế giới bên ngoài nhiều hơn so với máy chủ số 1) giữ hạt tiêu và tính toán hàm băm. Máy chủ số 1 sau đó so sánh hàm băm mới được tính toán với hàm băm được lưu trữ và đưa ra quyết định cho phép người dùng.

Điểm:1
lá cờ in

Câu hỏi của tôi là, tin tặc chỉ có thể làm điều này nếu anh ta biết cách thức hoạt động của hàm băm (được sử dụng bởi ngân hàng). Rõ ràng là anh ta không thể tạo ra hàm băm của các mật khẩu phổ biến nếu anh ta không biết cách thức hoạt động của hàm băm mà ngân hàng sử dụng. Vậy thì tại sao băm mà không có muối lại là một mối nguy hiểm về bảo mật? Điều này có nghĩa là tất cả các hàm băm hoạt động giống nhau?

Tiền đề của bạn là sai khi bạn cho rằng các ngân hàng an toàn trước việc hack và giữ mật khẩu băm khỏi những kẻ tấn công. Nếu các ngân hàng sử dụng băm mật khẩu mà không có muối thì khả năng quản lý rủi ro của họ rất tệ, họ cần phải kích hoạt các công cụ phân tích rủi ro.

Vì vậy, khi ngân hàng sử dụng hàm băm mật khẩu mà không có muối, thì việc họ bị tấn công là vấn đề thời gian và hầu như tất cả các mật khẩu đều dễ dàng bị tiết lộ.

Hy vọng rằng hệ thống ngân hàng không chỉ dựa vào mật khẩu vì rủi ro của chúng cao hơn. Chúng thường yêu cầu xác thực hai yếu tố, mật khẩu một lần, v.v.

Và hãy nhớ rằng, chúng tôi không sử dụng hàm băm mật mã làm hàm băm mật khẩu vì chúng được thiết kế để nhanh và an toàn. Mặt khác, băm mật khẩu hiện đại yêu cầu, muối duy nhất và;

  • lặp lại có thể kiểm soát để giảm sự song song lớn của kẻ tấn công,
  • bộ nhớ cao để giảm mức sử dụng lớn của môi trường giống như ASIC/GPU và
  • chủ đề điều chỉnh để giảm song song.

Một số thuật toán băm mật khẩu tốt mà bạn có thể muốn xem là băm Argon2, Scrypt và Balloon. Cuối cùng, không nên băm mật khẩu mà không có muối duy nhất. Nếu được sử dụng thì Rainbow Tables chính là những con quái vật đang ẩn nấp trên con phố tiếp theo...

kelalaka avatar
lá cờ in
Và, hãy đọc [Cách băm mật khẩu an toàn?](https://security.stackexchange.com/q/211/86735) từ trang web bảo mật thông tin đáng kính của chúng tôi.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.