Một số vấn đề cơ bản về mật khẩu, và quản lý mật khẩu

Với sự phát triển của Internet hiện nay, một người bình thường có thể sở hữu rất nhiều account khác nhau (email, facebook, tài khoản ngân hàng, forum,… ). Từ đó dẫn đến vấn đề khó mà quản lý được hết tất cả các tài khoản.
Tôi là người bình thường
Tôi là người bình thường. Hacker không chọn doanh nhân người nổi tiếng mà hack, hack tôi làm gì?
Đây là một nhận định sai lầm. Vì hacker không quan tâm bạn là ai có bao nhiêu tiền, hacker chỉ quan tâm thời gian để hack tài khoản của bạn là bao lâu và sẽ kiếm được bao nhiêu tiền từ việc hack đấy.
Có nhiều cách để kiếm tiền từ tài khoản của bạn, như dùng tài khoản ngân hàng của bạn để bán hàng cấm, rồi dùng tiền đó đi mua bitcoin, cảnh sát điều tra thì chỉ biết được tiền chảy về tài khoản của bạn, bạn hoàn toàn bị tay bay vạ gió. Hacker cũng có thể dùng tài khoản của bạn để giả mạo, lừa đảo, nhờ chuyển tiền.
Cho dù hiện tại không thể kiếm được lợi ích từ tài khoản của bạn, hacker có thể dùng thông tin tài khoản của bạn để tạo các account giả, rửa tiền, bán thông tin cá nhân của bạn lên deepweb,…
Password hay Passphrase?
Ảnh được lấy từ XKCD
Password
Bạn thường thấy yêu cầu mật khẩu phải:
- Ít nhất 8 kí tự - mật khẩu càng dài càng khó hack, độ dài thường được dùng là khoảng 12 đến 16 kí tự, bạn có thể thử kiểm tra thời gian hack một cách đại khái. Lưu ý: Không nhập mật khẩu thực của bạn. Không nên nhập mật khẩu vào bất kì nơi nào trên Internet, kể cả link kiểm thử mật khẩu mà mình vừa đưa.
- Bao gồm chữ hoa, chữ thường, số và ký tự đặc biệt - Thường thì khi độ dài trên 16 kí tự, không cần kí tự đặc biệt vì các kí tự đặc biệt làm password trở nên khó nhìn và khó đọc hơn.
- Không chứa thông tin cá nhân như tên, ngày tháng năm sinh, số CMND, tên con Pet,… - Vì hacker có thể thu thập các thông tin đó để tạo thành một từ điển và hack bạn một cách dễ dàng. Bạn cũng không nên đặt kiểu teencode như
p@ssw0rd
=>password
,huy3nph0nG
=>Huyền Phong
,… tất cả đều dễ hack vì hacker có chương trình tự động swap các kí tự.
Passphrase
Passphrase thực ra cũng là một loại Password, dùng chuỗi các từ viết liền hoặc cách nhau bởi dấu ngăn cách (thường là dấu -
).
Ở trên hình ví dụ, correcthorsebatterystaple
hay correct-horse-battery-staple
là Passphrase. Mặc dù có nhiều kí tự hơn so với Password thông thường, Passphrase chứa ít thành phần hơn (ở đây là 4 từ thay vì 16 kí tự ngẫu nhiên). Điều này làm Passphrase dễ nhớ và dễ ghi hơn so với Password.
Một Passphrase an toàn phải được tạo bởi một tập từ vựng đủ lớn, và phải được lấy ngẫu nhiên. Passphrase nên có 5 từ trở lên.
Bạn có thể tạo Password hoặc Passphrase bằng các trình Generator của Password Manager như Bitwarden.
Password Generator của Bitwarden
Lưu ý: Hacker có thể tạo một web Password Generator để thu thập mật khẩu của bạn.
Lời khuyên ở đây là chỉ dùng Password Generator của những trang uy tín như: Bitwarden, 1Password
Nếu bạn biết về lập trình thì có thể tự viết một Password Generator “Made-in-tự tui”
Đánh giá một số giải pháp mà mọi người hay dùng để quản lý mật khẩu
1. Dùng chung một username và password cho tất cả các tài khoản
Mình thấy đa số mọi người chọn giải pháp này, trước đây mình cũng thế, cho đến một ngày…
breach từ Wattpad và Gatehub
Thông tin tài khoản, trong đó bao gồm cả mật khẩu của mình bị lộ. Điều đó đồng nghĩa với việc tất cả các loại tài khoản khác dùng chung password này sẽ bị hack “trong vòng một nốt nhạc”
Bạn hãy thử kiểm tra xem email của mình có bị breach chưa tại Firefox Monitor.
2. Đặt username và password riêng cho từng tài khoản
2.1. Cố gắng tự ghi nhớ tất cả
Bạn đặt username và password riêng, rồi tự tin vào khả năng ghi nhớ siêu đẳng của mình.
Mọi chuyện có vẻ ổn, cho đến khi bạn nhận ra mình có hơn 50 accounts linh tinh các loại.
2.2 Viết ra giấy
Viết mật khẩu ra giấy là giải pháp bảo mật cực cao, điều bạn cần làm là viết rõ ràng mật khẩu (phân biệt được các kí tự o-O-0
, 1-i-l
,…). Sau đó giữ cẩn thận mẩu giấy, hay quyển sổ ghi password của mình không bị mất, không cho người khác thấy.
Thích hợp cho các loại account quan trọng, và hiếm khi đăng nhập như:
- tài khoản ngân hàng - khi nào cần chuyển tiền mới đăng nhập
- facebook - đăng nhập 1 lần trên thiết bị và facebook lưu lại phiên đăng nhập
- …
Cách này chỉ dùng được với số ít loại account kể trên, vì không thể nào mỗi lần cần đăng nhập thì lại lôi tờ giấy ghi password ra rồi gõ từng kí tự.
2.3 Dùng tính năng ghi nhớ mật khẩu của trình duyệt
Đây là tính năng đi kèm với trình duyệt, nhưng lại ít khi được các trình duyệt tập trung phát triển.
Nếu bạn tìm kiếm, sẽ thấy hàng loạt các lời khuyên không nên lưu mật khẩu trên trình duyệt, cùng các vụ lùm xùm về vấn đề bảo mật của tính năng này.
2.4 Dùng trình quản lý mật khẩu (Password Manager)
Mình đang dùng giải pháp này, sau đợt hoảng loạn vì bị breach password. Thay vì tự ghi nhớ, hoặc ghi giấy, sao không dùng một chương trình để quản lý tất cả.
Ưu điểm của Password Manager là bạn chỉ cần nhớ một mật khẩu duy nhất để đăng nhập, thậm chí chỉ cần quét vân tay là truy cập được. Một Password Manager tốt sẽ:
- Tạo mật khẩu mạnh cho bạn
- Lưu giữ mật khẩu đã tạo một cách an toàn
- Đồng bộ giữa các thiết bị: điện thoại, PC, laptop,…
Điều quan trọng ở đây là cần phải “chọn mặt gửi vàng”. Có không ít Password Manager bảo mật kém, thậm chí tệ hơn là do chính hacker viết ra :(
KeePass, Bitwarden là những lựa chọn tốt nếu bạn muốn dùng miễn phí. Vì cả 2 đều là phần mềm nguồn mở, và có cộng đồng người dùng đông đảo. Mình cũng đang dùng Bitwarden.
Bonus: Xác thực 2 bước (Two Factor Authentication - 2FA), nên hay không?
Lấy ví dụ rút tiền từ cây ATM, bạn cần biết mã PIN (tức Password), và thẻ ATM (tức key, hay thiết bị). Bạn chỉ rút được tiền khi bạn có cả thẻ ATM lẫn mã PIN.
Tương tự, nhiều trang như Facebook, Google có tính năng 2FA. Để đăng nhập, ngoài việc có mật khẩu, bạn phải nhập mã xác nhận được gửi về số điện thoại, hoặc qua các ứng dụng Authenticator (Google Authenticator, Authy,…)
Vậy có nên dùng 2FA hay không?
Câu trả lời là nên, nhưng trước hết bạn cần cân nhắc khả năng không dùng được điện thoại nữa (bị mất, hỏng, thay mới máy,…)
LOL
Trong trường hợp sử dụng 2FA, bạn nên dùng Authy thay vì Google Authenticator. Bởi vì Authy có khả năng khôi phục lại trong trường hợp mất điện thoại, còn Google Authenticator thì chưa có tính năng này.
Kết
Việc bị hack có thể xảy ra với bất kì ai và bất cứ khi nào. Việc áp dụng các biện pháp bảo mật không đảm bảo bạn an toàn 100% trước nguy cơ bị hack, nhưng vẫn tốt hơn rất nhiều so với không làm gì.
UwU
Và nếu một ngày bạn bị hack thì cũng đừng quá tuyệt vọng vì đến Mark Zuckerberg còn bị hack mà - Mark Zuckerberg’s Twitter and Pinterest Accounts Hacked from Linkedin Breach
Tham khảo
Bài viết này được tham khảo từ các tài liệu sau: