FIDO U2F: Công Nghệ Xác Minh Hai Bước Chống Phishing

Skip to main content

FIDO U2F: công nghệ xác minh hai bước chống phishing

U2F là chữ viết tắt của Universal 2nd Factor, hiểu nôm na đây là công nghệ xác minh hai bước có thể sử dụng ở mọi nơi. Công nghệ U2F do Google Security Team cùng với Yubico và NXP sáng chế và sau đó bàn giao lại cho FIDO Alliance. Tôi không tham gia sáng chế ra công nghệ này, nhưng tôi có hỗ trợ đánh giá bộ giao thức U2F. So với các công nghệ tương đương như SMS OTP hay RSA SecurID, U2F có những sáng tạo độc đáo làm cho nó an toàn và dễ sử dụng hơn. FIDO-Yubico-YubiKeys-GfW-blog-845x321.png

Lợi thế

So sánh với các giải pháp phổ biến trên thị trường như SMS OTP, Smart OTP, Google Authenticator, hay RSA SecurID, FIDO U2F có nhiều lợi thế.
  • An toàn.
    • FIDO U2F chống được tấn công phishing. Bất kỳ giải pháp nào yêu cầu người sử dụng chép mã OTP đều không thể chống lại tấn công phishing.
    • FIDO U2F là một chuẩn mở, các doanh nghiệp cần độ bảo mật cao có thể tự đánh giá và triển khai giải pháp này mà không cần nhờ vào bên thứ ba. Các giải pháp như RSA SecurID hoàn toàn đóng, không ai biết bên trong chúng hoạt động như thế nào.
  • Dễ sử dụng.
    • Để xác minh, người sử dụng chỉ cần sờ hoặc nhấn vào một nút duy nhất trên thiết bị FIDO U2F (xem thêm demo đăng nhập vào Google sử dụng thiết bị U2F của hãng Yubico). Các giải pháp khác đều yêu cầu người dùng phải chép một mã số (thường được gọi là OTP) từ thiết bị sinh mã.
  • Tiêu chuẩn mở.
    • Người dùng mua một thiết bị FIDO U2F có thể sử dụng cho nhiều dịch vụ khác nhau, từ Internet Banking cho đến Gmail, YouTube, Dropbox, v.v. Người dùng chuyên nghiệp còn có thể sử dụng FIDO U2F để đăng nhập vào các máy chủ thông qua SSH hay VPN. Thiết bị RSA SecurID vừa đắt tiền vừa lại chỉ sử dụng được ở một nơi duy nhất.
    • Các doanh nghiệp triển khai công nghệ FIDO U2F có thể tận dụng số lượng khách hàng đã có sẵn thiết bị FIDO U2F, mà không cần phải đầu tư hay yêu cầu khách hàng mua thêm thiết bị mới. Việc phải mua thiết bị đắt tiền như RSA SecurID thường khiến người sử dụng không muốn đăng ký xác minh hai bước, khiến cho tài khoản của họ kém an toàn.
    • Vì các sản phẩm FIDO U2F có cách thức hoạt động như nhau, các doanh nghiệp triển khai công nghệ FIDO U2F tránh được tình trạng bị “locked in" vào một nhà sản xuất độc quyền. Đây là vấn đề thường gặp khi triển khai các giải pháp xác thực hai lớp như RSA SecurID, vì một khi đã triển khai rồi thì khó chuyển sang nhà cung cấp giải pháp khác được nữa.
  • Giá cả hợp lý.
    • Tùy thuộc vào yêu cầu của người dùng mà thiết bị FIDO U2F có giá dao động từ 10 USD đến 40 USD. Trong tương lai giá cả của các thiết bị này sẽ đi xuống vì càng lúc sẽ có càng nhiều nhà sản xuất.

Góc kỹ thuật: U2F chống phishing như thế nào?

