El día 1 de Septiembre se hizo noticia la vulnerabilidad publicada por el investigador 
Rafay Baloch detectada en dispositivos 
Android previos a la versión 
4.4, que había sido identificada con el 
CVE-2014-6041. En ésta se reporta que el componente 
WebView de versiones anteriores al 
framework 4.4 permiten la evasión de su mecanismo de seguridad 
SOP (
Same Origin Policy o 
Política del Mismo Origen), que es un control que deben implementar los clientes web para limitar que sólo ante determinadas circunstancias un documento web pueda cargar o modificar código en otro si estos están ubicados en orígenes diferentes.
El 
alcance de esta vulnerabilidad es notable ya que se estima que actualmente en torno al 
75% de los dispositivos 
Android se encuentran en versiones anteriores a la 
4.4, y en estos dispositivos suele estar instalado de serie el cliente 
Web Android Open Source Browser, el cual implementa este componente 
WebView vulnerable, y además el 
bug no se reduce únicamente a este componente, ya que como se ha hecho público en 
otros estudios realizados existen más clientes web vulnerables como 
Maxthon Browser o
 CM Browser.
En cuanto a la vulnerabilidad reportada, cabe destacar lo simple que es realizar una explotación como 
Prueba de Concepto ya que lo único que hace falta para evadir el 
SOP en este componente es incluir un 
byte nulo en un manejador con el código que queremos ejecutar en el contexto del origen de destino:
|  | 
| Figura 3: Inserción del null byte \u0000 para lograr el salto de SOP | 
Si accedemos a la página con el código anterior desde un navegador que contenga este componente vulnerable veremos cómo somos capaces de ejecutar el 
script insertado en el manejador 
onclick.
|  | 
| Figura 4: Código ejecutado saltándose la política SOP | 
Este método podría ser usado tanto para extraer información como el contenido 
HTML de una página web desde la sesión de un usuario, el envío de formularios sin el consentimiento del usuario, o  ataques de 
session hijacking, entre otros.
Sea como sea la historia de esta vulnerabilidad no acabó en su publicación y desde el día 7 de Septiembre disponemos de un 
módulo para Metasploit que en su configuración por defecto extraerá la 
cookie y el contenido 
HTML que el usuario ve al acceder a la página web.
|  | 
| Figura 6: Extracciíon de la cookie de sesión con el módulo de Metasploit | 
Es interesante destacar las opciones adicionales que incluye el módulo, ya que nos permitirán jugar con certificados, ejecutar nuestro propio código 
script si lo definimos en la opción del módulo 
CUSTOM_JS. Es en este punto donde los más juguetones están aprovechando para mediante una campaña, por ejemplo de 
spam enviado a usuarios de versiones 
Android vulnerables, cargar otros 
scripts tan interesantes como 
BeEF para hacerse una JavaScript Botnet de dispositivos Android, además de ofrecer otros mecanismos menos sutiles para hacer por ejemplo evasión de las cabeceras 
X-Frame-Options.
|  | 
| Figura 7: Inyección de scripts personalizados de control | 
Si a este grave fallo de seguridad le sumamos la fragmentación de la plataforma 
Android y el abandono por parte de proveedores de dispositivos y adaptaciones del sistema operativo, nos damos cuenta de que estamos ante una situación muy complicada ya que aunque se han publicado parches para corregir este fallo (
aquí y 
aquí) un alto porcentaje de dispositivos no serán actualizados y mantendrán esta vulnerabilidad.
Autor: 
Miguel Ángel García (@nodoraiz)
Developer en 
Eleven Paths
2 comentarios:
waoo entonces son muchos los terminales que estan expuestos y yo que por donde vivo no conozco ninguno que pase de la version 4.2 que es con la que viene de fabrica.... gracias por la info...
¿Y que navegadores se podrian utilizar para evitar el fallo? Yo poseo un Samsung Galaxy Note N-7000 y un Samsung Galaxy Ace, ambos con versiones anteriores a la 4.4.
Gracias
Publicar un comentario