Xác thực hai yếu tố từ lâu đã là một chiến lược an ninh mạng để quản lý bảo mật tài khoản bằng cách kiểm soát quyền truy cập vào các hệ thống và dữ liệu nhạy cảm. Các nhà cung cấp dịch vụ trực tuyến ngày càng sử dụng 2FA để bảo vệ thông tin đăng nhập của người dùng khỏi bị tin tặc sử dụng để đánh cắp cơ sở dữ liệu mật khẩu hoặc sử dụng các cuộc tấn công lừa đảo để lấy mật khẩu người dùng.
Cùng Cánh Cam tìm hiểu về xác thực hai yếu tố (2FA) và tại sao các doanh nghiệp sử dụng chúng để hỗ trợ việc bảo vệ các thông tin nhạy cảm và mạng máy tính.
Định nghĩa của 2FA
Two-factor authentication (2FA) – xác thực 2 yếu tố , hay đôi khi được gọi là xác minh 2 bước (two-step verification) hoặc xác thực 2 yếu tố (dual-factor authentication) là phương pháp bảo mật quản lý danh tính và quyền truy cập yêu cầu hai hình thức nhận dạng để truy cập tài nguyên và dữ liệu. 2FA cung cấp cho doanh nghiệp khả năng giám sát giúp bảo vệ thông tin và mạng mà dễ bị tấn công của họ. Đây là một quá trình bảo mật cho phép người dùng cung cấp 2 yếu tố xác thực khác nhau để xác minh bản thân.
2FA được triển khai để bảo vệ tốt hơn cả thông tin đăng nhập của người dùng và nguồn tài nguyên mà những người này có thể truy cập. Nó thường được sử dụng như một phần của nỗ lực rộng lớn hơn nhằm ngăn chặn vi phạm dữ liệu và khả năng mất mát dữ liệu cá nhân.
2FA cung cấp khả năng bảo mật cao hơn so với các phương pháp xác thức mà chỉ phụ thuộc vào một nhân tố xác thực (single-factor authentication – SFA). Với SFA, người dùng chỉ cung cấp 01 yếu tố xác thực, thường là mật khẩu hoặc mật mã. Các phương pháp 2FA dựa vào việc người dung cung cấp mật khẩu làm yếu tố đầu tiên và một yếu tố thứ hai khác với yếu tố ban đầu, thường là mã thông báo bảo mật (Security token) hoặc yếu tố sinh trắc học như dấu vân tay hoặc quét khuôn mặt.
Xác thực hai yếu tố bổ sung thêm một lớp bảo mật vào quy trình xác thực bằng cách khiến kẻ tấn công khó truy cập vào thiết bị hoặc tài khoản trực tuyến của một người. Kể cả khi mật khẩu của nạn nhân bị đánh cắp, chỉ riêng mật khẩu không đủ để vượt qua kiểm tra xác thực.
Lợi ích của 2FA
Các doanh nghiệp sử dụng 2FA để giúp bảo vệ tài sản cá nhân của nhân viên và doanh nghiệp. Điều này đóng vai trò quan trọng bởi vì nó có thể ngăn chặn tội phạm mạng đánh cắp, phá hủy hoặc truy cập vào hồ sơ dữ liệu nội bộ của bạn để sử dụng cho mục đích riêng.
Uu điểm của 2FA là vô tận. Cụ thể, với 2FA, người dùng không cần mang theo hay tải xuống các trình tạo mã thống báo hoặc ứng dụng liên qan đến trình tạo mã thông báo. Hầu hết website sử dụng thiết bị di động của bạn để nhắn tin, gọi điện hoặc sử dụng 2FA được cá nhân hóa cho doanh nghiệp của họ để xác minh danh tính của bạn.
Một vài ưu điểu của 2FA có thể kể đến:
- Không cần sử dụng trình tạo mã thông báo bằng phần cứng. Các loại phương pháp 2FA này thường bị mất hoặc thất lạc. Tiu nhiên, với sự cải tiến của công nghệ, các phương pháp 2FA trở nên tiện lợi hơn bao giờ hết.
- Trình tạo mật mã hiệu quả hơn so với mật mã truyển thống. Các trình tạo này là lựa chọn an toàn hơn, vì không có hai mật mã nào giống nhau.
- Nhập mật mã tối đa ngăn chặn tội phạm mạng hack và truy cập dữ liệu nhạy cảm.
- Quy trình này dễ quản lý và thân thiện với người dùng.
Các yếu tố xác thực (authentication factor) là gì ?
Có một số cách để xác thực một người bằng nhiều phương pháp xác thực. Hầu hết các phương pháp xác thực đều dựa vào các yếu tố kiến thức, chẳng hạn như mật khẩu truyền thống. Các phương pháp xác thực hai yếu tố bổ cung thêm yếu tố sở hữu hoặc yếu tố vốn có.
-
Kiến thức (cái người dùng biết): mật khẩu, mã PIN, câu hỏi bảo mật.
-
Sở hữu (cái người dùng có): thiết bị di động, thẻ bảo mật, mã OTP, khóa bảo mật vật lý (như YubiKey).
-
Sinh trắc học (cái người dùng là): vân tay, khuôn mặt, giọng nói.
-
Vị trí (nơi người dùng đang ở): địa chỉ IP, vị trí địa lý.
-
Thời gian (khi người dùng truy cập): thời điểm đăng nhập hợp lệ.
2FA hoạt động như thế nào ?
Quy trình xác thực hai yếu tố diễn ra như sau: người dùng nhập tên đăng nhập và mật khẩu (yếu tố đầu tiên – “cái họ biết”), sau đó hệ thống sẽ yêu cầu cung cấp một yếu tố xác thực thứ hai, chẳng hạn như mã OTP (mật khẩu một lần) được gửi đến điện thoại hoặc email, ứng dụng tạo mã, hoặc sử dụng sinh trắc học như vân tay hay nhận diện khuôn mặt (yếu tố thứ hai – “cái họ có” hoặc “cái họ là”). Nếu cả hai yếu tố được xác minh thành công, người dùng sẽ được cấp quyền truy cập.
Việc kích hoạt xác thực hai yếu tố khác nhau tùy thuộc vào ứng dụng hoặc nhà cung cấp cụ thể. Tuy nhiên, quy trình xác thực hai yếu tố bao gồm cùng một quy trình chung, nhiều bước:
1. Người dùng sẽ được ứng dụng hoặc trang web nhắc nhở đăng nhập
2. Người dùng nhập những thông tin họ biết, thường là tên người dùng và mật khẩu.
3. Máy chủ của trang web tìm thấy thông tin trùng khớp và nhận dạng người dùng.
4. Đối với các quy trình không yêu cầu bảo mật, trang web sẽ tạo một khóa bảo mật duy nhất cho người dùng. Công cụ xác thực sẽ xử lý khóa và máy chủ của trăng web sẽ xác thực đó.
5. Trang web nhắc người dùng bắt đầu bước đăng nhập thứ hai. Mặc dù bước này có thể có nhiều hình thức, nhưng nhìn chung người dùng phải chứng minh rằng có thứ gì đó độc nhất (chỉ họ mới có), chẳng hạn như sinh trắc học, mã thông báo bảo mật, thẻ tín dụng, thẻ căn cước, điện thoại thông minh hoặc thiế bi di động khác,… Đây là yếu tố vốn có hoặc sở hữu như Cánh Cam đã đề cập ở phía trên.
6. Người dùng có thể phải nhập mật mã tạo một lần (OTP) trong Bước 4.
7. Sau khi cung cấp cả 2 yếu tố, người dùng sẽ được xác thực và cấp quyền truy cập vào ứng dụng hoặc trang web.
Các yếu tố trong 2FA
Xác thực 2 yếu tố là một dạng của xác thực đa yếu tố. Về mặt kỹ thuật, nó được sử dụng bất kỳ lúc nào cần hai yếu hai yếu tố xác thực để có quyền truy cập vào một hệ thống hoặc dịch vụ. Tuy nhiên, sử dụng hai yếu tố từ cùng một danh mục không cấu thành 2FA. Ví dụ, yêu cầu mật khẩu và bí mật được chia sẻ vẫn được coi là SFA vì cả hai đều thuộc loại yếu tố xác thực kiến thức.
SFA dựa trên tên người dùng và mật khẩu không phải là phương pháp an toàn nhất. Một vấn đề với xác thực dựa trên mật khẩu là nó đòi hỏi kiến thức và sự siêng năng để tạo và ghi nhớ mật khẩu mạnh. Mật khẩu cần được bảo vệ khỏi các mối đe dọa từ bên trọng, chẳng hạn như các ghi chú dán được lưu trữ bất cẩn với thông tin đăng nhập và ổ cứng bị vứt bỏ bất cẩn. Mật khẩu cũng là con mồi của các mối đe dọa bên ngoài, chẳng hạn như tin tặc sử dụng các cuộc tấn công brute-force hoặc rainbow table.
Nếu có đủ thời gian và nguồn lực, kẻ tấn công thường có thể xâm phạm hệ thống bảo mật dựa trên mật khẩu và đánh cắp dữ liệu của công ty. Mật khẩu vẫn là hình thức SFA phổ biến nhất trên máy tính xách tay và các thiết bị khác vì chi phí thấp, dễ triển khai và quen thuộc.
Nhiều câu hỏi xác thực thách thức – phản hồi có thể cung cấp bảo mật hơn tùy thuộc vào cách chúng được triển khai. Các phương pháp xác minh sinh trắc học độc lập cũng có thể cung cấp phương pháp SFA an toàn hơn.
Xác thực đa yếu tố thích ứng (adapt MFA) đưa ra một yếu tố tiên quyết vào quy trình. Hệ thống xác thực có kiến thức về các đặc điểm hoặc mẫu cụ thể liên quan đến một người dùng cụ thể. Quy trình xác thực danh tính của người dùng bắt đầu khi người dùng tương tác với ứng dụng xác thực thích ứng. Ứng dụng phân tích các đặc điểm và hành vi đã biết của người dùng – ví dụ, có bao nhiêu yêu cầu truy cập trước đó đã được thực hiện hoặc phân tích theo thời gian về thời điểm các yêu cầu được thực hiện – để xác định xem có thể thực hiện khớp hay không. Sau khi xác nhận khớp, người dùng sẽ tiến hành bước tiếp theo trong quy trình xác thực hoặc truy cập.
Các loại sản phẩm 2FA
Có nhiều thiết bị và dịch vụ khác nhau để triển khai 2FA, từ mã thông báo đến thẻ nhận dạng tần số vô tuyến đến ứng dụng điện thoại thông minh.
Các sản phẩm xác thực hai yếu tố sử dụng hai tính năng cơ bản:
- Mã thông báo được cấp cho người dùng để sử dụng khi đăng nhập.
- Cơ sở hạ tầng hoặc phần mềm nhận dạng và xác thực quyền truy cập cho người dùng đang sử dụng mã thông báo của họ một cách chính xác.
Mã thông báo xác thực có thể là thiết bị vật lý, chẳng hạn như móc chìa khóa hoặc thẻ thông minh, hoặc phần mềm, chẳng hạn như ứng dụng di động hoặc máy tính để bàn tạo mã PIN để xác thực. Các mã xác thực này được gọi là mật khẩu một lần (OTP – one time passcode). Mã xác thực là một chuỗi ngắn được liên kết với một thiết bị, người dùng hoặc tài khoản cụ thể và chỉ có thể được sử dụng một lần như một phần của quy trình xác thực. Máy chủ tạo OTP và các thiết bị hoặc ứng dụng xác thực được sử dụng để nhận dạng chúng là xác thực.
Các tổ chức cần triển khai một hệ thống để chấp nhận, xử lý và cho phép hoặc từ chối quyền truy cập của người dùng xác thực bằng mã thông báo của họ. Các hệ thống này có thể được triển khai dưới dạng phần mềm máy chủ được dưới dạng phần mềm máy chủ hoặc dưới dạng máy chủ phần cứng chuyên dụng. Các nhà cung cấp bên thứ ba cũng cung cấp dịch vụ xác thực.
Một khía cạnh quan trọng của 2FA là đảm bảo người dùng đã xác thực được cấp quyền truy cập vào tất cả các tài nguyên mà họ được chấp thuận và chỉ những tài nguyên đó. Do đó, một chức năng chính của 2FA là liên kết hệ thống xác thức với dữ liệu xác thực của tổ chức.
Ví dụ, Mỉcrosoft hỗ trợ 2FA trong Windows 10 bằng Windows Hello, một tùy chọn không cần mật khẩu cho tài khoản Microsoft. Nó cũng xác thực người dùng thông qua Micrsoft Active Directory, Azure AD và giao thức xác thực Fast IDentity Online 2.
Mã thông báo phần cứng 2FA hoạt động như thế nào
Mã thông báo phần cứng cho 2FA có sẵn hỗ trợ các phương pháp xác thực khác nhau. Một mã thông báo phần cứng phổ biến là YubiKeyb của Yubico, thiết bị USB hỗ trợ OTP, mã hóa và xác thực khóa công khai, và giao thức Universal 2nd Factor do FIDO Alliance phát triển.
Khi người dùng có YubiKey đăng nhập vào một dịch vụ trực tuyến hỗ trợ OTP, chẳng hạn Gmail, GitHub hoặc WordPress, họ sẽ cấm YubiKey vào cổng USB của thiết bị, nhập mật khẩu, nhấp vào trường Yubikey và chạm vào nút Yubi9Key sẽ tạo OTP và nhập vào trường đó.
OTP (One-time passcode/ password) là mật khẩu nhập một lần, gồm 44 ký tự. 12 ký tự đầu tiên là ID duy nhất đại diện cho khóa bảo mật đã đăng ký tài khoản. 32 ký tự còn lại chứa thông tin được mã hóa bằng khóa mà chỉ thiết bị và máy chủ của Yubico biết, được thiết lập trong quá trình đăng ký tài khoản ban đầu.
OTP được gửi từ dịch vụ trực tuyến đến YubiKey để xác thực. Sau khi OTP được xác thực, máy chủ xác thực Yubico sẽ gửi lại tin nhắn xác nhận rằng mã thông báo hợp lệ đối với người dùng và quá trình 2FA đã hoàn tất. Người dùng đã cung cấp hai yếu tố xác thực. Mật khẩu là yếu tố kiến thức và YubiKey là yếu tố sở hữu.
2FA cho thiết bị di động
Thiết bị di động đáng tin cậy là thiết bị mà người dùng cụ thể kiểm soát và thường xuyên sử dụng cho các giai dịch yêu cầu quyền truy cập an toàn. Hệ thống xác thực biết thiết bị và với kiến thức đó, sử dụng thiết bị để bỏ qua các bước trong quy trình xác thực. Ví dụ, có thể sử dụng số điện thoại đáng tin cậy để nhận mã xác minh qua tin nhắn văn hoặc cuộc gọi điện thoại tự động. Người dùng phải xác minh ít nhất một số điện thoại đáng tin cậy để đăng ký 2FA trên thiết bị di động.
Điện thoại thông minh cung cấp nhiều khả năng 2FA, cho phép các công ty sử dụng những gì phù hợp nhất với họ. Một số thiết bị có thể nhận dạng dấu vân tay, sử dụng camera tích hợp để nhận dạng khuôn mặt hoặc quét mống mắt hoặc sử dụng micro để nhận dạng giọng nói. Điện thoại thông minh có thể được trang bị GPS có thể xác minh vị trí như một số yếu tố bổ sung. Dịch vụ giọng nói hoặc tin nhắn ngắn (SMS) cũng có thể sử dụng làm kênh để xác thực ngoài băng tần.
Apple iOS , Google Android và Windows 10 đều có các ứng dụng hỗ trợ 2FA, cho phép điện thoại hoạt động như thiết bị vật lý để đáp ứng yếu tố sở hữu. Các nền tảng như Cisco Duo, Okta Multifactor, RSA Security SecurlID và Yubikey cho phép khách hàng sử dụng các thiết bị đáng tin cậy của họ cho 2FA. Họ thiết lập rằng người dùng có thể được tin cậy như một yếu tố xác thực.
Ứng dụng xác thực thay thế nhu cầu lấy mã xác minh bằng tin nhắn văn bản, cuộc gọi thoại hoặc email. Ví dụ, để truy cập trang web hoặc dịch vụ dựa trên web hỗ trợ Google Authenticator, người dùng nhập tên người dùng và mật khẩu làm yếu tố kiến thức của họ. Sau đó, họ được nhắc nhập số gồm 6 chữ số. Thay vì phải đợi vài giây để nhận tin nhắn văn bản, trình xác thực sẽ tạo số cho họ. Những con số này thay đổi sau mỗi 30 giây và khác nhau cho mỗi lẫn đăng nhập. Bằng cách nhập vào đúng số, người dùng hoàn tất quá trình xác minh và chứng minh quyền sở hữu thiết bị là đúng, đây chính là yếu tố sở hữu.
Thông báo đẩy cho 2FA (Push notification)
Thông báo đẩy là một dạng xác thực phi mật mã, thực hiện xác thức người dùng thông qua việc gửi thông báo trực tiếp đến một phần mềm bảo mật trên thiết bị của người dùng, cảnh báo người dùng rằng nỗ lực xác thực đang được thực hiện. Người dùng có thể xem chi tiết về nỗ lực xác thực, đồng thời có thể chấp thuận/ từ chối truy cập, thường chỉ bằng 01 lần chạm. Nếu người dùng chấp thuận yêu cầu xác thực, máy chủ nhận được yêu cầu đó và đăng nhập người dùng vào web – app.
Xác minh người dùng qua thông báo đẩy bằng cách xác nhận thiết bị đó – thường là thiết bị di động – đã đăng ký với hệ thống xác thực đnag nằm trong tay người dùng. Nếu kẻ tấn công xâm phạm thiết bị, thông báo đẩy cũng sẽ bị xâm phạm. Thông báo đẩy loại bỏ các mối đe dọa như truy cập trái phép, tấn công trung gian,…
Thông báo đẩy thường cho thấy khả năng bảo mật tốt hơn so với các phương thức xác thức khác, mặc dù vậy vẫn có những rủi ro bảo mật nhất định. Ví dụ, người dùng có thể vô tình chấp thuận yêu cầu xác thực bởi họ quen với việc nhấn chấp thuận khi họ nhận được thông báo đẩy.
Tiêu chuẩn xác thực
Dưới đây là các giao thức xác thực tiêu chuẩn mở tạo thành cơ sở cho các công cụ xác thực khác nhau hỗ trợ cho 2FA:
- FIDO: Được phát triển bởi Liên minh FIDO, tiêu chuẩn mở này sử dụng mật mã khóa công khai. Tiêu chuẩn này được thiết kế để loại bỏ nhu cầu sử dụng mật khẩu, thay thế chúng bằng khóa thông hành chống lừa đảo.
- OAuth 2.0: – Viết tắt của open authorization, OAuth là một tiêu chuẩn mở định nghĩa một framework ủy quyền bảo vệ tài nguyên hệ thống, chẳng hạn như tệp hay ứng dụng. Nó cung cấp ủy quyền cho các giao diện lập trình ứng dụng (API) và ứng dụng dựa trên trình duyệt.
- SAML (Security Assertion Markup Language): Được phát triển bởi Tổ chức Phát triển các Tiêu chuẩn Thông tin có cấu trúc (the Organization for the Advancement of Structured Information Standards), SAML là một tiêu chuẩn mở cho quyền đăng nhập một lần vào các ứng dụng dựa trên trình duyệt, chẳng hạn như website.
2FA có thực sự bảo mật ?
2FA tăng cường khả năng bảo mật, tuy nhiên những hệ thống này chỉ an toàn bằng thành phần yếu nhất của chúng. Chẳng hạn, mã thông báo phần cứng (hardware token) phụ thuộc vào sự bảo mật của bên phát hành hoặc của nhà sản xuất.
Quá trình khôi phục tài khoản trong các hệ thống này cũng có thể bị phá hoại khi nó được sử dụng để đánh bại xác thực hai yếu tố. Các quá trình khôi phục thường đặt lại mật khẩu hiện tại của người dùng và gửi tới email một mật khẩu tạm thời để người dùng có thể đăng nhập trở lại, bỏ qua quá trình 2FA.
Tương lai của 2FA
Ngày nay, các môi trường đòi hỏi bảo mật cao hơn đang bắt đầu sử dụng xác thực 3 yếu tố – 3FA. Thường thì chúng sẽ liên quan đến việc sở hữu một mã thông báo vật lý và một mật khẩu được sử dụng kết hợp với dữ liệu sinh trắc học, chẳng hạn như quét dấu vân tay hoặc giọng nói. Các yếu tố như vị trí địa lý, loại thiết ị và thời gian trong ngày cũng được sử dụng để xác định xem người dùng có nên được xác thực hay ngăn chặn.
Các nhân tố xác thực khác đang nổi lên có thể kể đến như sinh trắc học hành vi, chẳng hạn như tốc độ dài phím bấm, tốc độ gõ và chuyển dộng chuột của người dùng. Những yếu tố này được theo dõi một cách kín đáo theo thời gian thực thay vì kiểm tra xác thực một lần duy nhất trong quá trình đăng nhập.
Việ c phụ thuộc vào mật khẩu như là một phương thức xác thực chính là điều rất phổ biến. Nhưng nó đã không còn đáp ứng cho nhu cầu của công ty, các cá nhân về sự bảo mật hay trải nghiệm người dùng. Mặc dù các công cụ bảo mật cũ như quản lý mật khẩu va MFA, cố gắng giải quyết các vấn đề về tên người dùng và mật khẩu, nhưng chúng lại phụ thuộc vào một kiến trúc về cơ bản đã lỗi thời: cơ sở dữ liệu mật khẩu.
Do đó, nhiều tổ chức đã chuyển sang các cách thức xác thực không cần mật khẩu. Các phương pháp chủ yếu là sinh trắc học và giao thức bảo mật cho phép người dùng xác thực an toàn trong các ứng dụng mà không cần phải nhập mật khẩu. Đối với các doanh nghiệp, điều này có nghĩa là nhân viên có thể truy cập công việc của họ mà không cần nhập mật khẩu, trong khi đội ngũ công nghệ thông tin vẫn duy trì sự kiểm soạt chặt chẽ với mỗi lần đăng nhập.
Kết luận
Cánh Cam vừa giới thiệu đến bạn những khái niệm xoay quanh xác thực hai yếu tố, bao gồm các thành phần, yếu tố xác thực, cũng như cách thức hoạt động của phương pháp bảo mật này. Mong rằng thông qua bài viết, Cánh Cam đã mang đến cho bạn thêm những hiểu biết hữu ích về xác thực và bảo mật.
>>Xem thêm
Bio Link là gì ? Các nền tảng Bio Link phổ biển
Visual Basic là gì ? Các đặc điểm vượt trội của Visual Basic