Mã xác minh email: Cách an toàn hơn để sao chép, kiểm tra và sử dụng chúng
Được duyệt bởi Đội ngũ chuyên môn Once Email
Hướng dẫn bài viết
Vì sao bài viết này đáng đọc
- Phân tích nguyên bản
- Chúng tôi tách thư xác nhận địa chỉ khỏi xác thực, sau đó tuân theo một mã từ biên nhận đến bảng nhớ tạm, kiểm tra đích, gửi và dọn dẹp có chủ ý.
- Bối cảnh xu hướng
- Mật mã đang trở nên phổ biến hơn nhưng mã xác nhận email và mã khôi phục vẫn là thông lệ, trong khi lừa đảo vẫn khai thác các mã mà người dùng chuyển thủ công giữa các trang.
- Giá trị thực tế
- Người đọc có được quy trình đưa ra quyết định ngắn gọn đối với các mã không mong muốn, các miền trông giống nhau, thiết bị dùng chung, hiển thị bảng nhớ tạm và các giới hạn trích xuất mã tự động.
Trong trang này
Mã đến lúc 09:14. Trang yêu cầu vẫn mở, tên người gửi trông quen quen và sáu chữ số rất dễ nhận ra. Đây là thời điểm mà hầu hết các lời khuyên đều trở nên quá trừu tượng. Mã xác minh hữu ích chính xác vì nó dễ chuyển, tuy nhiên sự tiện lợi đó cũng khiến bạn dễ dàng đưa nhầm trang, dán vào cuộc trò chuyện hoặc để lại trên khay nhớ tạm chung.
Quy trình an toàn hơn rất ngắn gọn: tạm dừng, khớp, sao chép, sử dụng và xóa. Mất ít thời gian hơn so với việc khôi phục tài khoản sau khi dán nhầm.
Hướng dẫn này nói về các mã được gửi qua email để xác nhận địa chỉ, đăng nhập, khôi phục hoặc thay đổi nhạy cảm. Những thông báo này không phải tất cả đều có cùng ý nghĩa bảo mật. NIST phân biệt rõ ràng các mã được sử dụng để xác thực địa chỉ email với các quy trình xác thực và không coi các mã được nhập thủ công là có khả năng chống lừa đảo. Sự khác biệt đó rất quan trọng: việc trích xuất mã một cách chính xác không chứng minh được rằng trang yêu cầu mã đó là hợp pháp.
Tạm dừng: bạn đã bắt đầu yêu cầu này chưa?
Việc kiểm tra đầu tiên xảy ra trước khi đọc các chữ số. Hỏi hành động nào đã gây ra tin nhắn.
Nếu bạn vừa mở tài khoản, yêu cầu đặt lại mật khẩu hoặc xác nhận thay đổi thì thời điểm sẽ hợp lý. Nếu không có hành động nào xuất hiện trong đầu, đừng “kiểm tra” mã trên trang được cung cấp bởi thông báo. Ai đó có thể đã nhập sai địa chỉ của bạn hoặc người khác có thể đang cố truy cập vào tài khoản được kết nối với địa chỉ đó.
Mã không mong muốn là tín hiệu, không phải là hướng dẫn. Để nó không được sử dụng, mở dịch vụ liên quan thông qua dấu trang đã lưu hoặc địa chỉ bạn đã biết và kiểm tra hoạt động tài khoản gần đây ở đó. Không bao giờ gửi mã cho người tự xưng là người hỗ trợ. Cuộc trò chuyện hỗ trợ hợp pháp sẽ không yêu cầu bạn tiết lộ bí mật xác minh trực tiếp.
Các mã bất ngờ lặp đi lặp lại đáng được chú ý hơn một chút. Kiểm tra tính bảo mật của hộp thư bền có liên quan, xem xét các tùy chọn khôi phục và thay đổi mật khẩu được sử dụng lại. Đừng cho rằng chính mã đó có nghĩa là hộp thư đã bị xâm phạm; điều đó cũng có thể có nghĩa là kẻ tấn công biết địa chỉ và không thực hiện được bước tiếp theo.
##So khớp: kết nối tin nhắn với giao dịch chính xác
Trước khi sao chép, hãy so sánh bốn chi tiết:
- Dịch vụ: Đây có phải là tổ chức và sản phẩm bạn đang sử dụng không?
- Hành động: Thông báo có mô tả hoạt động đăng nhập, xác nhận địa chỉ, khôi phục hoặc thay đổi chính xác mà bạn yêu cầu không?
- Thời gian: Nó có đến ngay sau hành động đó chứ không phải vài giờ sau đó không?
- Đích: Trang mở trên miền đã đăng ký dự kiến, sử dụng HTTPS, không có tên miền phụ hoặc chính tả đáng ngạc nhiên phải không?
Kiểm tra điểm đến là bước mà mọi người bỏ qua. Một mã gồm sáu chữ số có thể được chuyển tiếp bởi một trang lừa đảo sang dịch vụ thực trong khi nó vẫn hợp lệ. NIST mô tả các kết quả đầu ra của trình xác thực được nhập theo cách thủ công là không có khả năng chống lừa đảo vì đầu ra không bị ràng buộc về mặt mật mã với phiên dự định. Trong ngôn ngữ thông thường: một mã chính xác không biết bạn muốn tin cậy vào trang nào.
Đọc tên máy chủ từ phải sang trái. Trong accounts.example.com, trang web đã đăng ký là example.com; trong example.com.attacker.test, đó là attacker.test. Logo trang trí, màu sắc quen thuộc và tên hiển thị của người gửi không thay đổi điều đó.
Khi hậu quả nặng nề—tiền bạc, quyền tiếp cận công việc, hồ sơ sức khỏe hoặc khôi phục tài khoản chính—hãy ưu tiên tùy chọn chống lừa đảo như mật mã khi dịch vụ cung cấp tùy chọn này. Mã email vẫn có thể hữu ích cho việc xác nhận và khôi phục địa chỉ nhưng không nên nhầm lẫn chúng với phương thức đăng nhập mạnh nhất hiện có.
Sao chép: chỉ di chuyển mã
Sau khi giao dịch khớp, hãy sao chép giá trị hữu ích nhỏ nhất. Không chọn câu xung quanh, địa chỉ người gửi, liên kết đặt lại hoặc chi tiết tài khoản. Một mục nhập clipboard gồm sáu ký tự rõ ràng sẽ giảm thiểu việc vô tình bị tiết lộ và ngăn chặn việc định dạng vô hình phá vỡ biểu mẫu.
Trình trích xuất mã xác minh của Once Email hoạt động cục bộ trong trình duyệt. Dán văn bản tin nhắn hoặc HTML, xem xét các ứng cử viên và sao chép mã mà bạn nhận ra. Công cụ này không gửi tin nhắn đã dán tới API xử lý và không quyết định liệu người gửi hoặc đích đến có đáng tin cậy hay không.
Việc trích xuất tự động được thực hiện một cách thận trọng nhưng vẫn có thể xảy ra sự mơ hồ:
- số đơn hàng có thể trông giống như mã xác minh;
- phần chân trang có thể chứa phần mở rộng điện thoại ngắn;
- một tin nhắn được trích dẫn cũ hơn có thể chứa mã đã hết hạn;
- một số dịch vụ sử dụng chữ cái cũng như chữ số;
- một tin nhắn có thể chứa cả tham chiếu giao dịch và bí mật một lần.
Hãy ghép ứng viên với từ ngữ gần đó và độ dài dự kiến của biểu mẫu. Nếu trang yêu cầu tám ký tự và trình trích xuất đánh dấu số thứ tự có sáu chữ số, hãy dừng lại thay vì cắt bớt hoặc đoán.
Cách sử dụng: dán vào trang bạn đã kiểm tra
Quay lại trang đã bắt đầu yêu cầu. Đừng nhấp vào liên kết “xác minh ngay bây giờ” mới chỉ vì nó xuất hiện bên cạnh mã. Dán một lần, gửi một lần và đọc kết quả.
Nếu mã bị từ chối, hãy kiểm tra tin nhắn gần đây nhất và đích đến trước khi yêu cầu mã khác. Mã được tạo nhanh có thể làm cho trình tự trở nên khó hiểu vì nhiều dịch vụ làm mất hiệu lực mã trước đó khi mã thay thế được phát hành. OWASP khuyến nghị hiệu lực ngắn, sử dụng một lần, giới hạn số lần thử và vô hiệu sau khi xác minh thành công. Đó là những biện pháp kiểm soát mà dịch vụ phải thực hiện; người dùng vẫn nên tránh tạo một đống tin nhắn không thể phân biệt được.
Đừng tiếp tục thử lại các biến thể. Giới hạn số lần thử không thành công nhằm ngăn chặn việc đoán và việc gửi đi lặp lại có thể khóa luồng. Nếu mã dự kiến không hoạt động, hãy khởi động lại từ trang đã biết của dịch vụ thay vì nhờ một người không xác định trợ giúp hoặc chia sẻ ảnh chụp màn hình.
Clear: hoàn thành nhiệm vụ bảo mật nhỏ
Sau khi gửi thành công, hãy thay thế nội dung trong bảng nhớ tạm bằng nội dung không nhạy cảm nếu bạn đang sử dụng thiết bị được chia sẻ hoặc được quản lý. Đóng trang xác minh và xem trước tin nhắn. Nếu thư không chứa bản ghi bạn cần, hãy để nó hết hạn trong hộp thư đến tạm thời hoặc xóa nó khỏi hộp thư lâu bền tùy theo nhu cầu lưu giữ của riêng bạn.
Dọn dẹp bảng nhớ tạm không phải là một cục tẩy thần kỳ. Trình quản lý bảng tạm, đồng bộ hóa thiết bị, phần mềm máy tính từ xa và công cụ thiết bị được quản lý có thể giữ lại dữ liệu đã sao chép theo cài đặt của chúng. Mục tiêu thực tế là tránh để lại mã đang hoạt động sẵn sàng cho lần dán vô tình tiếp theo.
Đồng thời kiểm tra xem bạn có thể đã thấy thông báo ở đâu trong khi khắc phục sự cố. Ảnh chụp màn hình, bản ghi màn hình, phiếu phát hành và chuỗi trò chuyện thường tồn tại lâu hơn mã. Ngay cả sau khi hết hạn, họ có thể tiết lộ địa chỉ, tên tài khoản, mối quan hệ dịch vụ hoặc quy trình khôi phục.
Trình trích xuất mã là một công cụ tiện lợi, không phải là công cụ tin cậy
Có ba câu hỏi riêng biệt:
| Câu hỏi | Điều gì giúp ích | Cái gì không trả lời nó |
|---|---|---|
| Chuỗi ngắn nào trông giống mã? | Trích xuất cục bộ và văn bản tin nhắn lân cận | Tính xác thực của người gửi |
| Tôi có yêu cầu giao dịch này không? | Hoạt động tài khoản và hành động gần đây của chính bạn | Một thiết kế email bóng bẩy |
| Đây có phải là trang chính xác không? | Tên miền đã đăng ký và đường dẫn điều hướng đã biết | Mã chính xác hoặc logo quen thuộc |
Việc tách biệt các câu hỏi đó sẽ ngăn ngừa một lỗi suy luận phổ biến: “công cụ đã tìm thấy mã, do đó thông báo là có thật”. Khai thác cải thiện phiên mã. Nó không xác thực người gửi, kiểm tra lịch sử tài khoản hoặc liên kết mã với một trang web.
Đối với HTML đáng ngờ, hãy sử dụng bản xem trước email được bảo vệ mà không tải nội dung từ xa. Để kiểm tra đích mà không cần mở nó từ thư, hãy giải nén nó bằng email link checker và so sánh miền đã đăng ký.
Danh sách kiểm tra dành cho nhà phát triển: biến con đường an toàn thành con đường dễ dàng
Các nhóm xây dựng quy trình xác minh không nên để lại toàn bộ gánh nặng cho người dùng. Việc triển khai hợp lý nên:
- giữ mã tồn tại trong thời gian ngắn và sử dụng một lần;
- các lần thử thất bại ở giới hạn tỷ lệ mà không đặt lại số lần thất bại bất cứ khi nào yêu cầu mã mới;
- vô hiệu hóa mã sau khi sử dụng thành công;
- tránh ghi lại hoặc giữ lại mã văn bản gốc;
- nêu hành động được yêu cầu và thời gian gần đúng trong tin nhắn;
- tránh đặt các số không liên quan gần mã;
- hỗ trợ trình quản lý mật khẩu và ngữ nghĩa tự động điền mã nền tảng khi thích hợp;
- cung cấp trình xác thực chống lừa đảo mạnh hơn cho các đường dẫn đăng nhập quan trọng;
- làm cho việc hủy bỏ và báo cáo bảo mật trở nên dễ dàng khi người nhận không đưa ra yêu cầu.
Hướng dẫn xác thực đa yếu tố của OWASP bao gồm thời gian tồn tại của mã, sử dụng một lần, giới hạn lần thử và lưu trữ. Yêu cầu về trình xác thực của NIST giải thích lý do mã xác thực email và bí mật xác thực cần các xác nhận quyền sở hữu khác nhau và tại sao mã được chuyển thủ công không có khả năng chống lừa đảo.
Thói quen 20 giây
Khi có tin nhắn tiếp theo đến:
- Tạm dừng: xác nhận rằng bạn đã thực hiện yêu cầu.
- So khớp: so sánh dịch vụ, hành động, thời gian và tên miền đã đăng ký.
- Sao chép: chỉ lấy mã, sử dụng trích xuất cục bộ nếu điều đó hữu ích.
- Sử dụng: dán nó vào trang bạn đã xác minh.
- Xóa: xóa bí mật trực tiếp khỏi bảng nhớ tạm và đóng tác vụ.
Vấn đề không phải là biến mã sáu chữ số thành một buổi lễ. Đó là thêm hai bước kiểm tra mà việc sao chép không thể thực hiện: yêu cầu có phải là của bạn hay không và đích đến có phải là thực hay không.
Mô hình mối đe dọa email tạm thời: Nó bảo vệ những gì và không bảo vệ những gì
Lập mô hình nội dung, đối thủ, biện pháp bảo vệ và giới hạn của hộp thư đến tạm thời chỉ nhận mà không gây nhầm lẫn giữa việc phân tách địa chỉ với tính ẩn danh hoặc an toàn thư.
Cách sử dụng API email tạm thời mà không cần xây dựng các bài kiểm tra dễ lỗi
Một thiết kế thực tế để kiểm tra API email tạm thời: tách biệt từng lần chạy, thăm dò ý kiến bằng thời gian chờ, xác định đúng thông báo, bảo vệ bí mật và luôn dọn dẹp.