Tấn công phishing trên web lợi dụng điểm yếu là người sử dụng không biết trang web mà họ đang xem có phải là trang web mà họ muốn truy cập hay không. Các hướng dẫn phòng chống phishing thường yêu cầu người sử dụng kiểm tra địa chỉ trang web, nhưng trên thực tế đa số người sử dụng không hiểu “địa chỉ trang web" là gì, yêu cầu họ tự kiểm tra là một đòi hỏi duy ý chí. Việc kiểm tra địa chỉ trang web cũng không có tác dụng là mấy, vì có rất nhiều mẹo (dụ) mà kẻ tấn công có thể sử dụng để đánh lừa ngay cả những kỹ sư máy tính chuyên nghiệp. Ngoài kiểm tra địa chỉ trang web, một lời khuyên thường gặp nữa là kiểm tra chứng chỉ SSL. Đa số các ngân hàng sử dụng chứng chỉ EV, với loại chứng chỉ này tên ngân hàng sẽ hiển thị trên thanh địa chỉ. Tuy nhiên các nhà nghiên cứu ở đại học Stanford chỉ ra rằng kẻ tấn công dễ dàng lừa người dùng bằng cách tạo một thanh địa chỉ giả mạo (tấn công "hình trong hình"). Thông thường có hai hướng khắc phục một rủi ro: bằng quy trình và bằng kỹ thuật. Yêu cầu người sử dụng kiểm tra địa chỉ trang web hay chứng chỉ SSL là một cách khắc phục rủi ro bị phishing bằng quy trình. Như đã nói ở trên, giải pháp quy trình không hiệu quả vì hay đặt kỳ vọng quá cao vào người sử dụng, vốn thường là mắt xích yếu nhất trong hệ thống. Một nguyên tắc quan trọng trong thiết kế an toàn thông tin là chỉ khi nào không thể sử dụng giải pháp kỹ thuật thì mới tính đến giải pháp quy trình. Công nghệ U2F giải quyết rủi ro phishing bằng một giải pháp kỹ thuật. Giao thức U2F loại bỏ người dùng ra khỏi quá trình kiểm tra địa chỉ trang web. Chỉ với thay đổi nhỏ này, tấn công phishing bị vô hiệu hóa hoàn toàn. Cụ thể, trình duyệt web của người dùng sẽ trực tiếp gửi địa chỉ trang web đến cho thiết bị U2F và thiết bị U2F sẽ thay người dùng kiểm tra địa chỉ có đúng hay không. Có thể hiểu hôm na với mỗi địa chỉ khác nhau thiết bị U2F sẽ trả về một mã xác thực khác nhau, do đó nếu người dùng bị lừa vào http://phishing.com, trang web này không thể lấy cấp mã xác thực của https://banking.com vì địa chỉ https://banking.com khác với http://phishing.com. Nếu Vietcombank sử dụng công nghệ U2F, kẻ tấn công đã không thể nào lấy được mã xác thực của khách hàng, vì địa chỉ trang web giả mạo khác với địa chỉ trang web Vietcombank.

Giải pháp

Tổ chức phi lợi nhuận FIDO Alliance đã chuẩn hóa U2F thành một tiêu chuẩn Internet mở. Hiện tại FIDO Alliance có hơn 150 công ty thành viên. Bất kỳ công ty nào cũng có thể đăng ký trở thành thành viên của FIDO Alliance và được quyền chế tạo các sản phẩm tuân theo chuẩn U2F mà không sợ các thành viên khác kiện vi phạm quyền sáng chế. Các doanh nghiệp, tổ chức và người sử dụng cá nhân có thể thoải mái sử dụng các sản phẩm theo công nghệ U2F không cần phải tham gia vào FIDO Alliance. Một giải pháp U2F bao gồm ba thành phần:
  • Thiết bị FIDO U2F cho người dùng cuối. Thiết bị FIDO U2F phổ biến nhất trên thị trường là Yubikey của hãng Yubico. Thiết bị rẻ nhất có giá khoảng 10 USD, hỗ trợ giao tiếp qua cổng USB, cần phải có máy tính cá nhân mới sử dụng được. Thiết bị hỗ trợ giao tiếp thông qua Bluetooth hoặc NFC, có thể sử dụng với điện thoại thông minh, được bán với giá 40 USD. Chuẩn FIDO 2.0 hứa hẹn sẽ cho phép người sử dụng dùng chính điện thoại của họ như là một thiết bị U2F.
  • Phần mềm FIDO U2F trên máy chủ. Nếu một ngân hàng muốn triển khai công nghệ U2F, máy chủ Internet Banking của họ phải hiện thực hóa giao thức U2F. Google có cung cấp một thư viện phần mềm nguồn mở mẫu ở địa chỉ https://github.com/google/u2f-ref-code.
  • Trình duyệt web của người dùng cuối. Hiện tại trong số các trình duyệt phổ biến chỉ có Google Chrome hỗ trợ U2F. Mozilla Firefox sẽ hỗ trợ công nghệ U2F trong thời gian sắp tới. Microsoft và Apple chưa có động thái gì cho thấy họ sẽ hỗ trợ U2F trên trình duyệt của họ.
