Está usted visitando una publicación en la hemeroteca de CSIRT-CV.
Para acceder al portal y contenido actual, visite https://www.csirtcv.gva.es
10/04/2012
La vulnerabilidad residiría en el proceso 'Zygote' encargado de la compartición de código entre procesos Android y más concretamente en la gestión de las llamadas mediante sus sockets asociados.
Android está divido en varias capas o niveles: capa Android (niveles Application, Framework, Runtime y Libraries) y Linux. Zygote escucha en un determinado socket a la espera de recibir comandos y genera un nuevo proceso bifurcándose ('fork') como un proceso de la capa Linux, fuera de las capas Android.
Los investigadores descubrieron que utilizando la clase "com.android.internal.util.WithFramework" podían realizar un fork del proceso Zygote saltándose las políticas de seguridad que lo limitan habitualmente mediante el uso de la clase por defecto "android.app.ActivityThread", generando un proceso zombie incapaz de ser controlado o eliminado por las clases de la capa Android. En este estado se pueden seguir generando llamadas para ir inundando la memoria de más procesos zombi hasta consumirla totalmente. Esto bloquearía el dispositivo e impediría su uso.
Como muestra han publicado un vídeo de presentación en el que, a partir del minuto 2:50, se puede comprobar que consiguen bloquear totalmente un dispositivo Android (un Samsung Galaxy Note).
Si este comportamiento fuese causado por algún programa instalado en el inicio, el terminal quedaría inutilizado a efectos prácticos. En el estudio también se habla de las posibles contramedidas para impedir que el equipo se vea afectado.
La vulnerabilidad ha sido reportada a Google y al equipo de desarrollo de Android. Próximamente se harán públicas las actualizaciones oportunas de cada fabricante.
Sistemas Afectados:Dispositivos móviles equipados con cualquier versión de Android, incluida la más actual 4.0.3.
Referencias:CVE-2011-3918
Solución:De momento no existen parches que solucionen este problema.
Notas: