El 41,2% del top 600 de las aplicaciones en Android se ven afectadas.

Investigadores de seguridad han descubierto una manera en que las aplicaciones de Android e iOS podrían ser atacadas sin ningún conocimiento de la víctima.

Un grupo de tres investigadores – Ronghai Yang, Wing Cheong Lau y Tianyu Liu de la Universidad China de Hong Kong han encontrado que la mayoría de las aplicaciones móviles populares que soportan el servicio Single Sign-On (SSO) tiene implementado de forma insegura el OAuth 2.0.

<strong>OAuth 2.0</strong> es un estándar abierto para la autorización, lo que permite a usuarios iniciar sesión en otros servicios de terceros mediante la verificación de identidad existente de su cuenta de Google, Facebook, etc.

 

En pocas palabras el proceso de OAuth permite a los usuarios iniciar sesión en cualquier servicio sin proporcionar nombres de usuario y/o contraseñas adicionales.

¿Cómo los desarrolladores deberían implementar aplicaciones con OAuth?

Cuando un usuario inicia una sesión en una aplicación de terceros a través de OAuth, la aplicación verifica el proveedor de ID, digamos, de Facebook, que tiene los detalles de autenticación correctos. Si lo hace, OAuth tendrá un “Access Token” de Facebook que se emite a continuación al servidor de esa aplicación móvil.

oauth

Una vez que se emite el “Access Token”, el servidor de la aplicación solicita información de autenticación del usuario de Facebook, verifica y luego establece la conexión del usuario con su contraseña de Facebook (no intercepta los datos proporcionados).

¿Cómo, en realidad, los desarrolladores implementan el OAuth?

Los investigadores encontraron que los desarrolladores de una enorme cantidad de aplicaciones Android no comprueban adecuadamente la validez de la información enviada desde el proveedor ID como Facebook o Google.

ataque-mitm-proxy

Esto permite a los atacantes sustituir los inicios de sesión legítimos con otros nombres de usuario y acceder a esas cuentas.

Cómo funciona el ataque en 4 pasos:

  1. Una aplicación que no implementa adecuadamente OAuth es instalada en un dispositivo Android.
  2. Un atacante se registra en la aplicación utilizando su registro legítimo de Google o Facebook.
  3. Utilizando un proxy MITM habilitado para SSL (basado en Java para ataques “man in the middle”), el atacante sustituye su identificación de usuario por el de las víctimas después de recibir la autenticación para su propio inicio de sesión.
  4. El servidor proxy MITM envía el token de inicio de sesión modificado a la aplicación y el atacante obtiene acceso completo al perfil de la víctima.

El documento, que se puede leer en Forbes, no menciona ninguna de las aplicaciones afectadas, así que nos queda especular sobre cuál podría ser.

Los autores del artículo ya han notificado a Google, Facebook y otros sobre el exploit de los proveedores de identidad (ID) y están trabajando para tomar medidas con los desarrolladores de terceros para corregir estos errores.

Con cerca de 250 aplicaciones populares afectadas tal vez es una buena idea tener en cuenta no usar las aplicaciones que soportan el servicio SSO por algún tiempo.

Los investigadores presentaron su trabajo titulado: “Signing into One Billion Mobile App Accounts Effortlessly with OAuth2.0”, en la conferencia del dia viernes del Black Hat Europe. Puedes descargar la presentación en la parte de abajo.

[sociallocker id=7636] How to Sign into One Billion Mobile App Accounts Effortlessly [PPT][/sociallocker]
Califica esta publicación