Hace 5 años | Por ccguy a theverge.com
Publicado hace 5 años por ccguy a theverge.com

Hoy, el World Wide Web Consortium (W3C) aprobó WebAuthn, un nuevo estándar de autenticación que busca reemplazar la contraseña como una forma de proteger sus cuentas en línea. Anunciado por primera vez el año pasado, WebAuthn (que significa Autenticación Web) ya es compatible con la mayoría de los navegadores, incluidos Chrome, Firefox, Edge y Safari. Su publicación como estándar oficial de la web debería allanar el camino para una adopción más amplia por parte de los sitios web individuales.

Comentarios

D

#1 Las yubi y las autenticaciones por hardware se llevan usando años como estándar en empresas como google o microsoft que desecharon las contraseñas manuales totalmente.

Si no se han implantado ya a nivel general es porque la gente gente no está por la labor de pagar 100€ por un par de yubis.

Vamos, que el que lo quiera lo tiene disponible y más que probado y testado como el estándar de seguridad más alto.

D

#13 Buenas, no conocía las Yubikeys y me interesa bastante el tema de cara a valorar una posible implantación, ¿podrías pasarme algún link para informarme mas? Veo mucha info por google pero la mayoría son publireportajes, gracias

k

#13 100€ por un par? yo tengo una llave de otra marca que me costo 8 euros y la estoy usando ahora mismo con mis cuentas de google.

D

#45 no todas soportan las mismas clases de autorizaciones o son keys con nfc, o resistentes a golpes, etc.


las yubi son unos 50€

k

#62 totalmente de acuerdo, aunque te aseguro que la mía funciona bien lo de meterle golpes y tal... Mejor no

xkill

Acabo de probar con Firefox y Chrome en el móvil y con el primero ni me pedía el dispositivo de autenticación, con el segundo si, pero no dejaba continuar (problema del navegador) así que todavía le queda....

D

Osea que con robar el hardware ya estaría?

p

#19 ¿Si mi novia coge la tarjeta ya puede entrar? ¿Si le mango la tarjeta a mi colega ya puedo trolear su cuenta de Facebook? ¿Si pierdo la tarjeta por la calle ya pueden usarla en todos mis servicios? ¿O tengo que protegerlo con una contraseña también como dice #20? ¿Si pierdo la tarjeta o se me olvida puedo seguir entrando? ¿Si es un pincho USB, como lo utilizo en un smartphone con un adaptador OTG? ¿Tengo que cargar siempre con él? Porque las contraseñas las llevo siempre encima.

t

#31 Lo dices como si las contraseñas fueran infalibles, y nadie las apuntase en un postit, o supiera la de su novia.

Todos los sistemas tienen puntos flacos, no existe el sistema perfecto y fantabuloso (porque entonces lo estaríamos usando, no discutiendo). Se trata de escoger el menos malo y el que tenga un mejor compromiso entre comodidad y seguridad.

daphoene

#52 Si hablamos, no ya del mejor sistema, sino de alguno sencillo y seguro que sirva para todo, no puede estar basado en hardware ( pincho, tarjeta, DNIe ) y no puede estar basado solamente en medidas biométricas.

Con las contraseñas tenemos dos problemas de seguridad:

1) Que se pueda acceder a un sistema que no deberíamos
2) Que la contraseña se vea comprometida por un filtrado de los datos que se han guardado

En ambos casos, la responsabilidad la delegamos en el usuario, y debería ser principalmente responsabilidad del sistema.

En el primero, se trata de evitar que puedan entrar por fuerza bruta. Si tú en un servicio no permites más de 3-5 fallos antes de bloquear la cuenta, no puedes hacer un ataque por fuerza bruta, por muy sencilla que sea la contraseña, no la vas a adivinar en 5 intentos ( por ejemplo, el pin del cajero o del móvil tiene tres intentos, y son sólo 4 dígitos ).

En el segundo caso, la responsabilidad de que los datos no sirvan aunque se produzca una filtración de los datos, sigue siendo del sistema, utilizando medidas para almacenar estas contraseñas de la forma más segura posible, cifradas, con salt y lo que sea necesario. Aquí puede haber un ataque por fuerza bruta, pero debemos ser capaces de proteger al usuario también contra esto.

El único problema a mayores que puede proteger un pincho, es que el usuario utilice la misma contraseña para cosas importantes y para registrarse en sitios dudosos, o no dudosos pero poco escrupulosos. Y eso no lo vas a evitar, salvo que obligues a todos los sitios a utilizar este modelo, o que los sitios 'más importantes' lo utilicen todos. En este último caso, la ventaja está en centralizar el sistema de autenticación, pero si se basa en introducir un pincho, no es un buen sistema. Contraseña más código sms, como muchos 2FA es bastante más versátil y bastante seguro.

