martes, 25 de febrero de 2014

Android, y el problema de los parches que no terminan de llegar.

Android, y el problema de los parches que no terminan de llegar.


Hace unos días, Metasploit añadió un módulo para aprovechar una vulnerabilidad en el sistema operativo para móviles Android. El exploit, desarrollado por los investigadores Joe Vennix (@joevennix) y Josh Drake (@jduck), permite obtener el control del sistema con tan solo visitar una página web manipulada especialmente.

La vulnerabilidad afectaría en principio a las versiones anteriores a la 4.2 (Jelly Bean), publicada a finales de octubre de 2012. No obstante, para observar el comportamiento de la vulnerabilidad sobre la miríada de versiones parcheadas por los fabricantes dejaron colgada una prueba de concepto abierta a todo aquel que quisiera (y se fiara) comprobar si su sistema era o no vulnerable.

Descubrieron que, en consonancia con las estadísticas de despliegue de Android, el 70% de los sistemas era vulnerable aun. Esto no debería ser una sorpresa ya que la fragmentación del mercado de versiones de Android es un hecho al que tanto usuarios, y en mayor medida, desarrolladores se enfrentan desde hace tiempo. Hay que tener en cuenta que la última versión, la 4.4 (KitKat), tan solo tiene un índice de adopción del 1,8% y fue publicada el 31 de octubre del pasado año. El mercado tarda mucho tiempo en encajar una nueva versión del sistema y por otro lado existe un parque de versiones obsoletas tremendo. Si sumamos el porcentaje de versiones anteriores a la 4: 2.2 (Froyo) 1,3%, 2.3.3-7 (Gingerbread) 20,0% y 3.2 (Honeycomb) 0,1%, tenemos un 21,4% de mercado corriendo versiones desfasadas, al menos desde el punto de vista de la seguridad.

Para el caso concreto de esta vulnerabilidad, con un exploit que solo necesita de unas pulsaciones de teclado para ejecutarse, tenemos que sumar el porcentaje de las versiones 4.0.x y 4.1, el 16,1% y 35,5% respectivamente. Casi tres cuartas partes del mercado Android.

Pero no es este el punto de vista donde debemos quedarnos. Esa cifra en realidad no debe sorprendernos. Si mañana se descubriese un 0-day que afectase a las últimas versiones de cualquier navegador podríamos llegar a tasas del 90%. Lo realmente inquietante es ver como hay una vulnerabilidad crítica que lleva casi 100 días sin que los fabricantes hayan dispuesto un parche que la subsane. Ese es el verdadero problema, fabricantes que tardan una eternidad en liberar nuevas versiones de sus propias modificaciones de Android y que permanecen impasibles ante semejante exposición de sus clientes. Solo la versión matriz de Google tiene parche publicado.

¿Exageración?

La vulnerabilidad fue anunciada por un grupo chino en wooyun.org (en inglés http://en.wooyun.org/
) y afecta a WebView, un componente del API de programación de Android que permite incrustar una vista web en cualquier aplicación. Dicho componente expone un método que permite hacer un puente entre código Javascript (ejecutado desde la página web) hacia Java. En principio no todas las aplicaciones exponen dicho método, pero es común y son numerosas las que si lo hacen. El resultado es que se pueden exponer objetos Java para usarlos desde Javascript y a través de ellos ejecutar código arbitrario en el sistema. Existe un detallado análisis técnico disponible aquí (https://labs.mwrinfosecurity.com/advisories/2013/09/24/webview-addjavascriptinterface-remote-code-execution/
)

Ahora pensemos donde podemos tener componentes WebView: El navegador de Android, navegadores de terceros, aplicaciones que hagan uso de vistas web, adhesivos QRCode, y otro canal importante: los anuncios. Algunos canales de anuncios usan la vista web para ir rotando a los anunciantes en ese banner que vemos en ese juego gratuito que acabamos de instalar. Unamos más piezas: ¿Cuanto me costaría contratar publicidad para que mi exploit, previamente camuflado de anuncio, apareciese en dicho juego?

Otro vector interesante y más dirigido usado por atacantes profesionales. ¿Queremos controlar el teléfono de un objetivo interesante? Vamos a tomar café al mismo bar que frecuente, configuramos una piña (https://hakshop.myshopify.com/products/wifi-pineapple
) o el propio Metasploit para Android y solo tenemos que terminarnos el café, para cuando estemos pagando es posible que el rootkit ya este enviando copia de los correos a nuestro servidor en la República de Chula.

Al sistema Android le está creando problemas la cantidad de sistemas obsoletos aun en funcionamiento y sobre todo, en versiones más actuales, el interminable sendero desde la aparición de un agujero hasta que el fabricante libera el parche adecuado para taparlo. Es inadmisible y aunque el grueso de usuarios no perciba la situación, similar al ciclo instalar-infectar-reinstalar de tiempo pasados, esto terminará por crear un grave problema de imagen para Android a medio plazo.


Más información:

No hay comentarios:

Publicar un comentario