miextremadura
turismo de extrellas

Análisis de malware en Android con Pindroids

En publicaciones pasadas hemos visto algunas maneras en las que podemos aplicar Pin al análisis de malware, interceptando la ejecución de un binario y facilitando así la tarea de determinar si su comportamiento resulta malicioso.

03 March 2015

En esta oportunidad, observaremos cómo esta misma herramienta puede ser empleada también en el estudio de muestras potencialmente maliciosas en plataformas Android, mediante la creación de herramientas denominadas Pindroids.

¿Por qué usar Pin con Android?

Como hemos mencionado, la comprensión y utilización de APIs como Pin es de real importancia frente a situaciones en las cuales no podemos acceder al código fuente de la aplicación. Si nos detenemos a pensarlo, los archivos apk no clasifican dentro de esta categoría puesto que, a pesar de poder encontrarse ofuscados, existen numerosas herramientas para decompilarlos y llegar así a la codificación inicial. Entonces, ¿qué beneficios nos brinda construir Pindroids?
Claro está que, si queremos profundizar nuestra investigación, siempre será una buena idea complementar el examen estático con la depuración de la muestra y la recolección de información en tiempo de ejecución. Luego, podremos utilizar esta última tanto para el estudio del rendimiento de la aplicación, rutinas de ejecución y potenciales vulnerabilidades, como para el análisis de los componentes estructurales, como perfilar el uso del procesador y la memoria.

Dependiendo de la relevancia que tenga la muestra en particular, y su impacto en los mercados actuales, deberá decidirse la profundidad que se espera del análisis y la cantidad de recursos empleada – tiempo, esfuerzo, y consecuentemente, dinero– que se está dispuesto a dedicar.

Aproximándonos al análisis de muestras con Pindroids

Para poder realizar un análisis con Pin, necesitaremos un dispositivo rooteado con BusyBox instalado. Además, una máquina con Android SDK, Android NDK, y por supuesto, la correspondiente versión de Pin para Android. El tutorial completo para realizar la correcta instalación de estos paquetes puede encontrarse en el manual para la creación de Pindroids.

Una vez que hemos logrado montar de manera exitosa el entorno de análisis, deberemos diseñar y programar las Pindroids que sean requeridas para atender a los diferentes aspectos que esperamos comprender del contexto de ejecución. La utilización de Pin en Android, gracias a BusyBox, no difiere en gran medida de los procedimientos expuestos anteriormente para la creación de estas herramientas.
En una primera instancia de familiarización con la plataforma, podemos acudir a algunos ejemplos publicados en la web. Como objeto de estudio tomaremos, una muestra de un troyano bancario descubierto en la Google Play Store, perteneciente a la familia Android\Spy.

Banker, y sobre ella aplicaremos la tool antes provista, syscalltrace: una Pindroid que nos permite hacer la traza de todas las llamadas que se realizan al sistema. En la imagen siguiente, podemos observar una sección de los resultados arrojados.

OPINIÓN DE NUESTROS LECTORES

Da tu opinión

NOTA: Las opiniones sobre las noticias no serán publicadas inmediatamente, quedarán pendientes de validación por parte de un administrador del periódico.

NORMAS DE USO

1. Se debe mantener un lenguaje respetuoso, evitando palabras o contenido abusivo, amenazador u obsceno.

2. www.mujerextremadura.es se reserva el derecho a suprimir o editar comentarios.

3. Las opiniones publicadas en este espacio corresponden a las de los usuarios y no a www.mujerextremadura.es

4. Al enviar un mensaje el autor del mismo acepta las normas de uso.