t

#64 Es que, al final, la conclusión es que usar sólo un sistema tiene muchos problemas, y lo suyo es combinar varios. Contraseña+2FA, pincho hardware+algo biométrico... Y cuantas menos cosas tengas que memorizar, mejor.

De hecho, la evolución ideal sería algo tipo captcha, que combinase alguna información biométrica con un análisis de cómo tecleas o mueves el ratón, con lo que tendríamos casi casi el sistema ideal: no haría falta recordar nada, y sería un sistema infalible que no se puede robar ni "prestar" a nadie.

Cehona

WebAuthn Debug Terminal
-----------------------
Register start:

Sending Message to Server:
>>>>>>>>>>>>>>>>

>>>>>>>>>>>>>>>>

Received Message from Server:

pieróg

y como dice que llegan tus credenciales a la web? en un hash?
la biometría en todo caso reemplaza al usuario, no a la contraseña.

pieróg

#3 vaya, vamos a tener que desempolvar el DNI electronico entonces

D

#8 No tiene por qué. Puede ser a través de dispositivos como una [YubiKey](https://www.yubico.com).

ioxoi

#11 ¿y quien identifica al usuario con ese token hw y no con cualquier otro?

frg

#21 El servicio identifica el token, el servicio. El navegador es un mero intermediario, pero no identifica a nadie.

ioxoi

#22 entonces la ventaja con los actuales sistema de OTP como yubikey o gogle authenticator ¿cual es?
¿y como lo usas con dispositivos como móviles, tablets, kioskos, etc?

M

#61 ¿en qué se parecen Google Authenticator y las Yubikey?

¿qué ventajas hay frente a las yubikey? En que ahora han definido el estándar de cómo se debe implementar la autenticación con una Yubikey u otra llave para que todo el mundo vaya por un igual y la Yubi esa vaya bien en todos los sitios.

No estaría de más que te leyeras el enlace que te pasaron.

ioxoi

#66
"¿en qué se parecen Google Authenticator y las Yubikey? "
En que los dos son un sistema de OTP, de hecho la única diferencia es el canal, la yubikey simula un teclado y Google Auth usa al usuario como canal.
"En que ahora han definido el estándar"
Como la autenticación http-basica, ntlm, ssl/tls, etc.
No sé en que mejora el nuevo estándar a los existentes, pero veo muchas dificultades para que se implante de manera masiva.
".No estaría de más que te leyeras el enlace que te pasaron. "
Además de habermelo leído, visto los errores de concepto de los que partes, no creo que seas el más adecuado para mandarme a leer.

M

#68 Las Yubikey soportan FIDO2 y U2F y usan un sistema de criptografía de clave pública para autenticarte.

"No sé en que mejora el nuevo estándar a los existentes"

En que no hay ningún estándar para esto. http-basica, ntlm, ssl/tls, etc. no tienen nada que ver.

"no creo que seas el más adecuado para mandarme a leer. "

Ostias, pues acabas de decir que las Yubikey son un sistema de autenticación de contraseña de un solo uso igual que el Google Auth que crea códigos para usar como segundo factor. Mientras que las Yubikey se basan en: Once communication is established, the application exercises a challenge–response authentication with the device using public-key cryptography methods and a secret unique device key manufactured into the device.[24] The device key is secured against duplication by a degree of social trust in the commercial manufacturer, and logically secured against reverse-engineering or counterfeiting by the robustness of the encryption and physical possession.

ioxoi

#69 veo que no has usado una yubikey, estás hablando de otro producto que es la yubikey neo, mientras que la yubikey a secas es un triste otp.

https://en.m.wikipedia.org/wiki/YubiKey

M

#71 Si estamos en esta noticia y me nombras las yubikey, yo doy por supuesto que hablas de las que soportan FIDO, pero venga, agárrate a un clavo ardiendo.

Aun asi, las ventajas son esas que se nombran.

M

#68 Pero bueno, a ver si aquí encuentras las respuestas a tus dudas. Ya que mi nivel no te satisface, que sea Google quien lo explique: http://fc16.ifca.ai/preproceedings/25_Lang.pdf

Google hablando de por qué las llaves estas son más seguras que su Google Auth. Me tengo que ir.