Để triển khai giải pháp U2F, các doanh nghiệp cần phải có chuyên gia am hiểu về công nghệ này. Những người này sẽ giúp đánh giá các giải pháp trên thị trường, nhu cầu của doanh nghiệp và từ đó chọn ra một một chiến lược đầu tư hợp lý. Đối với người sử dụng cá nhân, mỗi người nên sắm một thiết bị FIDO U2F (thiết bị rẻ nhất có giá chưa đầy 10 USD, hoặc tự làm ở nhà, dành cho những ai rành điện tử). Món đầu tư nhỏ này sẽ giúp bảo vệ tài khoản Google, Dropbox, v.v. tránh khỏi tấn công phishing và các hiểm họa khác.

Comments

quangtien said… This comment has been removed by the author. 9:47 AM Unknown said… Rất hay, đây sẽ là công nghệ được sử dụng rộng rãi trong tương lai không xa. 1:26 AM Unknown said… Dear Anh Thái! Đối với giải pháp này có phòng chống được kiểu tấn công "mượn tạm" token để giao dịch không ạ? Vì em xem các sản phẩm của Yubico không có phương án bảo vệ khi token này bị đánh cắp, trong khi đó case dạng này rất phổ biến ở Việt Nam(theo kinh nghiệm cá nhân). Việc trang bị thêm biện pháp protect(fingerprint, password ... ) trên FIDO U2F sẽ đội giá thành sản phẩm lên rất nhiều không những thế nó cũng sẽ khiến việc sử dụng trở nên bất tiện hơn. Thanks! 11:23 PM Thai Duong said… Xin lỗi trả lời trễ.> Cảm ơn anh Thái đã có chia sẻ rất hay -- trước kia em có nhìn thấy chức năng này trên tài khoản Google của mình nhưng không tìm hiểu FIDO nó là cái gì vì có Google Authenticator rồi. Nhưng rõ ràng FIDO U2F là giải pháp tốt hơn hẳn Google Authenticator. Là người hứng thú với bảo mật, em tự hỏi liệu FIDO U2F có cho phép implement cách xác thực này bằng những phần cứng đã sẵn có như TPM hoặc TouchID trên các máy mới không? Ví dụ như một file .so để "bridge" TPM để nó trở thành một plugin cho FIDO U2F chẳng hạn.Tôi nghĩ là có. Tương lai máy tính cá nhân sẽ được tích hợp sẵn luôn một U2F agent sử dụng TPM làm nơi lưu key.> Một câu hỏi nữa liên quan đến implementation là hiện tại chỉ có các module giao tiếp bằng cổng USB. Nếu như vậy, Google/nhà băng sẽ xử lý xác thực đăng nhập trên điện thoại di động (mình assume rằng cắm module USB vào điện thoại di động rất mệt) bằng cách nào? Có specification nào của FIDO U2F để xác thực session của điện thoại trên laptop không?Yubico vừa cho ra đời module giao tiếp bằng USB-C đó bạn. Ngoài ra cũng có thể sử dụng NFC hoặc Bluetooth.> BTW - Anh Thái có hứng thú làm một cái u2f-zero không, vì em sẽ có 3 bản in có thể gửi cho anh một bản.Yup. Vậy bạn email cho tôi ở thaidn@gmail.com được không? Tôi sẽ gửi địa chỉ lại. 10:09 AM Thai Duong said… > Đối với giải pháp này có phòng chống được kiểu tấn công "mượn tạm" token để giao dịch không ạ? Vì em xem các sản phẩm của Yubico không có phương án bảo vệ khi token này bị đánh cắp, trong khi đó case dạng này rất phổ biến ở Việt Nam(theo kinh nghiệm cá nhân). Token phải đăng ký trước khi sử dụng, nhưng mỗi token có thể sử dụng cho nhiều tài khoản khác nhau. Nếu khách hàng muốn mượn thì mượn được thôi. Khách hàng xài đồ mượn thì có thêm rủi ro, nhưng họ vẫn an toàn, không bị phishing. 10:11 AM Unknown said… Anh Thái cho em hỏi như sau: Trong quá trình đăng ký U2F Token, sau khi U2F nhận được thông tin các giá trị băm từ web browser, U2F sẽ sử dụng thông tin này để sinh ra 3 khóa Kpriv, Kpubvà key handle h. Vậy key handle h là gì? và được sinh ra như thế nào? và ý nghĩa của việc sử dụng key handle h ra sao? thanks anh 9:59 PM Unknown said… Anh Thái cho em hỏi như sau:Câu hỏi 1. Trong quá trình đăng ký U2F Token, Web browser gửi đến U2F các gái trị băm, U2F Token sẽ sử dụng các giá trị băm này để sinh 3 khóa bao gồm: Kpriv, Kpub và key handle h. Vậy key handle h là gì, được sinh ra như thế nào và mục đích sử dụng key handle h là gì?Câu hỏi 2: Việc chạm tay vào nút đồng trên U2F tác dụng là gì? em đang hiểu hành động này là để ra lệnh cho U2F sinh khóa trong quá trình đăng ký và thực hiện ký số trong quá trình xác thực? hiểu như vậy đúng không ak.Thank anh, 10:05 PM Post a Comment Loading...

