Trong vài tháng qua, chúng ta đã chứng kiến một số lượng lớn chưa từng có các cuộc tấn công đánh cắp danh tính nhắm vào các tài khoản được bảo vệ bằng xác thực hai yếu tố (2FA), thách thức nhận thức rằng các giải pháp 2FA hiện có không cung cấp khả năng bảo vệ đầy đủ chống lại các cuộc tấn công đánh cắp danh tính. Vụ vi phạm gần đây của Uber chỉ là một ví dụ, nhưng chúng tôi thấy nhiều chiến dịch phá vỡ 2FA trên nhiều nền tảng khác nhau.
Trong hơn một thập kỷ qua, việc triển khai 2FA/MFA đã được coi là giải pháp thực tiễn tốt nhất mà các tổ chức phải thực hiện để chống lại các cuộc tấn công chiếm đoạt tài khoản, cho dù những cuộc tấn công đó dựa trên lừa đảo, brute force, đánh cắp mật khẩu hoặc bất kỳ cách gian lận nào khác để lấy thông tin đăng nhập. Và trong khi các chuyên gia trong ngành đã cảnh báo về khả năng lạm dụng các cơ chế đó trong nhiều năm, rất ít thông báo đã được thực hiện. Hầu hết đều biết rằng các cuộc tấn công chống lại 2FA là có thể xảy ra, nhưng thường cho rằng chúng quá phức tạp để thực hiện và không thực sự xảy ra trong thế giới thực.
Tuy nhiên, theo thời gian, các trường hợp tấn công thành công trở nên phổ biến hơn. Điều gì đã thay đổi để điều đó xảy ra? Câu trả lời gói gọn trong một từ: motivation (động lực).
Khi 2FA chỉ được thực hiện bởi một số ít tổ chức, những kẻ tấn công không thấy nhu cầu cấp bách phải phát triển các kỹ thuật và kỹ năng để phá vỡ nó. Họ chỉ đơn giản là tập trung vào phần còn lại của thế giới - những nơi chưa thực hiện đúng 2FA. Nhưng trong vài năm qua, chúng ta đã thấy sự gia tăng đáng kể trong việc áp dụng 2FA, thúc đẩy những kẻ tấn công xây dựng công nghệ để vượt qua 2FA. Hơn nữa, việc gia tăng chuyển sang các ứng dụng đám mây và SaaS, kết hợp với đăng nhập một lần, đã biến danh tính thành một vành đai mới, làm cho khả năng chiếm đoạt tài khoản thậm chí còn cao hơn trước.
Điều quan trọng cần lưu ý là trong khi ngành thường xuyên sử dụng MFA và 2FA thay thế cho nhau, MFA là một khái niệm chung về xác thực đa yếu tố, nghĩa là sử dụng nhiều yếu tố để xác thực người dùng. Những gì hầu hết các tổ chức có sẵn là 2FA - triển khai khả thi tối thiểu của MFA, sử dụng cơ chế tên người dùng/mật khẩu hiện có với yếu tố thứ hai được bổ sung, chẳng hạn như OTP (mật khẩu một lần), phê duyệt đẩy ứng dụng xác thực hoặc mã thông báo dựa trên SMS (tương tự như OTP).
Vấn đề với loại yếu tố thứ hai là nó không nhất thiết phải mạnh hơn mật khẩu, nó chỉ là thời gian ngắn hơn. Mật khẩu là một bí mật cung cấp khả năng bảo vệ tốt chống lại hành vi trộm cắp danh tính - nếu chúng vẫn là bí mật. Các cuộc tấn công như lừa đảo, brute force hoặc SQL injection vào cơ sở dữ liệu có mật khẩu đều được thiết kế để thực hiện một việc: khám phá mật khẩu để kẻ tấn công có thể sử dụng nó. Mật khẩu dùng một lần cũng tương tự: Nếu kẻ tấn công biết mật khẩu dùng một lần, chúng có thể sử dụng nó để xác thực. Do đó, sự bảo vệ được cung cấp bởi nó liên quan đến khoảng thời gian mà nó có thể được sử dụng: Một mật khẩu bình thường tồn tại trong nhiều tuần và nhiều tháng, nhưng mật khẩu dùng một lần có giá trị trong vài giây hoặc vài phút.
Tương tự, phê duyệt đẩy ứng dụng sử dụng các giao thức mạnh để xác thực mã thông báo một lần, nhưng kẻ tấn công sử dụng xác thực đó trong khoảng thời gian thích hợp sẽ vẫn có thể chiếm tài khoản. Trong một số năm, đây có vẻ là một cách tiếp cận hợp lý. Những kẻ tấn công sẽ thu thập mật khẩu trong một khoảng thời gian, lưu trữ chúng ngoại tuyến và sau đó sử dụng chúng ở giai đoạn sau, làm cho bất kỳ mã thông báo tiềm năng nào mà chúng đã đánh cắp trở nên lỗi thời.
Nhưng với thời gian là yếu tố hạn chế duy nhất, khi động lực ngày càng tăng, những kẻ tấn công đã phát triển công nghệ và các phương pháp để thực hiện các cuộc tấn công đó trong thời gian gần thực tế, cho phép chúng chiếm đoạt tài khoản giống như cách chúng đã làm trước khi 2FA được triển khai.
Hai kỹ thuật phổ biến nhất hiện nay để vượt qua 2FA là Adversary in the Middle (AiTM) và MFA fatigue.
- AiTM là một kỹ thuật được những kẻ tấn công sử dụng để thực hiện các cuộc tấn công lừa đảo qua proxy. Thay vì thu thập mật khẩu và cố gắng sử dụng chúng sau đó, những kẻ tấn công ủy quyền cho việc đăng nhập đã cố gắng của người dùng, bao gồm cả yếu tố xác thực thứ hai (cho dù đó là OTP hay MFA push) và tạo một phiên mới cho kẻ tấn công, trong thời gian thực, sau đó được sử dụng để truy cập trong tương lai. Với các phiên MFA có hiệu lực trong 14-30 ngày trong hầu hết các trường hợp, điều này cho phép kẻ tấn công có một khoảng thời gian đáng kể để sử dụng tài khoản bị xâm nhập. Chúng ta đã thấy điều này trong nhiều chiến dịch, bao gồm cả việc thiết lập ứng dụng xác thực MFA mới để duy trì tính ổn định vượt quá thời hạn hiệu lực của phiên MFA. Điều quan trọng cần lưu ý là mặc dù điều này có vẻ phức tạp hơn, nhưng hiện nay có ít nhất 3 bộ công cụ lừa đảo phổ biến (và một tùy chỉnh) tự động hóa quá trình này cho những kẻ tấn công.
- MFA fatigue là một kỹ thuật có thể được sử dụng để chống lại các thách thức MFA thông qua thông báo đẩy (push notifications) trong ứng dụng xác thực MFA của bạn. Trong trường hợp này, trước tiên, kẻ tấn công có thể lấy tên người dùng/mật khẩu bằng cách tiếp cận truyền thống (lừa đảo, đánh cắp cơ sở dữ liệu mật khẩu, .v.v...), trước khi tự khởi chạy cuộc tấn công MFA. Sau đó, kẻ tấn công bắt đầu cố gắng đăng nhập bằng thông tin đăng nhập bị đánh cắp. Mỗi khi kẻ tấn công làm như vậy, người dùng sẽ nhận được thông báo đẩy trên ứng dụng của họ yêu cầu họ xác minh xác thực. Đối với nhiều người dùng, đây được coi là một trục trặc trong hệ thống và họ có thể phê duyệt nó ngay lập tức hoặc chấp thuận nó vào một lúc nào đó khi họ cảm thấy mệt mỏi với các thông báo và nhấn NO mọi lúc.
Điều này có ý nghĩa gì đối với ngành của chúng ta khi hiệu quả của các giải pháp 2FA hiện tại đang bị vô hiệu hóa. Có thể an toàn khi giả định rằng hầu hết các cuộc tấn công lừa đảo sẽ sớm được hỗ trợ bởi các khuôn khổ mới này để vượt qua 2FA và chúng ta sẽ quay lại nơi chúng ta đã từng là vài năm trước, chỉ với tên người dùng và mật khẩu cố gắng đứng giữa những kẻ tấn công và dữ liệu và hệ thống.
Giải pháp là áp dụng MFA rộng rãi hơn, chuyển sang xác thực ba yếu tố (3FA) bằng cách thêm một yếu tố bổ sung, nhưng lần này là một yếu tố mà kẻ tấn công không thể sử dụng để xác thực từ một thiết bị bên ngoài khác. Điều này có thể được thực hiện bằng cách gắn xác thực người dùng với một thiết bị hoặc mã thông báo phần cứng cụ thể.
Mã thông báo phần cứng hỗ trợ giao thức FIDO2 đảm bảo chữ ký xác thực của thiết bị được liên kết với máy chủ cụ thể được sử dụng và máy chủ cụ thể đang được truy cập, khiến cho những kẻ tấn công không thể sử dụng lại nó. Nhưng các tổ chức không nhất thiết phải đi và mua một thiết bị phần cứng chuyên dụng cho nó. Việc triển khai FIDO2 tương tự (hoặc một cách tiếp cận tương tự) có thể được thực hiện trực tiếp trên thiết bị của người dùng, ràng buộc xác thực hiệu quả với các thiết bị cụ thể, khiến kẻ tấn công không thể tạo phiên mới từ thiết bị mới.
Khả năng này được cung cấp bởi hai nhà cung cấp danh tính lớn nhất, Microsoft 365 và Okta.
Với Microsoft 365, Quyền truy cập có điều kiện (là cách chính để quản lý 2FA/MFA) có thể được định cấu hình để chỉ cho phép kết nối từ các thiết bị được đăng ký trong InTune (MDM của Microsoft). Nếu được định cấu hình đúng cách, điều này làm cho các cuộc tấn công mệt mỏi AiTM hoặc MFA trở nên dư thừa. Microsoft cũng cung cấp tích hợp với Microsoft Hello cho các kết nối FIDO2 an toàn (từ các máy Windows tại thời điểm này).
Okta cũng cung cấp các khả năng tương tự thông qua tích hợp với các giải pháp MDM của bên thứ 3 (cũng như với mã thông báo phần cứng).
Tuy nhiên, có một lưu ý. Cho đến nay, rất ít tổ chức đã thực hiện các giải pháp này, vì vậy họ vẫn còn hơi non nớt. Chúng tôi đã thấy các tổ chức đang cố gắng thực hiện các giải pháp đó và họ đang gặp phải chi phí đáng kể, sự thất vọng của người dùng và rất nhiều trường hợp phức tạp mà không có giải pháp cho đến nay. Hy vọng rằng, khi ngành công nghiệp tăng cường áp dụng các giải pháp 3FA này, các nhà cung cấp sẽ phân bổ các nguồn lực cần thiết để hoàn thiện chúng, biến chúng thành cách mặc định và thách thức những kẻ tấn công đưa ra các kỹ thuật mới.
Giờ đây, rõ ràng rằng việc triển khai xác minh dựa trên phần cứng/thiết bị của yếu tố thứ ba là cách duy nhất để các tổ chức tự bảo vệ mình khỏi các cuộc tấn công lừa đảo và chiếm đoạt tài khoản khác, và do đó… 2FA đã kết thúc. 3FA muôn năm!