Bao mat nhap mon

(ndkhanh157) #1

Đến cả web lớn là vietnamwork mà cũng tắc trách đến mức không dùng https khi đăng nhập,
không bảo mật dữ liệu đến nỗi làm lộ mật khẩu của người dùng:
http://nghenhinvietnam.vn/tin-tuc/web-tim-viec-vietnamwork-bi-tan-cong-23535.html. Hậu
quả của việc này cũng không có gì nghiêm trọng, cùng lắm là mất mặt công ty, mất account
khách hàng và làm khách hàng chuyển qua dùng dịch vụ khác thôi.


Làm thế nào khi người dùng quên mật khẩu?


Do không lưu mật khẩu trong database, ta không thể gửi mật khẩu về mail cho người dùng
khi họ quên mật khẩu. Ở đây ta có 2 cách giải quyết.


Cách 1: Reset mật khẩu mới ngẫu nhiên rồi gửi cho người dùng
Cách này có thể làm lộ mật khẩu vì email có thể bị đọc trộm. Ngoài ra, nếu như biết địa chỉ
mail, hacker có thể lợi dụng nó để reset mật khẩu hàng loạt người dùng, nhằm ngăn cản họ
đăng nhập vào hệ thống.


Cách 2: Gửi link để người dùng reset
Dựa theo tài khoản, ta tạo reset token rồi gắn nó vào
link: http://shop.com/resetpass?token=32343, gửi link này vào mail cho người dùng.


Người dùng sử dụng link này để reset mật khẩu. Với cách này, dù hacker có request reset thì
mật khẩu người dùng vẫn giữ nguyên, không bị ảnh hưởng. Như đã nói phía trên, do email
không an toàn nên token này nên được expired ngay sau khi dùng, hoặc sau 24-48 tiếng đồng
hồ sau khi email được gửi đi.


Gửi em ail có link Reset P asswo rd về cho người dùn g

Chống việc đoán mò mật khẩu


Để dò mật khẩu, hacker có thể viết một con bot, lần lượt submit username và password cho
tới khi đăng nhập được. Để phòng tránh việc này, ta áp dụng những phương pháp sau:


 Khi người dùng đăng nhập sai, đừng báo là sai username hay sai password. Chỉ cần
báo username hay password không match, hacker sẽ gặp khó khăn hơn.
 Hacker lợi dụng chức năng reset mật khẩu để dò xem người dùng có email trên trang
đó hay không. Dù account có tồn tại hay không, ta vẫn chỉ hiện thông báo: đã gửi
message.
Free download pdf