SMS 2FA: Phổ biến nhất nhưng lại kém an toàn nhất
(Được lược dịch từ bài viết SMS: The most popular and least secure 2FA method)
SMS không thực sự xác thực được “một thứ gì đó mà bạn có”, vì vậy đừng dùng SMS cho bảo mật 2 lớp trừ khi bạn bắt buộc phải làm điều đó! Tìm hiểu cách SMS 2FA hoạt động để hiểu lý do tại sao nhé.
Chào mừng bạn quay trở lại với series về bảo mật 2 lớp (2FA)!
Nếu bạn là người mới, hãy xem bài viết đầu tiên trong series nhằm giải thích 2FA là gì và tại sao bạn thực sự nên kích hoạt nó trên tài khoản của mình (ngay cả khi bạn có mật khẩu mạnh và duy nhất).
Trong bài viết này, chúng tôi sẽ nói về cách thức hoạt động của bảo mật 2 lớp thông qua SMS. Bài viết này sẽ thảo luận về chi tiết kỹ thuật, nêu bật các lỗ hổng bảo mật và những đánh đổi khi sử dụng SMS 2FA.
Nhắc lại một chút rằng các yếu tố xác thực liên quan đến 2FA là yếu tố Knowledge (thứ gì đó mà bạn biết) và yếu tố Possession (thứ gì đó mà bạn có).
Trước khi chúng ta đi vào các phần hay ho, hãy cùng làm rõ điều này đã. Mặc dù SMS 2FA là lựa chọn cực kỳ phổ biến với các nhà cung cấp dịch vụ, nó có nhiều lỗ hổng phổ biến khiến nó không thể đáp ứng mục đích của yếu tố xác thực Possession. Nói cách khác, bạn không thể dựa vào SMS để thực sự chứng minh “một thứ gì đó mà bạn có” với nhà cung cấp dịch vụ. Trên thực tế, Viện Tiêu chuẩn và Công nghệ Quốc gia (NIST) đã ngừng sử dụng SMS cho 2FA trong các hệ thống của chính phủ Hoa Kỳ vào tháng 6 năm 2017. Bài viết này sẽ cho bạn hiểu rõ hơn tại sao đó là một quyết định cần thiết và ta cần phải làm gì.
Đăng ký ban đầu
Hãy bắt đầu bằng quá trình đăng ký SMS 2FA điển hình.
Tôi sẽ định nghĩa “service provider” là nhà cung cấp dịch vụ web (ví dụ như Google, Facebook, Twitter…), và “phone company” có nghĩa là nhà cung cấp dịch vụ điện thoại di động của người dùng (ví dụ AT&T, Verizon…).
Sau khi chọn SMS 2FA từ cài đặt bảo mật, quá trình đăng ký tiếp theo khá dễ dàng. Đầu tiên, người dùng (hãy gọi cô ấy là Alice) nhập số điện thoại của mình. Tiếp theo, service provider tạo mật khẩu một lần duy nhất (OTP), ví dụ mã gồm 6 chữ số, rồi gửi nó đến điện thoại của Alice. Để thực hiện việc này, service provider gửi SMS có chứa OTP cho phone company, sau đó họ chuyển tiếp OTP đến thiết bị tương ứng với số điện thoại mà Alice đã nhập. Lý tưởng nhất là Alice nhận được tin nhắn chứa OTP và nhập nó vào trình duyệt của cô. Service provider xác minh rằng OTP Alice đã nhập khớp với OTP mà họ đã tạo lúc trước cho việc đăng ký SMS 2FA của Alice và kích hoạt SMS 2FA trên tài khoản của Alice.
Chúng ta sẽ thảo luận về các lỗ hổng bảo mật nên tôi phải trình bày hầu hết các bước trong workflow, nhưng trước tiên hãy xem xét quá trình xác thực khi Alice cố gắng đăng nhập vào tài khoản của mình.
Xác thực trong quá trình đăng nhập
Không có gì đáng ngạc nhiên khi quy trình đăng ký và xác thực SMS 2FA trông gần như giống hệt nhau, ngoại trừ việc Alice không cần nhập số điện thoại của mình vì nó đã được lưu khi đăng ký thành công.
Nếu quy trình xác thực hoạt động bình thường thì SMS 2FA khá là dễ dùng đối với bất kỳ ai đã từng nhận SMS trên điện thoại, tức là rất nhiều người. Tuy nhiên, chúng ta hãy xem xét kỹ hơn từng bước của workflow trên để hiểu các lỗ hổng bảo mật của SMS 2FA.
Trong sơ đồ sau, tôi khoanh vùng màu đỏ xung quanh nơi mà dễ xảy ra lỗ hổng với SMS 2FA. Yup, đó là nằm ở phone company.
Chuyện gì sẽ xảy ra nếu tôi không thể truy cập được điện thoại của mình?
Vậy, chuyện gì sẽ xảy ra nếu Alice bị mất, làm vỡ hoặc không thể truy cập điện thoại của mình? May mắn là cô ấy sẽ không phải lo lắng về việc mất tài khoản vĩnh viễn.
Alice có thể dễ dàng đến cửa hàng Verizon hoặc ATT, mua một chiếc điện thoại mới và cài đặt nó theo số điện thoại hiện có của mình. Giống như việc mọi người vẫn có thể tiếp tục gọi và nhắn tin theo cùng số điện thoại cho bạn khi bạn đổi máy, SMS 2FA sẽ tiếp tục hoạt động mà không cần sửa đổi gì.
Đợi chút. 2FA là sự kết hợp giữa hai yếu tố Knowledge (thứ gì đó mà bạn biết) và Possession (thứ gì đó mà bạn có). Thiết bị tin cậy cho yếu tố Possession của Alice (là điện thoại) đã bị mất. Nếu thiết bị đáng tin cậy thực sự là một thứ gì đó mà cô ấy đã có, vậy thì có phải Alice nên bị mất quyền truy cập vào tài khoản của mình khi mất điện thoại không? Hoặc, ít nhất cô ấy phải sử dụng mã khôi phục 2FA để truy cập vào tài khoản của mình, phải không?
Vấn đề nằm ở đây.
Mọi người có thể nhận được SMS theo hàng chục cách mà chả cần đến điện thoại. Ví dụ, bạn có thể gửi tiếp SMS của mình đến máy tính bảng hoặc địa chỉ email. Hoặc là bạn có thể truy cập SMS online thông qua trang web của nhà cung cấp điện thoại di động của bạn chỉ bằng mật khẩu (một cái gì đó bạn biết). Hoặc, có thể bạn sử dụng Google Voice hoặc dịch vụ VoIP khác cũng hoạt động hoàn toàn trực tuyến thông qua trang web hoặc ứng dụng và có thể được truy cập từ bất kỳ thiết bị nào.
Mật khẩu một lần (OTPs) được gửi qua SMS không chứng minh quyền sở hữu vật lý của một thiết bị đáng tin cậy. Do đó, SMS không thỏa mãn mục đích của yếu tố xác thực Possession.
Những độc giả thông minh sẽ nhận ra rằng nếu Alice có thể bước vào một cửa hàng và mua một chiếc điện thoại mới để giải quyết vấn đề về điện thoại bị mất của cô ấy, thì điều đó có nghĩa là ai đó có thể giả vờ là Alice để làm điều tương tự.
Cuối cùng, chúng ta có thể bắt đầu nói về các lỗ hổng bảo mật của SMS 2FA.
Con người luôn luôn là liên kết yếu nhất
Thay vì cố gắng đánh cắp điện thoại của bạn, thì tin tặc sẽ tấn công từ xa để đánh cắp số điện thoại của bạn. Vậy chính xác thì nó hoạt động như thế nào? Bằng cách lừa đảo.
Hacker có thể sử dụng tấn công phi kỹ thuật (social engineering) để thuyết phục nhân viên dịch vụ viễn thông rằng họ là bạn để kích hoạt SIM mới được liên kết với số điện thoại của bạn. Khi điều này xảy ra, tin tặc sẽ nhận được tất cả tin nhắn SMS và cuộc gọi điện thoại của bạn trên điện thoại của họ và điện thoại của bạn sẽ ngừng hoạt động.
Hiện đã có nhiều tài liệu chi tiết về các cuộc tấn công phi kỹ thuật trên SMS 2FA. Wired có một bài viết xuất sắc từ tháng 6 năm 2016 có tiêu đề là “So, hey. You should stop using texts for 2FA”, trong đó họ tập trung vào cách tin tặc tấn công tài khoản Twitter của nhà hoạt động DeRay McKesson của Black Lives Matter sau khi thuyết phục Verizon liên kết số điện thoại ứng với tài khoản đó với điện thoại của họ.
By calling @verizon and successfully changing my phone's SIM, the hacker bypassed two-factor verification which I have on all accounts.
— deray (@deray) June 10, 2016
Vào khoảng giữa năm 2016, SIM của Lorrie Cranor, người sau đó trở thành Chief Technologist của FTC, cũng bị tấn công phi kỹ thuật. Bà nhấn mạnh rằng Cục Bảo vệ người tiêu dùng New York có cảnh báo chính thức về loại lừa đảo này trên trang web của họ.
Vào cuối năm 2016, Forbes đưa tin về việc tin tặc đã sử dụng tấn công phi kỹ thuật để kiểm soát điện thoại nạn nhân và có thể đánh bại SMS 2FA để đánh cắp lượng bitcoin trị giá hàng triệu đô la. New York Times đưa tin vào tháng 8 năm 2017 rằng các cuộc tấn công nhằm chiếm quyền kiểm soát số điện thoại tiếp tục gia tăng khi tin tặc cố gắng vượt qua SMS 2FA của các tài khoản tiền ảo.
Một số người thường tranh luận rằng mặc dù SMS 2FA tồn tại các lỗ hổng tấn công phi kỹ thuật, việc tấn công này không phải là dễ dàng với hacker vì họ phải nhắm vào những người cụ thể và thu thập đủ thông tin để thuyết phục phone company rằng họ là nạn nhân. Lập luận cổ lỗ sĩ này trở nên kém thuyết phục dần theo thời gian.
Đúng là các công ty điện thoại có nghĩa vụ xác thực danh tính của bạn trước khi thay đổi tài khoản của bạn, nhưng điều đó thường liên quan đến việc đặt câu hỏi như tên, địa chỉ, số an sinh xã hội, v.v. Về cơ bản, những thông tin đó đã phổ biến rộng rãi kể từ tháng 9 năm 2017 do vụ hack Equifax.
Mới đầu tháng 2 năm 2018, T-Mobile đã gửi một thông cáo cho tất cả các khách hàng của mình cảnh báo về một vụ lừa đảo chiếm quyền điều khiển điện thoại phạm vi toàn ngành, trong đó tin tặc sẽ thuyết phục các nhà mạng điện thoại chuyển số cho một nhà mạng khác, và kiểm soát số điện thoại trong quá trình đó. T-Mobile thậm chí có một trang riêng trên trang web của họ nói về rủi ro của việc chuyển số. Rõ ràng, vấn đề này không nhỏ một chút nào.
Ngay cả khi các công ty điện thoại, bằng một cách nào đó, có thể giải quyết các rủi ro tấn công phi kỹ thuật, sẽ luôn có mối đe dọa nội bộ cần được xem xét. John McAfee, người tạo ra McAfee AntiVirus, đã bị chiếm đoạt tài khoản Twitter và suy đoán rằng ai đó tại ATT có thể đã bị tin tặc mua chuộc để chuyển số của anh ta sang một điện thoại khác. Mặc dù anh ta không có bằng chứng để chứng minh điều đó, nhưng rủi ro kỹ thuật sẽ luôn tồn tại bởi vì SMS 2FA hoàn toàn phụ thuộc vào việc các công ty điện thoại có thực hiện đúng không, và rõ ràng, họ thường không làm tốt điều đó.
Dễ bị tấn công SS7 trên mạng điện thoại
Chúng tôi đã trình bày vài lỗ hổng bảo mật xoay quanh phone company, nhưng đó chưa phải là tất cả. Bây giờ, hãy nói về các lỗ hổng kỹ thuật với SMS.
Có một lỗ hổng nổi tiếng trong mạng điện thoại hoàn toàn không dựa vào tấn công phi kỹ thuật. Signal System 7 (SS7) là một loạt các giao thức xử lý các cuộc gọi điện thoại và tin nhắn văn bản trên mạng điện thoại toàn cầu. Nó được tạo ra vào năm 1975 và, thật sốc khi nó vẫn là cốt lõi của các mạng điện thoại toàn cầu ngày nay, sau hơn 40 năm. MotherBoard nhấn mạnh rằng “bảo mật và xác thực đã không thực sự được tích hợp vào mạng SS7 ngay từ đầu, và phần lớn mạng có nhiều lỗ hổng để bị khai thác.”
Những lỗ hổng này cung cấp cho tin tặc một phương pháp kỹ thuật định tuyến tin nhắn SMS của bạn trực tiếp đến điện thoại của chúng mà không cần thông qua phone company của bạn.
Mặc dù được biết đến và thảo luận trong nhiều năm, năm 2016 là một năm phổ biến với việc khai thác các lỗ hổng SS7 trên phương tiện truyền thông.
Positive Technologies đã trình bày cách sử dụng các lỗ hổng SS7 để chiếm quyền điều khiển tài khoản WhatsApp và nhấn mạnh rằng “mạng SS7 có thể bị kẻ tấn công xâm nhập… Một sự thật rõ ràng là OTP qua SMS không an toàn, vì truyền tin trên mạng di động không an toàn.”
Forbes cũng đã viết về việc bạn có thể trả tiền cho một công ty Israel để theo dõi bất kỳ điện thoại nào trên thế giới và ghi lại tin nhắn văn bản từ xa.
Nhiều người trước đây cho rằng việc khai thác SS7 rất khó khăn và tốn kém vì mạng ban đầu được giới hạn chỉ các nhà vận hành mạng điện thoại lớn, tức là khoảng 5 nhà mạng. MotherBoard chỉ ra rằng việc đó giờ đã không còn nữa:
… Trong những năm gần đây, định nghĩa về một nhà vận hành mạng đã thay đổi. Ngày nay, trên thực tế, bất cứ ai cũng có thể trở thành một nhà vận hành mạng.. Các nhà cung cấp dịch vụ di động, nhà cung cấp VoIP và dịch vụ SMS của bên thứ ba mới nổi trên mạng di động toàn cầu đều có quyền truy cập vào SS7 và họ có thể chia sẻ quyền truy cập đó với những người khác.
Vào tháng 5 năm 2017, The Hacker News đã đưa tin rằng bọn tội phạm công nghệ cao đã khai thác lỗ hổng SS7 để lấy mã xác thực hai lớp (OTP) được gửi cho khách hàng sử dụng ngân hàng trực tuyến và rút tiền từ tài khoản ngân hàng của họ. MotherBoard cũng đưa tin về cuộc tấn công này, và một bài báo mà họ đã viết chỉ 5 tháng trước đó có tựa đề là “You’re Probably Fine with SMS-Based Two-Factor Authentication” đã được khẳng định là không còn đúng nữa.
Một bài viết trên Security Intelligence tổng hợp ngắn gọn về SS7 như sau:
…Các chuyên gia đã biết trong 30 năm qua rằng SS7 – giao thức switching được sử dụng bởi hơn 800 doanh nghiệp viễn thông toàn cầu – không hề an toàn… Quan trọng nhất là cần phải hiểu rằng mạng điện thoại không an toàn và có lẽ sẽ không bao giờ an toàn.
Phone company luôn có thể đọc được SMS của người dùng
Ngay cả khi các lỗ hổng của SS7 được xử lý bằng cách nào đó và mạng điện thoại được bảo mật, SMS vẫn là một lựa chọn tồi cho 2FA vì các tin nhắn SMS truyền qua mạng điện thoại không được mã hóa đầu cuối.
Giao tiếp giữa điện thoại của bạn và trạm phát sóng có một số biện pháp bảo mật, nhưng không có mã hóa đầu cuối thì công ty điện thoại vẫn có thể đọc nội dung của tất cả các tin nhắn SMS của bạn. Điều này bao gồm mật khẩu một lần (OTP) nhằm “chứng minh” rằng bạn có quyền sở hữu vật lý đối với điện thoại của mình.
Có khá nhiều ứng dụng chat hỗ trợ mã hóa đầu cuối. Ví dụ, hàng triệu người sử dụng Signal, một ứng dụng chat phổ biến và tôn trọng quyền riêng tư của người dùng, để gửi tin nhắn được mã hóa đầu cuối. WhatsApp và Facebook Messenger cũng đã triển khai giao thức Signal hỗ trợ mã hóa đầu cuối cho 2,4 tỷ người dùng của họ. iMessage của Apple cũng hỗ trợ mã hóa đầu cuối. Tuy nhiên, không có ứng dụng nào trong số đó sử dụng SMS như là công nghệ nền tảng. Tất cả đều yêu cầu ứng dụng (mobile hoặc desktop) và kết nối mạng để hoạt động.
Nguy cơ trước phishing và MITM attack
Biểu đồ trên cho thấy ngay cả khi SMS 2FA hoạt động bình thường, người dùng vẫn dễ dàng trở thành nạn nhân của phishing.
Trong kịch bản này, Alice nghĩ rằng cô ấy đang sử dụng trang web thật, vì vậy cô ấy đăng nhập bằng mật khẩu của mình. Các tin tặc điều hành trang fake sử dụng mật khẩu Alice cung cấp để đăng nhập vào trang thật. Nhà cung cấp dịch vụ sẽ xác minh mật khẩu của Alice, tạo OTP và gửi nó cho Alice qua SMS. Một lần nữa, Alice nghĩ rằng cô đang ở trên trang web thật và biết rằng mình đã bật SMS 2FA, vì vậy cô vui vẻ nhập OTP vào trang fake. Khi đó, tin tặc sẽ sử dụng OTP hợp lệ đó để đăng nhập thành công vào tài khoản của Alice trên trang web thật. Game over.
SMS 2FA cũng không mạnh trước Man in the Middle attack. Phishing dựa vào các trang web giả mạo trông giống thật để lừa Alice. Nếu Alice trở thành nạn nhân của một cuộc tấn công MITM, thì cô ấy thực sự được kết nối với trang web thực sự, nhưng được sử dụng kết nối HTTP không an toàn. Điều này cho phép tin tặc đọc tất cả lưu lượng truy cập web mạng, bao gồm cả OTP mà Alice nhập thủ công vào trình duyệt của cô.
Hãy nhớ rằng, HTTPS giúp ngăn chặn các cuộc tấn công MITM; bạn nên cài đặt HTTPS Everywhere để ngăn chặn điều đó.
Nguy cơ trước malware/keyloggers
Trong bài viết giới thiệu về 2FA, chúng tôi đã nêu ra rằng có nhiều phương thức 2FA dễ bị tổn thương trước malware và keylogger. SMS 2FA là một trong số đó.
Kiến trúc phổ biến của SMS 2FA không sử dụng xác minh Out of band (OOB).
Trong sơ đồ trên, kết nối giữa máy tính của Alice và service provider (bước 1 và 4) là “kênh chính”. Giao tiếp giữa service provider và điện thoại của Alice (bước 2 và 3) là “kênh phụ”. Lưu ý rằng mật khẩu (thứ mà Alice biết) và OTP (thứ mà Alice “có”) đều được gửi đến nhà cung cấp dịch vụ thông qua kênh chính. Điều này có nghĩa là tin tặc chỉ cần chiếm được kênh chính là có thể truy cập vào tài khoản. Điều này có thể được thực hiện thông qua phần mềm độc hại trên máy tính của Alice.
Nếu kiến trúc được thay đổi sao cho Alice bắt buộc phải gửi lại OTP cho nhà cung cấp dịch vụ qua kênh phụ (ví dụ như sử dụng SMS), thì điều đó sẽ được tính là OOB. Kiến trúc ngăn chặn được malware trên máy tính của Alice, nhưng điện thoại cũng có thể bị nhiễm malware. Nếu điện thoại của Alice nhiễm malware có thể đọc được SMS, thì OOB SMS 2FA vẫn sẽ tồn tại rủi ro.
Vậy nên làm gì với SMS 2FA?
Bất chấp các lỗ hổng mà chúng tôi đã trình bày ở trên, SMS 2FA vẫn là việc phương thức 2FA phổ biến nhất hiện nay.
Có nhiều lý do cho sự phổ biến đó, nhưng rõ ràng nhất là vì khả năng sử dụng. Hầu hết mọi người có điện thoại có thể nhận được SMS và họ có thể dễ dàng nhập 6 chữ số vào trình duyệt.
Một số người đưa ra lập luận rằng SMS 2FA không nên bị bỏ đi vì có 2FA còn hơn là không có gì. Thật vậy, tôi hoàn toàn đồng ý rằng SMS 2FA tốt hơn là không có gì, nhưng đó là ngụy biện rơm. Lựa chọn ở đây không phải là giữa SMS 2FA và không có gì. Mà là giữa SMS 2FA và ít nhất ba phương thức 2FA khác: time-based one-time passwords (TOTP), Push notification, và U2F. So với các lựa chọn kia thì SMS 2FA không nghi ngờ gì là phương thức yếu nhất và quyết định của NIST về việc loại bỏ SMS 2FA là một định hướng đúng đắn cho hầu hết các service provider để người dùng không phụ thuộc vào các giải pháp kế thừa không an toàn.
Nếu bạn là người dùng cuối, đây là một vài lời khuyên dành cho bạn. Đầu tiên, sử dụng trang web cực kỳ tiện dụng https://twofactorauth.org/ để tra cứu xem dịch vụ có cung cấp phương thức 2FA nào hay không. Nếu họ không hỗ trợ, hãy gửi cho họ một dòng tweet khó chịu và gây áp lực cho họ để họ hỗ trợ 2FA! Nếu dịch vụ chỉ cung cấp SMS 2FA, thì hãy kích hoạt nó! Mặc dù đây là hình thức yếu nhất của 2FA, nhưng chắc chắn là tốt hơn không có gì! Một tweet khó chịu yêu cầu các tùy chọn tốt hơn cũng ok, cái này là tuỳ bạn nhé. Nếu dịch vụ cung cấp các phương thức 2FA an toàn hơn, thì nên tránh dựa vào SMS. Có nhiều tùy chọn an toàn hơn mà vẫn rất thuận tiện để sử dụng. Chúng tôi sẽ thảo luận về tất cả các phương pháp 2FA khác trong suốt phần còn lại của series này. Hãy theo dõi nhé!
Nếu bạn là service provider – bên xây dựng phần mềm, thì quyết định của bạn chỉ phức tạp hơn một chút thôi. Như NIST khuyến nghị, bạn nên xác định mức độ rủi ro chấp nhận được đối với (các) hệ thống của mình và dữ liệu liên quan và nếu bạn chọn triển khai SMS 2FA, thì bạn cần phải đánh giá, hiểu và chấp nhận các rủi ro liên quan đến trình phương thức xác thực bị giới hạn đó và hiểu rõ rằng rủi ro có thể sẽ tăng theo thời gian.
Không khó để hiểu rằng NIST đang nói rằng SMS 2FA có quá nhiều lỗ hổng, đặc biệt là trong các dự án mới. Họ cho rằng các lỗ hổng đó SMS 2FA sẽ không được khắc phục, và nếu không kể đến các yếu tố khác thì service provider thực sự không nên hỗ trợ SMS 2FA vì nó không an toàn.
Tất nhiên, có những kịch bản cụ thể mà ta cần xem xét. Nhiều dịch vụ nhắm đến người dùng trên toàn thế giới, và có những người có thể không có khả năng sử dụng các phương thức 2FA khác. Ví dụ: nếu một phần không nhỏ người dùng của bạn không có điện thoại thông minh, thì họ không thể sử dụng Push notification hoặc TOTP. Nếu họ không đủ khả năng để mua một vài thiết bị vật lý, thì U2F cũng không phải là một lựa chọn hợp lý. Trong trường hợp này, chắc chắn SMS 2FA tốt hơn so với giải pháp thay thế duy nhất là không có 2FA!
Tuy nhiên, vấn đề chính là người dùng của bạn không đồng nhất. Bạn chắc chắn sẽ có một số người dùng có điện thoại thông minh và / hoặc có thể mua thiết bị U2F. Thông thường các dịch vụ cung cấp nhiều phương thức 2FA vì lý do này. Thật không may, quyết định sử dụng phương pháp nào thường hoàn toàn phụ thuộc vào người dùng. Duo, nhà cung cấp hàng đầu các giải pháp xác thực hai yếu tố (2FA), nhận thấy rằng chỉ có ~ 28% người dân ở Mỹ sử dụng 2FA và chỉ ~ 56% biết 2FA là gì. Trung tâm nghiên cứu Pew đã thực hiện một bài kiểm tra an ninh mạng trong đó chỉ có 18% người dùng có thể xác định chính xác cái nào là phương thức xác thực đa yếu tố (MFA).
Nhiều người dùng có thể sử dụng phương pháp 2FA an toàn hơn có thể sẽ chỉ chọn sử dụng SMS đơn giản vì nó quen thuộc và không yêu cầu thêm bước tải ứng dụng hoặc mua thiết bị khác. Rõ ràng là hầu hết người dùng không tìm hiểu sự khác biệt giữa các phương thức 2FA là gì.
Người dùng có thể biết rằng họ nên kích hoạt 2FA và thường nghĩ rằng các phương thức 2FA có độ bảo mật như nhau. Nếu họ chọn SMS 2FA, thì họ vô tình chọn sử dụng phương thức 2FA kém an toàn nhất hiện có.
Là service provider, bạn có trách nhiệm cho người dùng biết về sự đánh đổi bảo mật cơ bản giữa các tùy chọn 2FA được cung cấp. Sau đó, người dùng có thể đưa ra quyết định sáng suốt hơn và hy vọng là họ có thể hiểu được rủi ro khi chọn SMS 2FA. Trên thực tế, NIST đặc biệt yêu cầu service provider phải cung cấp thông báo rõ ràng cho người dùng về các rủi ro bảo mật của những phương thức xác thực BỊ GIỚI HẠN và tính khả dụng của các giải pháp thay thế không bị GIỚI HẠN. Nói cách khác, nếu bạn cung cấp SMS 2FA, bạn cần nói với người dùng rằng nó không an toàn và làm nổi bật các phương thức xác thực an toàn hơn mà bạn cung cấp.
Tất nhiên, nếu dịch vụ của bạn nhắm mục tiêu người dùng có điện thoại thông minh, thì tôi khuyên bạn nên tránh sử dụng SMS 2FA hoàn toàn và thay vào đó hỗ trợ TOTP và / hoặc Push. Tài khoản của người dùng sẽ được bảo mật hơn và phải đưa ra ít quyết định hơn.
Tổng kết
Nói tóm lại, SMS không thực sự chứng minh “một thứ gì đó mà bạn có”, vì vậy đừng dựa vào nó trong bảo mật 2 lớp trừ khi bạn thực sự cần. Các phương thức 2FA khác an toàn hơn nhiều và một số thậm chí còn thuận tiện hơn để sử dụng! Push không yêu cầu bạn nhập thủ công OTP vào trình duyệt, TOTP và U2F đều không yêu cầu kết nối mạng, rất phù hợp để đi du lịch. Chúng tôi sẽ trình bày chi tiết về các phương thức 2FA đó trong suốt phần còn lại của series này.
Một lời nhắc cuối cùng. Nếu bạn giao dịch tiền điện tử, bạn chắc chắn nên ưu tiên các phương thức 2FA an toàn hơn SMS 2FA bất cứ nơi nào bạn có thể. Bạn hoàn toàn không muốn mất hàng triệu đô la nếu tin tặc nhắm vào bạn và xâm nhập vào ví trực tuyến của bạn phải không?