Lo que pienso sobre: Posible bug en el login de Google

Un investigador británico de seguridad, Aidan Wood descubrió un problema en la página inicio de sesión de Google, básicamente permite a los atacantes la posibilidad de forzar la descarga automática de archivos en el ordenador de un usuario cuando éste pulse el botón Acceder.

El problema de raíz es que Google permite agregar “continue=[link]” como parámetro en la URL de la página de inicio de sesión, el cual le indica al servidor de Google donde redirigir al usuario después de la autenticación.

Google ha anticipado que este parámetro podría causar problemas de seguridad y limitó su uso sólo para lo dominios google.com usando la regla “*.google.com/*”, permitiendo de esta forma la redirección a todos los subdominios y directorios de google.com.

Hasta este punto podemos decir que Google cumplió con las mejores prácticas de seguridad en el redireccionamiento y reenvío de peticiones http sugeridas por OWASP (Open Web Application Security Project) en el OWASP Top 10 (Un documento de los diez riesgos de seguridad más importantes en aplicaciones web) en la posición A10-Redirecciones y reenvíos no validados, además en la chuleta de recomendaciones para tratar el mismo problema “Unvalidated Redirects and Forwards Cheat Sheet”.

Pues bien, ¿Dónde está el error de Google?

Un atacante podría subir software malicioso (Malware) a su cuenta de Google Drive o Google Docs, tomar la URL y ocultarlo en el enlace oficial de Google. Los usuarios que reciban este enlace dentro de un correo electrónico de phishing o a través de las redes sociales, lo más probable es que lleguen a pensar que es la verdadera URL de acceso a Google.

https://accounts.google.com/ServiceLogin?service=mail&
continue=https://docs.google.com/uc?id?XXXXXXXXXXXXXXX&export=download

Cuando el usuario accede a esta página y presiona el botón “Acceder” o “Sign in”, un archivo se descargará sin confirmación del usuario en el PC de la víctima.

Un archivo llamado ingeniosamente como “Login_Challenge.exe” o “Two-Factor-Authentication.exe” podría engañar a los usuarios menos técnicos permitiendo así la instalación de malware en sus equipos.

Demostración

Google se negó a solucionar el problema

Aidan Woods dice que él trató de notificar el problema al equipo de seguridad de Google, pero al 3er ticket que él abrió para hacerles saber acerca del fallo, comunicaron la decisión de no realizar el seguimiento como un fallo de seguridad.

Lo que yo pienso

Personalmente pienso que no representa una vulnerabilidad sobre el CAS (Central Authentication Service) de Google, aunque sí un potencial vector de ataque basado en la ingeniería social como primera fase para que un atacante logre sus objetivos.

Recomendaciones

Como usuario:

  • Siempre compruebe la URL antes de introducir las credenciales, incluyendo en cada etapa del proceso de inicio de sesión.
  • Si parece que Google le envió un archivo en el inicio de sesión, no lo ejecute.

Como desarrollador:

  • Google ha adoptado un enfoque inicial bastante acertado por permitir listas blancas de su propio dominio, pero con la deficiencia de que bajo ese dominio existen una gran variedad de servicios que pudieran servir como puente para los atacantes y de esta forma aprovechar su legitimidad.
  • En su lugar, deben de trabajar en la selección de los subdominios permitidos y no permitidos, incluso especificar las rutas exactas de esos servicios.

Para más info:

Blog de Aidan Woods