Điểm:3

Kết hợp mật khẩu và TOTP - các sự cố có thể xảy ra

lá cờ cn

Tôi đã bắt gặp cơ chế đăng nhập hai yếu tố bằng cách sử dụng OTP dựa trên thời gian (TOTP). TOTP (6 chữ số) được hiển thị cho người dùng trong một ứng dụng.

Có hai cách đăng nhập.

Cách 1:

Người dùng nhập tên người dùng và mật khẩu. Sau đó phê duyệt thông báo đăng nhập nhận được trong ứng dụng TOTP. Không cần nhập TOTP trong trường hợp này.

tên người dùng = tên người dùng
mật khẩu = mật khẩu

Cách 2:

Người dùng nhập nối mật khẩu và TOTP từ ứng dụng làm mật khẩu. Không nhận được thông báo trong ứng dụng trong trường hợp này.

tên người dùng = tên người dùng
mật khẩu = mật khẩu + TOTP (6 chữ số)

Tên người dùng và mật khẩu được gửi qua TLS.

Về phía máy chủ, tôi giả sử họ tách 6 chữ số cuối khỏi giá trị mật khẩu nhận được và kiểm tra xem nó có khớp với TOTP không (và sau đó khớp phần còn lại của chuỗi với mật khẩu được lưu trữ).

Mặt khác, họ băm mật khẩu hoàn chỉnh và khớp nó với giá trị được lưu trữ trong cơ sở dữ liệu (giả sử mật khẩu không được lưu trữ ở dạng văn bản thuần túy). Nếu khớp, một thông báo sẽ được gửi đến thiết bị của người dùng.

Điều gì có thể là các vấn đề có thể xảy ra hoặc các điểm yếu về mật mã học trong hệ thống này?

lá cờ et
Nếu TOTP khớp, thì hy vọng, bạn cũng kiểm tra mật khẩu, phải không? Bạn chưa chỉ định điều đó trong câu hỏi
Yash Dhingra avatar
lá cờ cn
Tôi không biết những gì đang xảy ra ở phía máy chủ. Nhưng vâng, cung cấp TOTP đúng và mật khẩu sai sẽ hiển thị lỗi cho biết tên người dùng hoặc mật khẩu không chính xác; vì vậy họ phải kiểm tra mật khẩu. Tôi sẽ thêm điều này vào câu hỏi.
Điểm:0
lá cờ cn

tôi đang giả định

Quy tắc số 1 của tôi khi nói đến bảo mật, giả định điều tồi tệ nhất hoặc không giả định bất cứ điều gì (mặc dù tôi thừa nhận rằng tôi vẫn đưa ra các giả định)

Điều gì có thể là các vấn đề có thể xảy ra hoặc các điểm yếu về mật mã học trong hệ thống này?

Mật khẩu rất có thể được lưu trữ ở dạng văn bản thuần túy, chỉ là bạn không biết. Thực tế là họ đang sử dụng TOTP ngay từ đầu là một dấu hiệu tốt, nhưng không chứng minh được điều gì về phần bảo mật còn lại của họ.

Một số công ty tự hào về việc triển khai bảo mật của họ và sẽ cho bạn biết ngay nếu bạn hỏi, họ thậm chí có thể có giấy trắng chi tiết các tiêu chuẩn của họ.

Có những điều đáng nói nào khác mà công ty đã công khai về bảo mật dịch vụ của họ không? Họ có sử dụng những từ cờ đỏ như "mã hóa cấp độ quân sự" hay "không thể phá vỡ" không? Chính sách của họ về độ phức tạp của mật khẩu là gì? Trang web của họ có sử dụng TLS 1.3 không?

Tôi khuyên bạn nên hỏi, nếu họ lảng tránh hoặc đối đầu, đó có thể là một dấu hiệu xấu.

Yash Dhingra avatar
lá cờ cn
Họ không có bất kỳ tuyên bố công khai về bảo mật của họ. Và họ đang sử dụng TLS 1.2. Không thể hỏi họ những chi tiết khác. Đó là lý do tại sao tôi đưa ra câu hỏi này cho cộng đồng để đánh giá xem liệu phương pháp nối thêm hai tham số này có thể tiềm ẩn các vấn đề bảo mật hay không. Có bất kỳ trường hợp nào trước đây mà điều này đã gây ra bất kỳ vấn đề nào không?
Richie Frame avatar
lá cờ cn
@YashDhingra khi độ dài của một trong số chúng được cố định thì đó có thể không phải là vấn đề, nhưng khi độ dài thay đổi thì có thể có vấn đề nghiêm trọng. Sự hiện diện của dấu phân cách bắt buộc cũng có thể dẫn đến sự cố, độ dài cố định không có dấu phân cách được phân tách đáng tin cậy hơn mà không gặp sự cố
Yash Dhingra avatar
lá cờ cn
Có, độ dài của TOTP là cố định (6 chữ số). Điều này có nghĩa là nếu họ không lưu trữ mật khẩu ở dạng văn bản thuần túy và sử dụng các câu lệnh đã chuẩn bị để làm sạch đầu vào, thì dường như không có nhiều vấn đề trong phương pháp này? Ngoài ra, sẽ tốt hơn nếu có một đầu vào riêng cho TOTP thay vì thêm nó bằng mật khẩu?
Richie Frame avatar
lá cờ cn
@YashDhingra chỉ từ quan điểm UI/UX, sẽ hợp lý hơn khi có TOTP làm đầu vào riêng biệt, thực sự có rất nhiều biện pháp kỹ thuật có thể được sử dụng để ngăn chặn việc ghép nối gây ra bất kỳ loại sự cố bảo mật nào

Đă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.