Giải pháp và ứng dụng công nghệ bảo mật hai lớp trong Windows logon

09:55 | 31/01/2022

Bảo mật hai lớp (Two-Factor Authentication - 2FA) là giải pháp xác thực thêm một bước vào hoạt động đăng nhập thông thường của người dùng. Lớp bảo mật thứ hai được thêm vào sẽ giúp tài khoản người dùng trở nên an toàn hơn trước các cuộc tấn công mạng. Trong bài viết này, nhóm tác giả nêu lên một số vấn đề về tấn công đánh cắp mật khẩu cùng với tính cấp thiết trong việc ứng dụng công nghệ xác thực đa yếu tố hiện nay. Trên cơ sở phân tích các lựa chọn công nghệ, bài viết trình bày tính năng kỹ thuật của Hệ thống xác thực sử dụng công nghệ bảo mật 2 lớp cho Windows logon do nhóm tác giả phát triển.

Hiện nay, ngày càng có nhiều tài nguyên được đưa lên môi trường không gian mạng, vừa với mục đích lưu trữ, đồng thời tạo điều kiện khai thác sử dụng theo yêu cầu của người sử dụng hợp thức. Các tài nguyên mạng cũng được phân quyền truy cập cho các thực thể tham gia mạng. Chính vì vậy, luôn cần có các cơ chế xác thực các thực thể trước khi cho phép truy cập đến các tài nguyên mạng theo phân quyền đã được thiết lập.

Xác thực (authentication) là việc xác minh tính hợp lệ của một thực thể hoặc người dùng nào đó. Việc xác minh này nhằm tránh giả mạo để có quyền truy cập trái phép đến tài nguyên mạng mà người giả mạo không có quyền như vậy [1]. Xác thực rất quan trọng, vì khi giả mạo thành công, việc bảo vệ tài nguyên mạng là thất bại. Hậu quả của việc giả mạo này có thể rất trầm trọng, thậm chí phá vỡ hoàn toàn các tài nguyên mạng và các hệ thống mạng đang hoạt động. Thông thường, bảo mật hai lớp thường yêu cầu người dùng nhập hai trong số ba loại xác minh trước khi đăng nhập vào tài nguyên [2]. Ba loại xác minh này bao gồm: (1) thông tin người dùng biết, (2) thông tin được cung cấp từ thiết bị người dùng sở hữu, (3) thông tin đặc trưng thuộc về người dùng.

Mặc dù bất kỳ một bộ hai yếu tố nào đề cập phía trên đều có thể xem là bảo mật 2 lớp, nhưng thông thường bảo mật 2 lớp sẽ sử dụng yếu tố (1) kết hợp với yếu tố (2). Bảo mật 2 lớp là phương pháp hiệu quả để bảo vệ người dùng khỏi những cuộc tấn công mạng như tấn công giả mạo, cũng như các cách thức chiếm dụng tài khoản khác như tấn công xen giữa (man-in-the-middle), sử dụng mã độc, trình theo dõi bàn phím.

Các hệ thống thông tin hiện nay, đặc biệt trên các hệ thống thông tin liên quan tới an ninh, quốc phòng thường sử dụng phương thức xác thực sử dụng bảo mật một lớp, hay còn gọi là xác thực một yếu tố. Với phương thức xác thực một yếu tố này, tin tặc chỉ cần đánh cắp được thông tin đăng nhập là có thể chiếm được tài khoản của người dùng, do hệ thống xác thực không đủ khả năng để nhận dạng được đâu là người dùng được phép truy cập vào hệ thống, và đâu là tin tặc giả mạo người dùng. Do đó, bảo mật hai lớp ngày càng trở nên quan trọng hơn trong việc bảo vệ người dùng trước tin tặc. Đặc biệt với những ứng dụng, dịch vụ xử lý và tương tác với nhiều thông tin nhạy cảm, thì việc ứng dụng bảo mật hai lớp để đảm bảo ngăn chặn sự truy cập trái phép của tin tặc tới các dữ liệu nhạy cảm là vô cùng cấp thiết.

MỘT SỐ GIẢI PHÁP BẢO MẬT HAI LỚP PHỔ BIẾN

Phương pháp gửi mã xác thực qua tin nhắn SMS: Đây là một lựa chọn tốt vì tính dễ dàng triển khai. Cơ chế của phương pháp xác thực này là khi người dùng nhập tên người dung và mật khẩu chính xác, thì máy chủ sẽ gửi SMS về điện thoại đã đăng ký của người dùng, người dùng tiến hành nhập mã xác thực được gửi về để hoàn tất thủ tục đăng nhập. Ưu điểm của phương pháp này là đơn giản, dễ phát triển, không cần đến điện thoại thông minh mà chỉ cần sử dụng điện thoại đời cũ cũng có thể nhận được mã xác thực. Tuy nhiên, nhược điểm là tính an toàn không cao do tin tặc vẫn có thể chặn bắt và giải mã gói tin trên kênh truyền. Ngoài ra, phương pháp này còn phụ thuộc vào hạ tầng, mạng, và việc trễ có thể làm ảnh hưởng tới tiến trình xác thực, gây khó khăn cho người dùng khi cần đăng nhập ngay vào hệ thống để thực hiện các thao tác, nghiệp vụ khác.

