Por qué reemplazar Captcha con FIDO2 / Webauthn es una mala idea. Argumentos en contra de la decisión de Cloudflare

Ayer, Cloudflare anunció un reemplazo para Captcha con certificación FIDO. Puede leer sobre esto en su blog https://blog.cloudflare.com/introducing-cryptographic-attestation-of-personhood/ , y probar las soluciones ellos mismos (si tiene una clave de seguridad certificada por FIDO como Yubikey) https: / / cloudflarechallenge.com/





También puede leer las noticias de @maybe_elf https://habr.com/ru/news/t/557776/





Para aquellos que estén interesados ​​en aprender más sobre FIDO2, les aconsejo que lean este artículo https://habr.com/ru/post/354638/





Cómo funciona "FIDO Captcha" para Cloudflare:

  1. El usuario es enviado a la página Captcha.





  2. El usuario hace clic en "Soy humano".





  3. La llave de seguridad se enciende y el usuario toca la llave





  4. El navegador solicita permiso para obtener la certificación del dispositivo. Después del acuerdo de usuario, la certificación se envía a Cloudflare.





  1. Cloudflare, al tener un certificado raíz recibido del fabricante, confirma la validez del certificado de atestación.





  2. ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡





Antes de que entendamos por qué todo esto es malo, aclaremos los dos conceptos principales de atestación y captcha.





¿Qué es la atestación FIDO?

FIDO . FIDO , . ( ).





. , , a . FIDO2 GUID/UUID, U2F SKID(Subject Key Identifier). , , . , PKI.





?

́[1] ( CAPTCHA — . Completely Automated Public Turing test to tell Computers and Humans Apart —     ) — , , , : . 





. https://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D0%BF%D1%87%D0%B0





, : , , .., .





FIDO ?





: FIDO

. Cloudflare FIDO . FIDO . . , 5$ , :





Sí, son $ 60 UNO, pero los nanoclones de $ 5 funcionan igual de bien.  Este.  https://twitter.com/agl__/status/1392876159591882755
, 60$ UNO, 5$ . . https://twitter.com/agl__/status/1392876159591882755

:

, , WebAuthn API - NONE. , attestation: "direct"



API. , . - , .





El usuario debe dar su consentimiento para la prestación de la certificación del sitio web.

Chromium , EraseAttestationStatement JS "direct" "none" - , Cloudflare .





Google Enterprise https://chromeenterprise.google/policies/#SecurityKeyPermitAttestation





: FIDO

, , 700 1700. , HID 500-1000. , HID 25 , 30 , HID !





Aquí hay un ejemplo de diseño de cómo puede hacerlo todo.

: , Ryzen 3900, PCI-USB , USB , USB . 1000 Feitian U2F, Yubico Security Key 15-20$ . HID USB , . HID . 5$ 30,000 - 40,000 , , 25,000$ .





:





  • HID - https://github.com/djpnewton/vmulti





  • HID Python - https://pypi.org/project/hid/





ACS122U NFC NFC : SCARD_UNPOWER_CARD/SCARD_POWER_CARD NFC . .





: CAPTCHA

. Cloudflare :





  • 1. - , . , Cloudflare FIDO . FIDO , . , , , , . Cloudflare . .





  • 2. - . - . . : , . 1/100,000. , Cloudflare, , 1/100,000 . Cloudflare , .





  • 3. - , .





  • 4. - : ? FIDO, aka Metadata Service - MDS, , FIDO . Cloudflare , , -. , . Cloudflare , FIDO .





Cloudflare , - . Cloudflare , . .





Cloudflare. Cloudflare , . - , , , "" - FIDO . , : , .





: FIDO . - - .





Q&A

- // ?





Porque Cloudflare solo admite dispositivos certificados, cuya certificación está estrictamente controlada por el fabricante. Los autenticadores de software y Samopal simplemente fallarán.








All Articles