About

Email: thaidn@gmail.com. Tôi sinh ra ở Sài Gòn, lớn lên trên Internet. Tôi là kỹ sư an ninh mạng, từng được trao giải thưởng danh giá Pwnie Award. Hiện tại tôi làm ở Google, với vai trò kỹ sư cấp hơi cao. Tôi từng là kỹ sư trưởng Google Tink, thư viện phần mềm mã hóa đạt được hơn ba triệu download mỗi tháng. Trong thời gian vừa qua tôi thấy hơi chán, chưa biết làm gì tiếp theo, nhưng tôi vẫn đang kiên trì lãnh lương hàng tháng. I'm a security researcher, best known for my SSL attack trilogy: BEAST, CRIME, and POODLE. I was half of the team that discovered the crypto vulnerability in ASP.NET affecting millions of websites. For this work I was a recipient of the prestigious Pwnie Award. Currently I'm a senior member of the worldwide product security team at Google. My team built Project Wycheproof and Tink. My mission is to help everyone on the Internet use cryptography correctly.

Popular Posts

BEAST

Image So we gave a talk and a live demo at ekoparty last week to show how BEAST exploits a weakness in SSL to decrypt secret cookies. Please note that BEAST does not do any harm to remote servers. In fact, no packet from BEAST has ever been sent to any servers. We chose PayPal because they do everything right when it comes to server-side SSL, and that is good to demonstrate the power of BEAST, which is a client-side SSL attack. We reported the vulnerability to browser, plugin and SSL vendors several months ago (CVE-2011-3389). Current version of BEAST consists of Javascript/applet agents and a network sniffer. We have some choices for the agent. At the time we reported the bug to vendors, HTML5 WebSockets could be used to build a BEAST agent but, due to unrelated reasons, the WebSockets protocol was already in the process of changing in such a way that stopped it. We can't use the new WebSockets protocol shipped with browsers. We use a Java applet in this video, but please be aware... Read more

Làm an toàn thông tin thì học gì?