Phương pháp sử dụng thông báo trong ứng dụng: Ưu điểm của phương pháp này là đơn giản cho người dùng. Người dùng không cần nhập mã xác thực mà chỉ cần xác nhận trên thông báo mà hệ thống gửi về điện thoại là có thể hoàn thành việc xác thực. Tuy nhiên, nhược điểm của phương pháp là cần phát triển riêng một ứng dụng trên điện thoại thông minh, do đó cần nguồn lực lớn bởi tính đa dạng của các dòng điện thoại thông minh. Ngoài ra, điện thoại thông minh của người dùng cũng cần phải kết nối với máy chủ xác thực, yêu cầu nhiều nguồn lực, hạn chế tính linh hoạt của hệ thống, và gây khó khăn trong việc triển khai trong các mạng đóng.

Phương pháp sử dụng mã xác thực trong phần mềm bên thứ 3: Người dùng cài đặt ứng dụng xác thực 2 lớp (có thể sử dụng một số ứng dụng miễn phí có độ an toàn và ổn định cao như Authy, Google Authenticator, FreeOTP…) trên điện thoại thông minh. Ưu điểm của phương pháp này là dễ triển khai, hạn chế được vấn đề trễ so với phương pháp gửi mã xác nhận qua SMS. Ngoài ra, phương pháp này có thể thực hiện không trực tuyến, tức ngoại tuyến (offline) dựa vào cơ chế đồng bộ ngoại tuyến thông qua bộ đếm (counter) giữa hệ thống và điện thoại thông minh ở lần thiết lập ban đầu. Xác thực sinh trắc học được cho là an toàn hơn xác thực mật khẩu, nhưng cần phối hợp thêm một hoặc nhiều yếu tố khác để tăng tính bảo mật. Yếu tố an toàn hơn cả hiện nay là thiết bị vật lý như thẻ thông minh hay USB Token sử dụng mật mã PKI mà khóa bí mật được lưu vật lý trên thẻ thông minh, và việc nhân bản thiết bị thẻ thông minh cũng khó thực hiện.

XÂY DỰNG HỆ THỐNG XÁC THỰC HAI LỚP SỬ DỤNG XÁC THỰC MỘT LẦN QUA PHẦN MỀM ĐỂ ĐĂNG NHẬP WINDOWS

Nguyên lý hoạt động xác thực 2 lớp là lớp thứ nhất sẽ là đăng nhập bình thường tài khoản và mật khẩu, lớp thứ hai là một lớp bảo mật tin cậy để xác minh danh tính. Hệ thống xác thực hai lớp này cho phép người dùng sử dụng điện thoại thông minh như một trình tạo mã xác thực một lần (OTP). Mã OTP được tạo mới, cùng với mật khẩu đã đặt ở máy chủ, máy trạm cho phép người dùng đăng nhập an toàn vào hệ thống Windows.

Hệ thống xác thực sử dụng công nghệ bảo mật hai lớp có thể hoạt động ngoại tuyến, đảm bảo triển khai trên mạng Internet cũng như các mạng nội bộ chuyên dụng. Hệ thống có khả năng đồng bộ với AD (Active Directory) tự động, bảo vệ hệ thống các máy chủ, máy trạm độc lập. Ngoài ra, hệ thống được xây dựng đóng vai trò như một máy chủ có sử dụng giao thức mạng bảo mật RADIUS (Remote Authentication Dial-In User Service), kết hợp với phương pháp xác thực hai lớp bảo vệ hệ thống với các máy chủ, máy trạm, tường lửa, bộ định tuyến, bộ chuyển mạch cho các kết nối từ xa SSL, VPN, SSH… sử dụng RADIUS.

Mô hình triển khai tổng thể của hệ thống được mô tả như Hình 1. Trong mô hình có thể thấy hệ thống có thể triển khai kết hợp với AD, bảo vệ máy chủ và các máy trạm thuộc AD. Việc tích hợp với AD hoàn toàn tự động, đồng bộ với CSDL người dùng của AD thông qua giao thức LDAP. Ngoài ra hệ thống đóng vai trò như một Radius Server, thông qua giao thức Radius có thể bảo vệ tường lửa, bộ định tuyến, bộ chuyển mạch cho các kết nối từ xa, bảo vệ các thiết bị vùng biên.

Hệ thống được đóng gói hoàn chỉnh bao gồm phần cứng, hệ điều hành, phần mềm cài đặt và các tài liệu cài đặt triển khai.

Phần cứng: Máy tính với cấu hình hợp lý, ví dụ như Mini Box (Hình 1) chạy ổn định, tiết kiệm và tiện dụng. Hệ điều hành: Phần mềm có thể cài đặt trên hệ điều hành Windows 10 cho máy chủ và máy khách đối với cả 2 nền tảng x86 và x64.

Phần mềm cài đặt bao gồm:

- Phần mềm máy chủ: Phần mềm quản trị tập trung, được cài đặt tại một máy chủ riêng, bao gồm các mô-đun phần mềm thực hiện xác thực tập trung theo mô hình máy chủ/máy khách.

- Phần mềm máy trạm: Phần mềm được cung cấp cho các cơ quan, đơn vị cài đặt trên máy trạm. Đây là phần mềm độc lập khi cài đặt và thiết lập nội bộ đối với từng máy tính (bao gồm máy trạm và máy chủ).

Hình 1: Mô hình triển khai hệ thống xác thực hai lớp

TÍNH NĂNG KỸ THUẬT CỦA HỆ THỐNG

Hệ thống xác thực hai lớp có phần mềm máy trạm dễ dàng cài đặt triển khai trên máy chủ AD server và quản trị máy trạm trong toàn bộ hệ thống. Các tính năng kỹ thuật được trình bày tóm tắt trong Bảng 1.

Hiện nay, hệ thống xác thực hai lớp đã được triển khai tại các đơn vị trong Bộ Tư lệnh 86 như Viện 10, Lữ đoàn 1, Lữ đoàn 2, Lữ đoàn 3 và Trung tâm 586. Hệ thống bước đầu đã mang lại hiệu quả, bảo đảm đảm an toàn thông tin cho các máy chủ tại các cơ quan, đơn vị, chống lại được các hình thức tấn công mạng phổ biến hiện nay.Tuy nhiên, các hình thức tấn công mạng ngày càng đa dạng và tinh vi hơn, chính vì vậy, các cơ quan, đơn vị cần cập nhật thường xuyên phiên bản mới nhất của hệ thống xác thực hai lớp để đảm bảo an toàn cho hệ thống máy chủ.

Bảng 1: Tính năng kỹ thuật của hệ thống xác thực 2 lớp

Hình 2: Giao diện hệ thống xác thực 2 lớp

KẾT LUẬN

Xác thực 2 lớp là phương pháp bảo mật tốt nhất để bảo vệ người dùng khỏi những cuộc tấn công đánh cắp các thông tin tài khoản như tấn công giả mạo, vét cạn, người đứng giữa, sử dụng mã độc, trình theo dõi bàn phím, trình gián điệp, thu thập dữ liệu hay kỹ nghệ xã hội… Nhóm tác giả đã nghiên cứu các phương pháp xác thực 2 lớp sử dụng công nghệ OTP, từ đó lựa chọn phương pháp Software Token xây dựng Hệ thống xác thực hai lớp cho Windows logon. Hệ thống có thể triển khai trên mạng Internet và các mạng đóng chuyên dụng, nâng cao bảo mật cho các máy chủ, máy trạm, sử dụng giao thức xác thực RADIUS nâng cao bảo mật cho các hoạt động đăng nhập kết nối từ xa.

Hệ thống xác thực hai lớp tăng độ bảo mật cho tài khoản, bảo vệ tài khoản phòng trường hợp người dùng mất mật khẩu hoặc bị đánh cắp, giải quyết các điểm yếu của phương pháp dùng tài khoản và mật khẩu thông thường. Tuy nhiên, thời gian đăng nhập sẽ lâu hơn, người dùng sẽ phải trải qua một bước bổ sung để đăng nhập vào ứng dụng và làm cho việc đăng nhập trở nên lâu hơn, thường phụ thuộc vào các dịch vụ hoặc phần cứng do bên thứ ba, vì một số doanh nghiệp không có phương tiện kiểm soát các dịch vụ bên ngoài này nếu nó xảy ra sự cố.

TÀI LIỆU THAM KHẢO

1. Jacomme, Charlie; Kremer, Steve (2021-02-01). «An Extensive Formal Analysis of Multi-factor Authentication Protocols». ACM Transactions on Privacy and Security. 24 (2): 1–34. doi:10.1145/3440712. ISSN 2471-2566. S2CID 231791299. 2. Brodkin, Jon (23 May 2013). “Kim Dotcom claims he invented two-factor authentication—but he wasn’t first”. Ars Technica. Retrieved 25 July 2019.

3. Rosenblatt, Seth; Cipriani, Jason (June 15, 2015). “Two-factor authentication: What you need to know (FAQ)”. CNET. Retrieved 2016-03-17.

4. Kan, Michael (7 March 2019). “Google: Phishing Attacks That Can Beat Two-Factor Are on the Rise”. PC Mag. Retrieved 9 September 2019.

5. Agarwal, Surabhi (7 December 2016). “Payment firms applaud RBI’s move to waive off two-factor authentication for small value transactions”. The Economic Times. Retrieved 28 June 2020.

6. Gordon, Whitson (3 September 2012). “Two-Factor Authentication: The Big List Of Everywhere You Should Enable It Right Now”. LifeHacker. Australia. Archived from the original on 17 January 2018. Retrieved 1 November 2012.

7. Bruce Schneier (March 2005). “The Failure of Two-Factor Authentication”. Schneier on Security. Retrieved 20 September 2016.

8. tweet_btn(), Shaun Nichols (Jul 2017). “Two-factor FAIL: Chap gets pwned after ‘AT&T falls for hacker tricks’”. Retrieved 2017-07-11