Abstract.“Security Keys” are second-factor devices that protect usersagainst phishing and man-in-the-middle attacks. Users carry a single de-vice and can self-register it with any online service that supports theprotocol. The devices are simple to implement and deploy, simple touse, privacy preserving, and secure against strong attackers. We haveshipped support for Security Keys in the Chrome web browser andin Google’s online services. We show that Security Keys lead to bothan increased level of security and user satisfaction by analyzing a twoyear deployment which began within Google and has extended to ourconsumer-facing web applications. The Security Key design has beenstandardized by the FIDO Alliance, an organization with more than250 member companies spanning the industry. Currently, Security Keyshave been deployed by Google, Dropbox, and GitHub. An updated andextended tech report is available at https://github.com/google/u2f-ref-code/docs/SecurityKeys_TechReport.pdf.

[..]

Authentication Failure Rate.Authentication failures result in increased au-thentication time and user frustration. In our examination of the time periodstudied, 3% of OTP-based authentications resulted in failure, while SecurityKeys did not present any authentication failures.

D

#21 debería haber una autoridad de certificación. Y ya sabes, eso es una empresa privada que tiene datos personales y sensibles de todos los usuarios para que estos puedan renovar o revocar esos certificados.. Que puede salir mal?

Me parece que el doble factor de auténticacion es de lejos más garantista y seguro para los usuarios.

r

#25 ¿Para qué quieres una CA?

D

#43 quien quieres si no que valide que el certifciado es tuyo y no del vecino?

r

#47 Pues depende del certificado. Si metes una clave OpenPGP, la red de confianza, o puede que nadie. Si metes un CERES, pues la propia FNMT. En algunos escenarios te conviene que nadie pueda verificar que es tuyo.

D

#48 la clave OpenPGP está bien, y es muy segura, pero ¿y si pierdes la clave privada? ¿quien puede acreditar que tu cuenta ligada a esa clave privada ahora se puede ligar a otra? Necesitas un intermediario.

Estamos hablando de un escenario global, donde hasta un barrendero que no sabe de informática pueda disponer de un método de autenticación que no pase por tener que comprarse una caja fuerte para guardar las copias de seguridad de su clave privada.

Necesitas una CA

M

#47 ¿quién valida que la contraseña es tuya? ¿quién valida que tras de tu contraseña está perico de los palotes o como te llames? Lo mismo mientes en tu nombre pero eso da igual, el sistema dejará entrar en tu cuenta a una persona que sepa la contraseña con la que tu cuenta se dio de alta, y esa persona se supone que eres tú y solo tú si no te robaron la contraseña, porque solo tú la conoces, pero da igual quién seas tú.

#48 ¿y qué pasa si pierdes tu contraseña? ¿también necesitas una CA o se puede recuperar a través de otros métodos?

En esos aspecto esto funciona igual pero la autenticación con llave es más segura porque la clave privada nunca sale del dispositivo, no necesitas ninguna caja fuerte. Del dispositivo solo sale la respuesta, así que no te pueden robar la "contraseña" (clave privada)

Gry

#10 Podrían ponerlo en los móviles

D

#9 problema que le veo a esto: que si lo pierdes, pierdes el acceso a todo. Y entonces habrá que hacer copias de seguridad por si acaso. Y para la gente de a pie, sin conocimientos técnicos, se harán copias de seguridad en la nube. Y ese va a ser justo el agujero de seguridad.

Un dni electrónico, con una acreditada autoridad de certificación que no controlan empresas privadas, es mejor solución.

r

#23 El DNIe es una idea cojonuda, que no ha cuajado porque su implementación fue pésima. Pero el concepto en sí, un token SmartCard que el usuario ya tiene y lleva siempre encima, es inmejorable.

D

#44 Creo que el DNIe es una grandísima idea. La implementación fue pésima pero en mi opinión el motivo es que pretendía ser algo adelantado a su tiempo, y que por no haber una masa crítica de usuarios tampoco se ha actualizado debidamente. Lo que en su momento se hizo estaba razonablemente bien para la tecnología que había. A estas alturas tenerte que instalar un programa java en el ordenador (que además en falla en algunos sistemas como una escopeta de feria) para tener que firmar ya es un atraso, hay formas más sofisticadas de hacerlo.

sotanez

#9 Veinte pavos la más barata, y que no se te olvide, que no se te pierda, andar sacándola cada vez que quieras hacer login donde sea... veo a cuatro frikis usando eso.

Cehona

WebAuthn Demo
https://webauthn.org/

D

A ver si lo entiendo: esto se basa en usar un dispositivo, que podría ser una tarjeta, con un certificado, para poder usarlo de clave en las páginas y que te autentique... ¿No se supone que eso ya lo hace el DNIe? Y sin pagar entre 45$ y 60$ por cada llave.

frg

En principio parece un login utilizando token de toda la vida. Habrá que leerse las especificaciones para ver las diferencias.

