Hemos estado indagando en el mundo online para así darte la solución para tu inquietud, si tienes preguntas deja la pregunta y te respondemos porque estamos para ayudarte.
Solución:
Las respuestas que obtuve han sido buenas, pero quería proporcionar un poco más de profundidad, yendo específicamente a por qué existe el sistema, lo que debería explicar un poco más sobre para qué sirve.
Descargo de responsabilidad: Si bien ahora trabajo para Google, no sabía nada sobre este proyecto en el momento en que se escribió esta respuesta. Todo lo que se informa aquí se obtuvo de fuentes públicas. Esta publicación es mis propias opiniones, observaciones y comentarios, y no representa las opiniones, puntos de vista o intenciones de Google.
Aunque vale la pena señalar que he estado usando esto y jugando con él durante bastante tiempo, y como alguien que se ha ocupado mucho de la ingeniería social y la absorción de cuentas, estoy desproporcionadamente impresionado con lo que se ha logrado aquí.
Por qué se necesitaba algo nuevo
Piense en esto: Google implementó la autenticación de dos factores hace mucho tiempo. Esta es una empresa que se preocupa profundamente por la seguridad, y la suya ha sido de primera categoría. Y aunque ya utilizaban la mejor tecnología disponible, la seguridad adicional que ofrece U2F por encima de los 2 factores tradicionales es tan significativa que valió la pena el tiempo y el dinero de la compañía para diseñar, desarrollar, implementar y respaldar un sistema de reemplazo que ni siquiera ellos mismos venden. Sí, es un movimiento muy socialmente consciente de ellos seguir este camino, pero no se trata solo de la comunidad. Google también lo hizo porque ellos mismos necesitan la seguridad que proporciona U2F por sí sola. Mucha gente confía en Google con su información más valiosa, y algunos en entornos políticos peligrosos incluso confían en Google con su vidas. Google necesita la seguridad para poder cumplir esa confianza.
Todo se reduce al phishing. El phishing es un gran problema. Es extremadamente común y Super efectivo. Para los ataques contra objetivos endurecidos, el phishing y los ataques similares son realmente la mejor opción para un atacante, y ellos lo saben. Y más importante:
Nuestra protección contra el phishing es ridícula. Tenemos autenticación de dos factores, pero las implementaciones ofrecen poca defensa. Sistemas comunes como SecurID, Google Authenticator, bucles de correo electrónico, teléfono y SMS: todos estos sistemas ofrecen sin protección en absoluto contra los ataques de phishing de tiempo de uso. Una contraseña de un solo uso sigue siendo una contraseña y se puede revelar a un atacante.
Y esto no es solo teórico. Hemos visto estos ataques realmente llevados a cabo. Los atacantes, de hecho, capturan respuestas de segundo factor enviadas a sitios de phishing y las reproducen inmediatamente en la página de inicio de sesión real. Esto realmente sucede, ahora mismo.
Entonces di que eres Google. Ha implementado las mejores protecciones disponibles y puede ver que no son suficientes. ¿A qué te dedicas? Nadie más está resolviendo este problema por usted; tienes que averiguarlo.
La solución es sencilla; La adopción es el problema real
Crear una solución de segundo factor que no pueda ser phishing es sorprendentemente simple. Todo lo que tiene que hacer es involucrar al navegador. En el caso de U2F, el dispositivo crea un público / privado key emparejar para cada sitio y graba la identidad del sitio en el “Identificador de clave” que se supone que el sitio debe utilizar para solicitar autenticación. Luego, el navegador verifica la identidad del sitio cada vez antes de intentar la autenticación. La identidad del sitio puede incluso vincularse a un público TLS específico. key. Y dado que es un protocolo de desafío-respuesta, la reproducción tampoco es posible. Y si el servidor filtra accidentalmente su “Identificador de clave” en una violación de la base de datos, aún no afecta su seguridad ni revela su identidad. El uso de este dispositivo elimina eficazmente el phishing como una posibilidad., que es muy importante para una organización sensible a la seguridad.
Ni la cripto ni su aplicación son nuevas. Ambos son bien entendidos y confiables. La tecnología nunca fue la dificultad, la dificultad es la adopción. Pero Google es uno de los pocos actores que están en condiciones de superar las barreras que normalmente retienen soluciones como esta. Dado que Google es el navegador más popular, pueden asegurarse de que sea compatible de forma predeterminada. Dado que fabrican el sistema operativo móvil más popular, pueden asegurarse de que también funcione. Y dado que ejecutan el servicio de correo electrónico más popular, pueden asegurarse de que esta tecnología tenga un caso de uso relevante.
Más abierto de lo necesario
Por supuesto, Google podría haber aprovechado esa posición para darse una ventaja competitiva en el mercado, pero no lo hizo. Y eso es muy bueno. Todo el mundo necesita este nivel de protección., incluidos Yahoo y Microsoft con sus ofertas de correo electrónico de la competencia. Lo bueno es que fue diseñado para que incluso los competidores puedan hacerlo suyo de forma segura. Nada en la tecnología está vinculado a Google, incluso el hardware es completamente independiente del uso.
El sistema fue diseñado asumiendo que usted no lo haría utilícelo solo para Google. A key La característica del protocolo es que en ningún momento el token identifica sí mismo. De hecho, las especificaciones establecen que este diseño fue elegido para evitar la posibilidad de crear una “supercookie” que podría usarse para rastrearte entre servicios de colusión.
Por lo tanto, puede obtener un solo token y usarlo de manera segura no solo en Gmail, sino también en cualquier otro servicio que admita U2F. Esto le da muchas más razones para depositar el dinero por uno. Y desde que Yubico publicó implementaciones de referencia del software de servidor en PHP, Java y Python, la puesta en marcha y ejecución de la autenticación en su propio servidor está al alcance de incluso las tiendas pequeñas.
U2F es capaz de usar un canal encriptado usando public key crypto para garantizar que SÓLO el servidor correcto pueda obtener el token de una sola vez. Esto significa que conectarlo cuando se encuentra en un sitio de phishing significa que no sucede nada: no pueden ingresar a su cuenta. En su lugar, tienen que depender de ataques técnicos como XSS y malware local.
Se supone que puede ocultar el hecho de que estás usando el mismo dispositivo para múltiples servicios, por lo que alguien que controla tanto el sitio A como el sitio B no puede ver que usaste el mismo dispositivo en ambos. Se supone que es seguro.
Parece ser la mejor opción disponible ahora, principalmente debido al proceso de estandarización en curso y al amplio apoyo e impulso para ello.
De la especificación FIDO
Durante el registro con un servicio en línea, el dispositivo cliente del usuario crea un nuevo key par. Conserva lo privado key y registra al público key con el servicio online. La autenticación la realiza el dispositivo cliente que prueba la posesión de la propiedad privada. key al servicio firmando un desafío. El cliente es privado keys solo se pueden usar después de que el usuario los desbloquee localmente en el dispositivo. El desbloqueo local se logra mediante una acción segura y fácil de usar, como deslizar un dedo, ingresar un PIN, hablar por un micrófono, insertar un dispositivo de segundo factor o presionar un botón.
Todavía no he explorado completamente la especificación. Pero:
-
¿En qué se diferencia fundamentalmente U2F de OTP?
U2F no está usando una OTP. Realmente se trata de la autenticación del sitio y el uso de una propiedad privada. key como factor.
-
¿Cómo afecta U2F la viabilidad de los ataques de phishing en comparación con los sistemas OTP?
Los sistemas OTP de duración determinada hacen un excelente trabajo en la lucha contra el phishing (robo de credenciales) porque son difíciles de robar. U2F está realmente destinado a combatir los ataques MiTM.
-
¿Cuán factibles son los ataques no interactivos contra U2F (por ejemplo, fuerza bruta, etc.)?
Los ataques de fuerza bruta no serían realmente el camino a seguir. Querrías robar el keys – ya sea del servidor o del cliente. Cómo maneja el malware, etc. key. La implementación será muy importante.
-
¿Puedo usar de forma segura un solo token U2F con múltiples servicios independientes?
Claro, es por eso que público / privado keys son mejores que los secretos compartidos.
-
¿Cómo se compara U2F con otras ofertas comerciales? ¿Hay mejores soluciones disponibles?
Solo puedo hablar con el nuestro, que está tanto en nuestra versión comercial como en la de código abierto. La principal diferencia es que almacenamos un hash del certificado ssl del sitio de destino en el servidor de autenticación y lo entregamos con una OTP cifrada por el servidor de autenticación privado. key. Antes de que el usuario obtenga la OTP, el token de software obtiene el certificado del sitio de destino a través de la conexión del usuario, lo codifica y compara los dos. Si coinciden, se presenta la OTP, se copia en el portapapeles y el navegador se inicia en la URL. Si no lo hacen, se da un error.
Por lo tanto, no se necesitan cambios en el servidor o el navegador. los keys se almacenan en un servidor separado del servidor web. La OTP es parte del proceso (aunque puede eliminarse u ocultarse). Es de código abierto. Por otro lado, U2F tiene impulso, a pesar de ser un consorcio de ‘pago por juego’. U2F está disponible en algunas ofertas de hardware “seguro”. Los nuestros se pueden implementar en ellos (por ejemplo, una unidad cripto-USB). YMMV.
Más información sobre la autenticación mutua de WiKID está aquí: https://www.wikidsystems.com/learn-more/technology/mutual_authentication y un procedimiento aquí: http://www.howtoforge.com/prevent_phishing_with_mutual_authentication.
Más adelante puedes encontrar las interpretaciones de otros desarrolladores, tú de igual manera tienes la habilidad dejar el tuyo si te apetece.