1 Giới thiệu Tôi nhận được thư từ của nhiều bạn hỏi về việc nên học gì và như thế nào để có thể tìm được việc làm và làm được việc trong ngành an toàn thông tin (information security). An toàn thông tin là một ngành rộng lớn với rất nhiều lĩnh vực. Những gì tôi biết và làm được chỉ gói gọn trong một hai lĩnh vực. Có rất nhiều mảng kiến thức cơ bản mà tôi không nắm vững và cũng có nhiều kỹ năng mà tôi không thạo. Hack tài khoản Yahoo! Mail là một trong số đó. Tôi cũng không biết cách tìm địa chỉ IP của bạn chat :-(. Xét theo  năm mức ngu dốt  thì tôi nằm ở mức "1OI - thiếu kiến thức" ở hầu hết các lĩnh vực trong an toàn thông tin. Cũng có lĩnh vực tôi nằm ở mức "2OI - thiếu nhận thức". Nhiều lần đọc sách vở hoặc nói chuyện với đồng nghiệp, tôi hay nhận ra rằng có nhiều thứ tôi không biết là tôi không biết. Theo ý của anh Ngô Quang Hưng thì đây là chuyện bình thường: Dân máy tính thường phải đọc/học rất nhiều để theo kịp sự phát triển với tốc độ ánh sáng của ng... Read more

Security and Privacy in Google Allo

Disclaimer: This post is solely my personal opinion, as someone from outside the team who consulted on security for Allo. Update: I erased a paragraph from this post because it's not cool to publicly discuss or to speculate the intent or future plans for the features of my employer's products, even if it's just my personal opinion. (I want to thank K.B. and Thiago Valverde for a lot of thoughtful discussions that help me understand what normal users really need when it comes to privacy) Unless you've been living under a rock this morning at the keynote of I/O 2016 Google announced a new messenger app called Allo . I'm not part of the Allo team, but I consult them on security, and in this post I want to share with you how I think about privacy and security in our new app. Allo offers two chat modes: normal and incognito. Normal is the default, but incognito can be activated with one touch. I want to stress that both modes encrypt chat messages when they are i... Read more

Library

  • 2023 2
    • March 1
    • February 1
  • 2022 12
    • October 1
    • September 1
    • August 1
    • July 2
    • May 3
    • April 1
    • March 1
    • February 1
    • January 1
  • 2021 39
    • December 2
    • November 2
    • October 5
    • September 3
    • August 10
    • July 5
    • May 1
    • April 2
    • March 3
    • February 3
    • January 3
  • 2020 62
    • December 4
    • November 11
    • October 4
    • September 6
    • August 9
    • July 5
    • June 1
    • May 1
    • April 12
    • March 4
    • February 1
    • January 4
  • 2019 15
    • December 1
    • November 2
    • October 4
    • August 2
    • July 1
    • June 2
    • May 1
    • April 1
    • January 1
  • 2018 27
    • November 2
    • October 2
    • September 4
    • August 3
    • July 6
    • June 2
    • May 3
    • April 1
    • March 3
    • January 1
  • 2017 24
    • December 1
    • November 3
    • October 1
    • September 1
    • July 2
    • May 7
    • April 6
    • March 2
    • January 1
  • 2016 45
    • December 2
    • November 1
    • August 10
      • FIDO U2F: công nghệ xác minh hai bước chống phishing
      • Lãnh đạo vs hoa hậu
      • The Internet of Broken Protocols: Showcase #5
      • Những người tử tế
      • Sự cố Vietcombank, một góc nhìn kỹ thuật
      • The Internet of Broken Protocols: Showcase #4
      • The Internet of Broken Protocols: Showcase #3
      • The Internet of Broken Protocols: Showcase #2
      • The Internet of Broken Protocols: Showcase #1
      • Có một Biển Đông trên không gian mạng (tiếp theo v...
    • July 1
    • June 2
    • May 1
    • April 5
    • March 4
    • February 3
    • January 16
  • 2015 64
    • December 20
    • November 10
    • October 5
    • September 6
    • August 3
    • June 7
    • May 3
    • April 5
    • March 1
    • February 1
    • January 3
  • 2014 25
    • December 4
    • November 1
    • August 2
    • July 3
    • June 2
    • May 3
    • April 4
    • March 1
    • February 4
    • January 1
  • 2013 36
    • December 2
    • November 1
    • October 7
    • September 10
    • August 2
    • July 2
    • May 3
    • April 5
    • March 2
    • January 2
  • 2012 24
    • December 5
    • November 3
    • October 6
    • September 2
    • August 2
    • July 2
    • May 1
    • April 1
    • February 2
  • 2011 17
    • December 4
    • November 3
    • October 1
    • September 1
    • August 1
    • June 1
    • May 3
    • February 1
    • January 2
  • 2010 20
    • December 1
    • October 2
    • September 3
    • August 2
    • July 2
    • June 2
    • May 2
    • April 1
    • March 1
    • February 3
    • January 1
  • 2009 28
    • December 1
    • November 1
    • October 2
    • September 2
    • August 5
    • July 9
    • June 1
    • March 2
    • February 1
    • January 4
  • 2008 46
    • November 1
    • September 1
    • July 7
    • June 7
    • May 6
    • April 3
    • March 13
    • February 1
    • January 7
  • 2007 74
    • October 2
    • September 1
    • August 5
    • July 44
    • March 16
    • January 6
  • 2006 19
    • December 4
    • November 15
Show more

Security Research

  • The POODLE attack
  • The CRIME attack
  • BEAST: Surprising Crypto Attack Against HTTPS
  • Cryptography in the Web: The Case of Cryptographic Design Flaws in ASP.NET
  • Practical Padding Oracle Attacks
  • Flickr's API Signature Forgery Vulnerability
  • Zombilizing The Web Browsers Via Flash Player 9
  • Giám sát an ninh mạng
  • Một phương pháp chống DDoS bằng xFlash
  • Lỗ hổng nghiêm trọng của SSL/TLS

Từ khóa » Phần Cứng U2f Là Gì