Buenas a todos, en el post de hoy de Herramientas Forense para ser un buen CSI vamos a hablar del archivo AndroidManifiest.xml, de su importancia en el sistema operativo Android, y sobretodo de cómo podemos visualizarlo a la hora de realizar un análisis forense de un programa en formato APK que podamos haber localizado durante nuestra investigación.El Android Manifiest es la base de cualquier aplicación Android, y se encuentra en el archivo AndroidManifest.xml que se encuentra alojado en la raíz de cualquier proyecto Android. En él se declara todo lo que se encuentre dentro de la aplicación:
- actividades
- servicios
- etc
Al crear un proyecto de Android por primera vez se obtiene un archivo Androidmanifest.xml básico que abarca los elementos base de una aplicación, pero según aumenten las funcionalidades de la herramienta, este archivo irá creciendo con nuevas declaraciones.
Dentro del manifiest encontraremos:
- uses-permission: Dónde se declaran los permisos que necesitará nuestra aplicación para funcionar (GPS, etc.).
- permission: Dónde se declaran los permisos que las actividades o servicios necesitan.
- instrumentation: Indica el código que deberá ser invocado cuando un evento clave del sistema sea llamado por el usuario.
- application: Define el nombre, actividad principal, icono, etc. de la aplicación.
Para poder instalar una aplicación en un terminal con Android, deberemos aceptar los permisos solicitados por el AndroidManifiest.xml:
- Información personal (calendario, contactos, …)
- Información del dispositivo (Datos de red, SMS, ..)
- etc.
- classes.dex
- resources.arsc
- res (carpeta)
- META-INF (carpeta)
- lib (carpeta)
Su uso es muy sencillo, una vez descargada la herramienta del enlace anterior, copiaremos el archivo .apk en el PC y ejecutaremos la siguiente instrucción:
apktool d NombreApp.apk ./RutaDeSalidaPor ejemplo, yo decompilaré un apk malicioso que se hacía pasar por una app lícita de Facebook:
apktool.bat d facebook.apk facebook
Y en pocos segundos tendremos nuestro Androidmanifiest.xml en texto plano:
Como veis, nuestra aplicación "falsa" de Facebook nos solicitaba acceso al estado de la WIFI, historial de llamadas, contactos, etc. Algo un poco turbio ¿verdad?
En posteriores artículos de la cadena seguiremos hablando de las aplicaciones de Android
Saludos!