D

#12 no las hay. Está todo inventado.

PacoJones

Mientras haya gente que utilice IE11 idos olvidandolo por un largo tiempo como todo los nuevos estándares web que salen

edgard72

#7 Buen prejuicio, pero de los nueve editores que tiene la especificación, tres son de Microsoft. https://www.w3.org/TR/2019/REC-webauthn-1-20190304/

SalsaDeTomate

#14 ¿y qué más da si esos navegadores están ahí y van a seguir estando?

PacoJones

#14 ¿Y qué tiene que ver eso? Hasta Microsoft ha pedido y rogado que la gente deje de utilizar IE11 https://techcommunity.microsoft.com/t5/Windows-IT-Pro-Blog/The-perils-of-using-Internet-Explorer-as-your-default-browser/ba-p/331732

D

#7 Hace unos días tuve que hacer una gestión en la web de una Diputación provincial con certificado digital. Al entrar ya avisaba que sólo funcionaba con Explorer 11, cosa que comprobé. Llamé para quejarme y me dijeron que si no tenía ese navegador era mi problema, no el suyo.

Así funciona la administración de nuestro país. Y encima esa web habrá costado centenares de miles de euros que a saber dónde habrán ido a parar.

D

#33 tienes toda la razón

PacoJones

#33 Aún peor me lo pones, aquí en UK he tenido que hacer varias gestiones estatales y te aseguro que su plataforma es digna de admirar, funciona en cualquier dispositivo y navegador moderno y está en constante actualización guardando los principios de accesibilidad y usabilidad.

D

#33 bueno saber a donde han ido a parar es bastante fácil... hay cantidad de chanchullos para desviar caudales públicos en la administración

Nova6K0

Pensar que la biometría es menos fácil de hackear/crackear que una contraseña fuerte es de risa. Especialmente la huella dactilar y el iris. Esto sin hablar de la polémica que viene detrás, por usar claves de tipo Curva Elíptica, cuando algunas de ellas fueron creadas por la NSA.

Salu2

prejudice

#54 Bitcoin también usa criptografía de curva elíptica, pero un tipo de clave propio, no usa ninguno de lo de la NSA

daphoene

#54 Un sistema que no puedes actualizar nunca debería ser susceptible de actuar como método de autenticación. Esto tan sencillo le cuesta mucho entender a la gente, que ven en una peli o serie un lector de iris y ya se piensan que es lo más de lo más en seguridad.

Ferk

#30 No es lo mismo.
Cualquiera puede hacerse una cuenta en twitter y usar el nombre de usuario de otra persona... pero no puede crear una cuenta usando mi dispositivo WebAuthn de esa persona a no ser que tenga ya de entrada la posibilidad de autenticarse en todas sus cuentas (vamos el equivalente digital a ser yo).

Podrías compararlo a asociar a tu correo electrónico, pero incluso en ese caso es mucho más fácil hacer un correo nuevo que comprarte un dispositivo WebAuthn nuevo....

Yo diría que el ejemplo más comparable es cuando aplicaciones como Whatsapp usan tu número de teléfono para autenticar la cuenta, lo cual me parece igual de peligroso en cuanto a la ruptura del anonimato.

D

#40 Ya, pero la mayoría de la gente utiliza el mismo nombre o correo en todos los sitios, y si tu nombre es medianamente original es difícil que alguien use el mismo que tú (y si es el correo menos aún, porque tendrás que validarlo).

Lo he mirado y las tarjetas estas permiten almacenar varias identidades, con lo que se podría resolver este problema.

D

#40 Vale, lo acabo de leer mejor: https://developers.yubico.com/FIDO2/

Privacy Protection: A FIDO2 authenticator generates a new pair of keys for every service, and the service stores only the public key. With this approach, no secrets are shared between service providers.

Para el que no entienda inglés, el dispositivo genera un nuevo par de claves para cada servicio en el que te registres, así que ningún servicio conoce tu identidad en otro lugar.

Ferk

#53 I expected that much, otherwise it would not be secure. But that doesn't mean the service provider cannot identify the device, more things than just the keys are exchanged (there's the "credentialid" and the "attestation" as shown in that sequence diagram).

I expect the attestation is the same even when the new key pair is generated, since it's used as a sort of "certificate authority" to sign the keys.

https://developer.mozilla.org/en-US/docs/Web/API/Web_Authentication_API/Attestation_and_Assertion

The purpose of attestation is to cryptographically prove that a newly generated key pair came from a specific device. This provides a root of trust for a newly generated key pair as well as being able to identify the attributes of a device being used (how the private key is protected; if / what kind of biometric is being used; whether a device has been certified; etc.).

