viernes, 27 de marzo de 2015

Flashback

Según un reciente informe muchas aplicaciones Flex siguen siendo vulnerables a una vulnerabilidad de hace tres años, independientemente del nivel de actualización del reproductor Flash.

Flex es un SDK (software development kit) para el desarrollo de aplicaciones RIA (Rich Internet Application o "aplicaciones de Internet enriquecidas") basadas en la plataforma Adobe Flash. Flex, aunque en la actualidad es un proyecto Open Source de Apache (Apache Flex), hasta el 2011 era un producto de Adobe (Adobe Flex), que fue donado a la Apache Software Foundation.

Los investigadores Luca Carettoni (de LinkedIn) y Mauro Gentile (de Minded Security) han descubierto que muchas aplicaciones Flex publicadas en Internet en la actualidad siguen siendo vulnerables a una vulnerabilidad del 2011. El problema (con CVE-2011-2461), fue parcheado por Adobe en su momento, a través de la actualización apsb11-25 que también fue comentada por Hispasec en una-al-dia. El fallo podría permitir a un atacante evitar la política de mismo origen y realizar ataques de Cross-Site Request Forgery.

Aunque el fallo fue corregido en su momento por Adobe, no bastaba con actualizar Flex. Tal y como explicaba el aviso de Adobe, todos los archivos compilados con alguna versión vulnerable de Flex necesitaban ser recompilados (o parcheados) con una versión actualizada para evitar la vulnerabilidad. Si el archivo SWF está compilado con una versión vulnerable de Flex SDK, un atacante podrá utilizar esta vulnerabilidad ante los últimos navegadores web y Flash actualizados.

Durante los meses de octubre y diciembre de 2014, los investigadores analizaron múltiples dominios buscando SWFs vulnerables. Sorprendentemente encontraron que muchos aun alojan archivos SWF afectados, incluyendo sitios como Google, Yahoo! o incluso la propia Adobe.

Luca (@_ikki) y Mauro (@sneak_) han desarrollado una aplicación Java, ParrotNG, que permite identificar los archivos SWF vulnerables. La herramienta se encuentra disponible desde
https://github.com/ikkisoft/ParrotNG/releases

Los investigadores advierten que aun hay muchos sitios que alojan aplicaciones SWF vulnerables y recomiendan recompilarlas con la última versión de Apache Flex SDK, parchearlas con la utilidad oficial de Adobe (disponible aquí) o directamente eliminarlas si no se usan.

Más información:

The old is new, again. CVE-2011-2461 is back!

Presentación "The old is new, again. CVE-2011-2461 is back!"

una-al-dia (30/11/2011) Actualización de seguridad para Adobe Flex SDK
http://unaaldia.hispasec.com/2011/11/actualizacion-de-seguridad-para-adobe.html



Antonio Ropero
Twitter: @aropero



jueves, 26 de marzo de 2015

La mitad de los dispositivos Android afectados por una vulnerabilidad

Investigadores de Palo Alto Networks han publicado una alerta en la que informan de una vulnerabilidad en Android que podría permitir la instalación de aplicaciones maliciosas sin conocimiento del usuario.

La vulnerabilidad se ha bautizado como "Android Installer Hijacking" (Secuestro del Instalador Android). Básicamente el problema reside en que durante el proceso de instalación un atacante puede modificar o reemplazar una aplicación legítima con malware sin el conocimiento del usuario. Esto solo afecta a aplicaciones descargadas desde repositorios alternativos o cualquier otra fuente diferente a "Google Play". La aplicación maliciosa podría conseguir acceso total al dispositivo comprometido.

El problema afecta a todos los sistemas Android anteriores a la versión 4.3 y a algunas distribuciones de Android 4.3, un parque que se estima en torno a un 49,5 por ciento de los dispositivos Android actuales.

