Obtén información sobre cómo Yahoo! Japan construyó un sistema de identidad sin contraseñas.
Yahoo! JAPAN es una de las empresas de medios más grandes de Japón y ofrece servicios como búsqueda, noticias, comercio electrónico y correo electrónico. Más de 50 millones de usuarios acceden a Yahoo! JAPAN todos los meses.
A lo largo de los años, hubo muchos ataques a cuentas de usuario y problemas que provocaron la pérdida del acceso a las cuentas. La mayoría de estos problemas estaban relacionados con el uso de contraseñas para la autenticación.
Con los recientes avances en tecnología de autenticación, Yahoo! JAPAN decidió pasar de la autenticación basada en contraseñas a la autenticación sin contraseñas.
¿Por qué usar el acceso sin contraseña?
Como Yahoo! JAPAN ofrece comercio electrónico y otros servicios relacionados con dinero, por lo que existe un riesgo de daños significativos para los usuarios en caso de acceso no autorizado o pérdida de la cuenta.
Los ataques más comunes relacionados con las contraseñas fueron los ataques de listas de contraseñas y las estafas de phishing. Uno de los motivos por los que los ataques de lista de contraseñas son comunes y efectivos es el hábito de muchas personas de usar la misma contraseña para varias aplicaciones y sitios web.
Las siguientes cifras corresponden a los resultados de una encuesta realizada por Yahoo! JAPÓN
50%
usar el mismo ID y la misma contraseña en seis o más sitios
60 %
Usar la misma contraseña en varios sitios
70 %
usar una contraseña como la forma principal de acceder
Los usuarios suelen olvidar sus contraseñas, lo que representó la mayoría de las consultas relacionadas con ellas. También recibimos consultas de usuarios que olvidaron sus IDs de acceso, además de sus contraseñas. En su pico máximo, estas consultas representaron más de un tercio de todas las consultas relacionadas con la cuenta.
Al utilizar la tecnología sin contraseña, Yahoo! El objetivo de JAPAN era mejorar no solo la seguridad, sino también la usabilidad, sin generar una carga adicional para los usuarios.
Desde una perspectiva de seguridad, eliminar las contraseñas del proceso de autenticación del usuario reduce el daño de los ataques basados en listas y, desde una perspectiva de usabilidad, proporcionar un método de autenticación que no dependa de recordar contraseñas evita situaciones en las que un usuario no puede acceder porque olvidó su contraseña.
Yahoo! Iniciativas sin contraseñas de JAPAN
Yahoo! JAPAN está tomando una serie de medidas para promover la autenticación sin contraseña, que se puede dividir en tres categorías:
- Proporcionar un método alternativo de autenticación a las contraseñas
- Desactivación de contraseñas
- Registro de cuentas sin contraseña.
Las dos primeras iniciativas se orientan a los usuarios existentes, mientras que el registro sin contraseña se orienta a los usuarios nuevos.
1. Proporcionar un método alternativo de autenticación a las contraseñas
Yahoo! JAPAN ofrece las siguientes alternativas a las contraseñas.
Además, también ofrecemos métodos de autenticación, como la autenticación por correo electrónico, la contraseña combinada con las OTP por SMS (contraseña de un solo uso) y la contraseña combinada con la OTP del correo electrónico.
Autenticación de SMS
La autenticación por SMS es un sistema que permite que un usuario registrado reciba un código de autenticación de seis dígitos a través de SMS. Una vez que el usuario recibe el SMS, puede ingresar el código de autenticación en la app o el sitio web.
Desde hace mucho tiempo, Apple permite que iOS lea mensajes SMS y sugiera códigos de autenticación desde el cuerpo del texto. Recientemente, se hizo posible usar sugerencias especificando "one-time-code" en el atributo autocomplete
del elemento de entrada. Chrome en Android, Windows y Mac puede proporcionar la misma experiencia mediante la API de WebOTP.
Por ejemplo:
<form>
<input type="text" id="code" autocomplete="one-time-code"/>
<button type="submit">sign in</button>
</form>
if ('OTPCredential' in window) {
const input = document.getElementById('code');
if (!input) return;
const ac = new AbortController();
const form = input.closest('form');
if (form) {
form.addEventListener('submit', e => {
ac.abort();
});
}
navigator.credentials.get({
otp: { transport:['sms'] },
signal: ac.signal
}).then(otp => {
input.value = otp.code;
}).catch(err => {
console.log(err);
});
}
Ambos enfoques están diseñados para evitar el phishing, ya que incluyen el dominio en el cuerpo del SMS y proporcionan sugerencias solo para el dominio especificado.
Para obtener más información sobre la API de WebOTP y autocomplete="one-time-code"
, consulta las prácticas recomendadas del formulario de OTP por SMS.
FIDO con WebAuthn
FIDO con WebAuthn usa un autenticador de hardware para generar un par de cifrado de clave pública y demostrar la posesión. Cuando se usa un smartphone como autenticador, se puede combinar con la autenticación biométrica (como sensores de huellas dactilares o reconocimiento facial) para realizar la autenticación de dos factores en un solo paso. En este caso, solo se envían al servidor la firma y la indicación de éxito de la autenticación biométrica, por lo que no hay riesgo de robo de datos biométricos.
En el siguiente diagrama, se muestra la configuración de servidor-cliente para FIDO. El autenticador del cliente autentica al usuario con datos biométricos y firma el resultado con criptografía de clave pública. La clave privada que se usa para crear la firma se almacena de forma segura en un TEE (entorno de ejecución confiable) o en una ubicación similar. Un proveedor de servicios que usa FIDO se denomina RP (entidad de confianza).
Para obtener más información, lee las pautas de autenticación de la FIDO Alliance.
Yahoo! JAPÓN admite FIDO en Android (app para dispositivos móviles y Web), iOS (app para dispositivos móviles y Web), Windows (Edge, Chrome y Firefox) y macOS (Safari y Chrome). Como servicio de consumidor, FIDO se puede usar en casi cualquier dispositivo, lo que lo convierte en una buena opción para promover la autenticación sin contraseñas.
Yahoo! JAPAN recomienda que los usuarios se registren en FIDO con WebAuthn, si aún no se autenticaron a través de otros medios. Cuando un usuario necesita acceder con el mismo dispositivo, puede autenticarse rápidamente con un sensor biométrico.
Los usuarios deben configurar la autenticación FIDO con todos los dispositivos que usan para acceder a Yahoo! JAPÓN
Para promover la autenticación sin contraseñas y tener en cuenta a los usuarios que están realizando la transición para dejar de usar contraseñas, proporcionamos varios medios de autenticación. Esto significa que diferentes usuarios pueden tener diferentes parámetros de configuración de métodos de autenticación, y los métodos de autenticación que pueden usar pueden diferir de un navegador a otro. Creemos que la experiencia es mejor si los usuarios acceden con el mismo método de autenticación cada vez.
Para cumplir con estos requisitos, es necesario hacer un seguimiento de los métodos de autenticación anteriores y vincular esta información al cliente almacenándola en forma de cookies, etc. Luego, podemos analizar cómo se usan los diferentes navegadores y aplicaciones para la autenticación. Se le solicita al usuario que proporcione la autenticación adecuada según su configuración, los métodos de autenticación anteriores que se usaron y el nivel mínimo de autenticación requerido.
2. Desactivación de contraseñas
Yahoo! JAPAN les pide a los usuarios que configuren un método de autenticación alternativo y, luego, que inhabiliten su contraseña para que no se pueda usar. Además de configurar la autenticación alternativa, inhabilitar la autenticación con contraseña (por lo que es imposible acceder con solo una contraseña) ayuda a proteger a los usuarios de los ataques basados en listas.
Se implementaron los siguientes pasos para alentar a los usuarios a inhabilitar sus contraseñas.
- Promoción de métodos alternativos de autenticación cuando los usuarios restablecen sus contraseñas
- Animar a los usuarios a configurar métodos de autenticación fáciles de usar (como FIDO) y a inhabilitar las contraseñas para situaciones que requieran autenticación frecuente
- Insta a los usuarios a inhabilitar sus contraseñas antes de usar servicios de alto riesgo, como pagos de comercio electrónico.
Si un usuario olvida su contraseña, puede ejecutar una recuperación de la cuenta. Anteriormente, esto implicaba un restablecimiento de contraseña. Ahora, los usuarios pueden elegir configurar un método de autenticación diferente, y les recomendamos que lo hagan.
3. Registro de cuentas sin contraseña
Los usuarios nuevos pueden crear cuentas de Yahoo! sin contraseña. de Yahoo! JAPÓN. Primero, los usuarios deben registrarse con una autenticación por SMS. Una vez que haya accedido, le recomendamos que configure la autenticación FIDO.
Dado que FIDO es una configuración por dispositivo, puede ser difícil recuperar una cuenta si el dispositivo deja de funcionar. Por lo tanto, solicitamos a los usuarios que mantengan su número de teléfono registrado, incluso después de configurar la autenticación adicional.
Desafíos clave para la autenticación sin contraseña
Las contraseñas dependen de la memoria humana y son independientes del dispositivo. Por otro lado, los métodos de autenticación que se introdujeron hasta ahora en nuestra iniciativa sin contraseña dependen del dispositivo. Esto plantea varios desafíos.
Cuando se usan varios dispositivos, se producen algunos problemas relacionados con la usabilidad:
- Cuando se usa la autenticación por SMS para acceder desde una PC, los usuarios deben verificar si hay mensajes SMS entrantes en su teléfono celular. Esto puede ser inconveniente, ya que requiere que el teléfono del usuario esté disponible y sea de fácil acceso en cualquier momento.
- Con FIDO, en especial con los autenticadores de plataforma, un usuario con varios dispositivos no podrá autenticarse en dispositivos no registrados. Se debe completar el registro para cada dispositivo que se usará.
La autenticación de FIDO está vinculada a dispositivos específicos, lo que requiere que permanezcan en posesión del usuario y activos.
- Si se cancela el contrato de servicio, ya no será posible enviar mensajes SMS al número de teléfono registrado.
- FIDO almacena claves privadas en un dispositivo específico. Si se pierde el dispositivo, esas claves no se pueden usar.
Yahoo! Japón está tomando diversas medidas para abordar estos problemas.
La solución más importante es alentar a los usuarios a configurar varios métodos de autenticación. Esto proporciona acceso alternativo a las cuentas cuando se pierden los dispositivos. Dado que las claves de FIDO dependen del dispositivo, también es conveniente registrar las claves privadas de FIDO en varios dispositivos.
Como alternativa, los usuarios pueden usar la API de WebOTP para pasar códigos de verificación por SMS de un teléfono Android a Chrome en una PC.
Creemos que abordar estos problemas será aún más importante a medida que se extienda la autenticación sin contraseña.
Promover la autenticación sin contraseña
Yahoo! JAPAN trabaja en estas iniciativas sin contraseñas desde 2015. Esto comenzó con la adquisición de la certificación de servidor FIDO en mayo de 2015, seguida de la introducción de la autenticación por SMS, una función de desactivación de contraseñas y la compatibilidad con FIDO para cada dispositivo.
Hoy en día, más de 30 millones de usuarios activos por mes ya inhabilitaron sus contraseñas y usan métodos de autenticación sin contraseña. Yahoo! La compatibilidad de JAPÓN con FIDO comenzó con Chrome en Android y, ahora, más de 10 millones de usuarios configuraron la autenticación FIDO.
Como resultado de Yahoo! JAPAN, el porcentaje de consultas relacionadas con IDs de acceso o contraseñas olvidados disminuyó un 25% en comparación con el período en el que la cantidad de consultas de este tipo alcanzó su punto más alto. También pudimos confirmar que el acceso no autorizado disminuyó como resultado del aumento en la cantidad de cuentas sin contraseñas.
Dado que FIDO es muy fácil de configurar, tiene un porcentaje de conversiones particularmente alto. De hecho, Yahoo! JAPAN descubrió que FIDO tiene una CVR más alta que la autenticación por SMS.
25 %
Disminución de las solicitudes de credenciales olvidadas
El 74%
Los usuarios realizan correctamente la autenticación FIDO
El 65%
Completar correctamente la verificación por SMS
FIDO tiene una tasa de éxito más alta que la autenticación por SMS y tiempos de autenticación promedio y mediana más rápidos. En cuanto a las contraseñas, algunos grupos tienen tiempos de autenticación cortos, y sospechamos que esto se debe al autocomplete="current-password"
del navegador.
La mayor dificultad para ofrecer cuentas sin contraseñas no es la adición de métodos de autenticación, sino popularizar el uso de autenticadores. Si la experiencia de usar un servicio sin contraseñas no es fácil de usar, la transición no será sencilla.
Creemos que, para mejorar la seguridad, primero debemos mejorar la usabilidad, lo que requerirá innovaciones únicas para cada servicio.
Conclusión
La autenticación con contraseña es riesgosa en términos de seguridad y también plantea desafíos en términos de usabilidad. Ahora que las tecnologías que admiten la autenticación sin contraseña, como la API de WebOTP y FIDO, están más disponibles, es hora de comenzar a trabajar en la autenticación sin contraseña.
En Yahoo! Japón, adoptar este enfoque tuvo un efecto claro en la usabilidad y la seguridad. Sin embargo, muchos usuarios siguen usando contraseñas, por lo que seguiremos alentando a más usuarios a cambiar a métodos de autenticación sin contraseñas. También seguiremos mejorando nuestros productos para optimizar la experiencia del usuario en los métodos de autenticación sin contraseñas.
Foto de olieman.eth en Unsplash