ESET Latinoamérica – Laboratorio

Archivo para 16 diciembre, 2011

8 consejos para desarrolladores de Android

diciembre 16, 2011 6:17 pm

Cuando se habla del desarrollo de aplicaciones para dispositivos móviles es necesario tener en cuenta una serie de puntos acerca de la plataforma con el objetivo de garantizar la seguridad. Android es un sistema operativo para smartphones que contiene aplicaciones. Por defecto el sistema viene instalado con un conjunto de aplicaciones básicas como lo son el teléfono, correo, agenda de contactos y algunas más. Sin embargo cuando un desarrollador quiere crear su propia aplicación para esta plataforma debe seguir una serie de buenas prácticas al utilizar las API de Android y el SDK provisto por Google.

Las aplicaciones para esta plataforma se encuentran desarrolladas en Java y se ejecutan dentro de una máquina virtual, y para ser instalada en el sistema se distribuyen como archivos con extensión APK. Estas aplicaciones pueden estar disponibles en el Android Market publicadas por su desarrollador o en otros repositorios de aplicaciones no oficiales.

Android se encuentra basado en Linux, incluyendo además, sus propios mecanismos de seguridad adaptados para los smartphones. De esta manera el sistema operativo logra combinar una serie de funcionalidades como memoria compartida, multitarea, identificadores de usuarios (UIDs), permisos de archivo, Java y toda su conocida estructura. El resultado de estas combinaciones lo convierte un sistema multiusuario, donde cada aplicación se ejecuta en un proceso separado bajo un UID diferente y con sus propios permisos.

Ver más… »

Análisis del exploit PDF/CVE-2010-0188 (parte I)

3:27 pm

En el ultimo tiempo hemos recibido en el Laboratorio de Análisis e Investigación de ESET Latinoamérica diversas muestras de malware que simulan ser archivos legítimos de diversos formatos como PDF,DOC odocumentos HTML. Estos no son los únicos documentos afectados pero si los mas comunes, por tratarse de documentos altamente usados y estandarizados. La forma que ejecutan códigos maliciosos pueden ser muy variadas, pero por lo general hacen uso de algún exploit para lograr corromper la memoria, y así forzar la ejecución de código malintencionado.

En las siguientes lineas analizaremos una muestra que es detectada por ESET NOD32 Antivirus como PDF/CVE-2010-0188. La vulnerabilidad anteriormente mencionada es relativamente antigua, concretamente data de febrero de 2010.

La única razón por la que esta muestra se sigue difundiendo es porque está dirigida a usuarios de Adobe Reader, sin duda alguna el lector de archivos PDF más difundido. Es relativamente común encontrarse con versiones viejas de este lector, pero las versiones que nos competen en el día de hoy, están comprendidas entre la versión 8.0 a la versión 9.3. Estas versiones poseen un bug que dispara la ejecución de código arbitrario al tener incrustada una imagen TIFF especialmente manipulada.

En esta primera etapa, trataremos de desglosar los diferentes fases que contempla el reto de análisis para comprender el accionar del código malicioso y, en un futuro post, detallaremos cómo se explota la vulnerabilidad. Entonces, ¿cómo se realiza el análisis?

Primer acercamiento

Para comenzar, analizamos el archivo PDF con cualquier editor de texto. En este caso utilicé WordPad, para ver la estructura que tiene el archivo:

Los archivos PDF puede contener cualquier flujo de bytes representados con diferentes encoders, estos se encuentran entre los tags “stream” y “endstream“. Lo primero que llama la atención de este exploit en particular, es que no contiene código Javascript. En la imagen se observa en naranja que posee un archivo embebido que está codificado con FlateDecode. Algunos de otros codificadores que pueden utilizarse son:

  • ASCIIHexDecode
  • ASCII85Decode
  • LZWDecode
  • RunLengthDecode
  • CCITTFaxDecode
  • JBIG2Decode
  • DCTDecode
  • JPXDecode
  • Crypt

Ver más… »

Contáctenos | Política de Privacidad | Noticias Legales Copyright © 1992-2013 por ESET, LLC y ESET, spol. s.r.o. Todos los derechos reservados.