It looks like the device can be identified regardless of whether the keys change every time. And it seems to be actually an intended behavior for the standard.

Ferk

#53 wall ....cachis... te he respondido en inglés (#55) sin darme cuenta,.,.,. wall

Ya no lo puedo editar... pero abajo la traducción:

Eso lo sospechaba, de lo contrario no sería seguro. Pero eso no significa que no puedan identificar el dispositivo, se intercambian más parámetros aparte de las claves (en la página que enlazas muestran "credentialid" y "attestation").

Imagino que el "attestation" es el mismo incluso cuando se genera un nuevo par de claves.

https://developer.mozilla.org/en-US/docs/Web/API/Web_Authentication_API/Attestation_and_Assertion

Ferk

#53 #56 #19 Para más inri, el hecho de que se usen certificados de esta forma deja la puerta abierta para que un proveedor de servicios limite el acceso sólo para usuarios que estén usando un dispositivo de una marca concreta, o que esté explicitamente autorizado por una certificación oficial...

Imaginate que cada estado empezase a firmar certificados digitales asociados a tu ID nacional, con nombre y apellidos (como se hace con el DNI electrónico o con los certificados de la FNMT) y que se obligase a los servicios web a aceptar sólo claves que estén firmadas por la entidad certificadora del estado. Sería el fin del anonimato en internet.

O que Apple/Google/Sony/MS.. use esta tecnología para obligar a la gente a usar hardware de Apple/Google/Sony/MS...

D

#56 El "attestation" identifica el modelo de dispositivo, no el dispositivo concreto: https://fidoalliance.org/fido-technotes-the-truth-about-attestation/

Con lo cual serás uno más entre los miles o cientos de miles de personas que tengan el mismo modelo de dispositivo.

b

Y decirle adiós a mis contraseñas QWERTY-1 y AZERTY-2???

NUNCA!!!

r

"...allows websites to communicate with a security device to let a user log into their service."

Ni de coña uso un dispositivo de hardware para autenticarme...

Y (a no ser que lo haya entendido mal) ME CAGO en la W3C por proponer algo que todavía más permite a empresas localizarme y por cargarse en mi privacidad!!!

Polmac

#15 ¿? Las tarjetas criptográficas son mucho más seguras que las password, pero de lejos. Y nadie te localiza por usar una.

Ferk

#19 Si usas el mismo dispositivo en páginas distintas, puede cada página saber si la clave corresponde al mismo dispositivo? Porque eso comprometería el anonimato, lo cual es un problema para la privacidad.

Ferk

#19 #24 Me respondo a mi mismo: según Mozilla, sí que es posible para la página identificar si dos cuentas distintas usan el mismo dispositivo. De hecho recomiendan usar un dispositivo distinto para cada website si quieres realmente evitar que lo asocien. Eso significa que gigantes como Google, Facebook y demás pueden fácilmente cruzar la información entre cuentas y seguir tu huella si no llevas contigo un llavero de dispositivos distintos.

https://support.mozilla.org/en-US/kb/privacy-web-authentication?as=u&utm_source=inproduct

D

#27 Pero eso es como decir que en cada sitio en el que te registres tienes que usar un nombre de usuario distinto. ¿Alguien lo hace? Porque casi siempre uso los mismos dos o tres nombres.

p

#24 De seguridad informática no tengo mucha zorra, pero creo que no tendría porque, sería lo mismo que con las claves públicas y privadas. Pero bueno... estando Google y Microsoft de por medio la privacidad es lo de menos.

r

#19 En qué son más seguras? el server tiene que almacenar la información de alguna manera, sea el hash o lo que sea...

Y sí te localizan, porque detectan el dispositivo utilizado y lo almacenan en su base de datos... para que la próxima vez...

Con una password no, sólo saben mi password, no tienen manera de identificar quién la escribe ni con qué dispositivo (teclado).

jonsy.gaviota

En mi iphone (ios actualizado) la página de demo dice que webauthn no funciona, ni con safari, ni con chrome ni con firefox ¿para qué está entonces el lector de huellas, y para qué presumen los navegadores de que ya lo soportan?

En linux (Fedora 29) me pide llave de seguridad y eso que tengo lector de dnie con el token pkcs11 iniciada sesión... pero pasa de usarlo; y no digamos ya de los certificados fnmt

Las llavecitas esas de marras cuestan 40 euros en Amazón.

Vamos, todo un invento

U

Con lo que cuesta el hardware, poca gente lo va a usar. Una alternativa interesante es identificarte usando Bitcoin, guardando tu identidad on chain.

r

#39 lol lol lol