Como se sabe, Android soporta la posibilidad de instalar aplicaciones descargadas desde la propia tienda de Google o bien desde cualquier otra fuente alternativa. Google Play descarga los paquetes de instalación Android (APKs) a un espacio protegido del sistema de archivos. Sin embargo al descargar desde terceras partes (repositorios alternativos o cualquier otra fuente) los archivos APK se almacenan en una carpeta no protegida (p.ej. /sdcard/) y desde esa localización se instalan directamente. Para completar la instalación siempre se emplea una aplicación del sistema llamada "PackageInstaller".

El problema reside en una vulnerabilidad de "Time of Check to Time of Use" (TOCTOU) en el "PackageInstaller". Este tipo de vulnerabilidades se da cuando se produce un cambio entre el momento en que se realiza una comprobación ("Time of Check") y el momento en que se usa esa comprobación ("Time of Use"). Esto se traduce en que "PackageInstaller" no verifica el archivo APK entre el momento en que se muestran al usuario los permisos necesarios y después de haber aceptado la instalación, por lo que en ese momento se puede reemplazar la aplicación que se está instalando.

La vulnerabilidad de secuestro del instalador afecta a archivos APK descargados en un espacio no protegido porque cualquier otra aplicación puede acceder a dicho espacio, algo que no ocurre en el espacio protegido de la Play Store.

Diferentes escenarios

Se pueden dar varios escenarios para explotar la vulnerabilidad, se puede emplear una aplicación aparentemente benigna, que no requiera permisos especiales, para comprometer otras aplicaciones en el futuro. Por ejemplo si la víctima instala una "App X" aparentemente legítima (que ni siquiera requiere ningún tipo de permisos especiales). Posteriormente, la víctima instala una tienda de aplicaciones totalmente legítima (como la tienda de aplicaciones de Amazon) que permite instalar archivos APK desde el sistema de archivos local. Cada vez que se instalan archivos desde esta tienda se lanza una vista de "PackageInstallerActivity". Sí el usuario intenta descargar una "App Y" desde esta tienda, la "App X" detectará que se lanza la vista de "PackageInstallerActivity" y comprueba si la "App Y" se encuentra en un espacio público (p.ej. en /sdcard) en cuyo caso, mientras el usuario visualiza la pantalla de permisos, la "App X" podría sobreescribir la "App Y". Si el usuario acepta la instalación, se instalará la "App Y" comprometida con el malware y los permisos que el atacante necesite.

También se puede emplear la vulnerabilidad para enmascarar los permisos que la aplicación requiere realmente. La víctima instalará la "App X" aparentemente legítima. Mientras la usa se promociona una "App Y" legitima para su instalación. Si el usuario instala la aplicación se iniciará la vista "PackageInstallerActivity" que no requerirá ningún permiso especial. Y al igual que en el ejemplo anterior mientras el usuario visualiza la pantalla de permisos la "App X" podría sobreescribir la "App Y" con malware. Si el usuario acepta la instalación, se instalará la "App Y" comprometida con el malware ignorando los permisos solicitados.

Recomendaciones

Palo Alto Networks ha publicado un escáner en Google Play para comprobar si la vulnerabilidad puede afectar al dispositivo. Se encuentra disponible desde:
Además ofrece el código del escáner en:

Como es habitual se aconseja a todos los usuarios descargar las aplicaciones de Android desde el repositorio oficial de Google (https://play.google.com/store).

Desde la Android Open Source Project (AOSP) de Google se ha confirmado la publicación de parches para este problema para la distribución Android 4.3 y posteriores. La actualización está disponible desde
El equipo de seguridad de Android también confirma que no han detectado ataques intentando aprovechar esta vulnerabilidad.

Como siempre el problema está en el tempo que los fabricantes se toman para implantar y distribuir las actualizaciones del sistema operativo a sus usuarios.

Amazon, por su parte, también ha solucionado el problema en su tienda de aplicaciones, que puede actualizarse desde www.amazon.com/getappstore

Más información:

Android Installer Hijacking Vulnerability Could Expose Android Users to Malware

una-al-dia (19/02/2014) Android, a vueltas con el problema de los parches que nunca llegan



Antonio Ropero
Twitter: @aropero