2009-07-23 51 views
8

Trong nhiều ứng dụng khi bạn nhầm lẫn trong tên người dùng hoặc mật khẩu, bạn gặp lỗi không cụ thể cho biết tên người dùng đã nhập không tồn tại hoặc mật khẩu không chính xác cho tên người dùng đó.Không tìm thấy tên người dùng hoặc thông báo lỗi mật khẩu sai quá mơ hồ

I (ngây thơ) mong muốn ứng dụng chỉ định trong đó một trong hai lỗi đã xảy ra. Có lý do gì để không phân biệt giữa chúng không? Tôi đoán nó sẽ làm cho nó khó khăn hơn cho một kẻ tấn công để đoán một sự kết hợp tên người dùng/mật khẩu chính xác, nhưng có bất kỳ tài liệu, nghiên cứu hoặc tương tự mà sao lưu giả định này?

Trả lời

10

Lý do sẽ là bảo mật: ngăn chặn finding out which user names exist dựa trên các lần thử không thành công.

Điều này cần được cân bằng với trải nghiệm người dùng; nếu bạn được thông báo rằng hoặc tên người dùng hoặc mật khẩu của bạn không chính xác, nó có thể được coi là rất vô ích hoặc gây phiền nhiễu.

+3

Nhưng thông tin về tên người dùng nào tồn tại thường có thể thu được bằng cách tạo tài khoản mới. –

1

Cảm giác chung cho thấy một thông điệp mơ hồ tốt hơn vì kẻ tấn công sẽ không thể biết liệu họ có đoán đúng tên người dùng hay không.

1

Đó là thêm một vòng mà kẻ tấn công cần phải nhảy qua. Nếu anh ta tấn công lạnh một ứng dụng anh ta sẽ không biết bất kỳ tên người dùng hoặc mật khẩu nào. Tại sao cho anh ta thêm một chút thông tin để nói với anh ta rằng anh ta đã tìm thấy một tên người dùng? Tốt hơn là giữ lại thông tin.

Điều gì xảy ra nếu kẻ tấn công chỉ đang tìm cách xác nhận rằng một tên người dùng cụ thể tồn tại? Ví dụ: tên của một chính trị gia làm tên người dùng cho trang web tôn sùng. Tên người dùng chính là thông tin nhạy cảm và bạn không muốn xác nhận thông tin nào tồn tại và thông tin nào không tồn tại.

+0

+1 cho ví dụ thế giới thực :) – slolife

2

Vâng, đó chính xác là lý do tại sao nhiều ứng dụng/trang web không chỉ định phần đăng nhập nào xấu. Tôi từng có khiếu nại tương tự, nhưng sau đó tôi đọc một loạt sách bảo mật máy tính bao gồm 19 Deadly Sins of Software Security. Trong số những thứ khác như tràn và tiêm SQL, Michael Howard giải thích lý do trả lại lỗi thống nhất cho thông tin đăng nhập.

HTH

1

đó là tất cả về việc cung cấp cho kẻ tấn công càng ít thông tin càng tốt. Một số trang web thậm chí còn tiến xa hơn với điều này trên lời nhắc mật khẩu. Khi bạn nhập địa chỉ email của mình để nhận mật khẩu mới hoặc liên kết đặt lại mật khẩu, họ sẽ không cho bạn biết địa chỉ email của bạn có được đăng ký trong cơ sở dữ liệu hay không nhưng gửi cho bạn một thông báo như sau: "nếu địa chỉ email bạn đã nhập có trong cơ sở dữ liệu của chúng tôi bạn sẽ nhận được một tin nhắn ... "Điều này ngăn cản kẻ tấn công tìm ra địa chỉ email nào đã được nạn nhân sử dụng và cũng có thể thông báo cho nạn nhân rằng ai đó đang cố đột nhập vào tài khoản của cô ấy.

Các vấn đề liên quan