Foro de elhacker.net

Seguridad Informática => Análisis y Diseño de Malware => Mensaje iniciado por: OLM en 14 Julio 2015, 17:53 pm



Título: [Tutorial] Configuración de Dendroid - RAT para Android
Publicado por: OLM en 14 Julio 2015, 17:53 pm
(http://i1.wp.com/hackpuntes.com/wp-content/uploads/2015/06/dendroid-malware.png?resize=660%2C274)

Os traigo un tutorial para que aprendáis a configurar el RAT para Android llamado Dendroid.
Descarga: http://malwares.underc0de.org/?dir=Troyanos/Otros/DenDroid.zip (http://malwares.underc0de.org/?dir=Troyanos/Otros/DenDroid.zip)

REQUISITOS ANTES DE EMPEZAR

Disponer de un Servidor Web con PHP y MySQL
phpmyadmin
OpenJDK JRE x64
Java JDK


CREAR EL PANEL DE ADMINISTRACIÓN

Yo he creado un subdominio en esta web para realizar el tutorial, llamado dendroid.hackpuntes.com

(http://i1.wp.com/hackpuntes.com/wp-content/uploads/2015/06/dendroid5.png?resize=660%2C284)

Este subdominio redirige a una carpeta que he montado en public_html/dendroid, lugar en el cual subiremos nuestros archivos.

(http://i1.wp.com/hackpuntes.com/wp-content/uploads/2015/06/dendroid6.png?resize=222%2C84)

La primera parte del tutorial la dedicaré a mostraros como crear el panel de administración de nuestro DENDROID, desde él podremos controlar todos los dispositivos que tengamos infectados.

Si descomprimimos nuestro archivo .rar con el código fuente de DENDROID, nos encontraremos con 3 carpetas y un archivo, podemos echar un vistazo antes de empezar a montar el panel al archivo readme.md, en él nos explica como realizar todo el proceso, eso sí, en inglés.

(http://i0.wp.com/hackpuntes.com/wp-content/uploads/2015/06/dendroid2.png?resize=470%2C150)

En la carpeta Dendroid Panel, podemos ver los siguientes archivos:

(http://i2.wp.com/hackpuntes.com/wp-content/uploads/2015/06/dendroid3.png?resize=460%2C159)

Otra vez mas tenemos un readme, esta vez mas especifico para ayudarnos a montar el panel en el servidor web, primero nos centramos en la carpeta Panel, que tienes estos archivos.

(http://i0.wp.com/hackpuntes.com/wp-content/uploads/2015/06/dendroid4.png?resize=590%2C594)

Tenemos que editar con algún editor de texto, los siguientes archivos:

applysettings.php
blockbot.php
clearawaiting.php
clearmessages.php
deletebot.php
deletefile.php
deletepics.php
functions.php
table.php


y cambiar el valor de la variable $url que por defecto es “http://pizzachip.com/rat/” al nombre de nuestro dominio donde almacenaremos el panel de control, en mi caso “http://dendroid.hackpuntes.com”, de esta manera.

Antes
(http://i2.wp.com/hackpuntes.com/wp-content/uploads/2015/06/dendroid7.png?resize=294%2C43)

Después
(http://i0.wp.com/hackpuntes.com/wp-content/uploads/2015/06/dendroid8.png?resize=332%2C51)

Este paso lo tendremos que realizar en todos los archivos que anteriormente he descrito y asegurarnos que todos los archivos empiezan por <?php.

Ademas en el archivo reg.php cambiaremos el valor de $allowebDomains respetando las www.

Antes
(http://i1.wp.com/hackpuntes.com/wp-content/uploads/2015/06/dendroid9.png?resize=507%2C163)

Después
(http://i2.wp.com/hackpuntes.com/wp-content/uploads/2015/06/dendroid10.png?resize=660%2C163)

 Ahora toca modificar los siguientes archivos para poner una contraseña:

get.php
get-functions.php
new-upload.php
upload-pictures.php


Buscamos el valor “keylimepie” y lo sustituimos por nuestra contraseña:

Antes
(http://i2.wp.com/hackpuntes.com/wp-content/uploads/2015/06/dendroid11.png?resize=301%2C27)

Después
(http://i0.wp.com/hackpuntes.com/wp-content/uploads/2015/06/dendroid12.png?resize=304%2C26)

Es hora de pasar al servidor web, necesitamos crear una base de datos, con un usuario con todos los privilegios, debemos de recordar nombre de la base de datos, usuario, etc porque nos hará falta después.

Es posible que dependiendo del servidor que utilicéis los siguientes pasos pueden cambiar, mi servidor web utiliza CPanel, en caso de que el vuestro sea distinto y no sepáis como crear una base de datos con usuario con privilegios, poneos en contacto con la ayuda de vuestro hosting.

Creando base de datos.
(http://i1.wp.com/hackpuntes.com/wp-content/uploads/2015/06/Dendroid13.png?resize=660%2C295)

Añadiendo un usuario a la base de datos.
(http://i0.wp.com/hackpuntes.com/wp-content/uploads/2015/06/Dendroid14.png?resize=660%2C373)

Asignándole todos los privilegios.
(http://i0.wp.com/hackpuntes.com/wp-content/uploads/2015/06/Dendroid15.png?resize=660%2C462)

Buenos ya tenemos la base de datos y el usuario, ahora debemos de crear las tablas dentro de la base de datos, para crearlas haremos lo siguiente, dentro de la carpeta “Other Files” tenemos un archivo que se llama SQL.sql, lo abrimos con el editor y copiamos todo lo que contenga.

(http://i2.wp.com/hackpuntes.com/wp-content/uploads/2015/06/dendroid3.png?resize=460%2C159)

(http://i1.wp.com/hackpuntes.com/wp-content/uploads/2015/06/Dendroid17.png?resize=502%2C433)

(http://i1.wp.com/hackpuntes.com/wp-content/uploads/2015/06/Dendroid18.png?resize=660%2C638)

Ahora necesitamos ir a phpmyadmin, y en la base de datos que creamos anteriormente, tenenos una pestaña que dice SQL, pegamos el código anterior y lo ejecutamos.

(http://i1.wp.com/hackpuntes.com/wp-content/uploads/2015/06/Dendroid19.png?resize=660%2C443)

El resultado será las siguientes tablas creadas.

(http://i0.wp.com/hackpuntes.com/wp-content/uploads/2015/06/Dendroid181.png?resize=564%2C288)

Es hora de subir todos los archivos que modificamos anteriormente por FTP al servidor, podemos utilizar un programa como Filezilla para ello, simplemente arrastramos los archivos a la carpeta public_html/dendroid nos quedaría así:

(http://i2.wp.com/hackpuntes.com/wp-content/uploads/2015/06/Dendroid20.png?resize=660%2C659)

Nos dirigimos a la dirección de nuestro servidor donde tenemos almacenadas las carpetas, en mi caso como os comente anteriormente cree un subdominio.

Por lo tanto accedemos a dendroid.hackpuntes.com donde nos aparecerá la pantalla de configuración del panel, como esta:

(http://i0.wp.com/hackpuntes.com/wp-content/uploads/2015/06/Dendroid21.png?resize=307%2C99)

(http://i0.wp.com/hackpuntes.com/wp-content/uploads/2015/06/Dendroid22.png?resize=660%2C220)

En ella nos dice que es la primera vez que accedemos, que tenemos que crear una cuenta para el login, poner el nombre de la base de datos, el usuario de dicha base y también nos indica que está optimizado para funcionar en Google Chrome, pero yo lo he probado sobre Mozilla Firefox y sin problemas.

Si hacemos Click en Begin Setup, nos encontraremos con la que es posiblemente el paso mas importante a la hora de crear el panel de administración, la configuración de este.

Podéis dejarlo como veis en la imagen, es lo que trae por defecto y añadir en los campos correspondientes los datos que nos pide, menos mal que aún nos acordamos del nombre que pusimos a la base de datos, el usuario y la contraseña :).

En la parte derecha, podéis ver con fondo amarillo el campo Username y Password, este será el login para poder acceder al panel de control, nada que ver con el user y pass que creamos para la base de datos, además, es recomendable que no utilicemos las mismas contraseñas.

(http://i2.wp.com/hackpuntes.com/wp-content/uploads/2015/06/Dendroid23.png?resize=660%2C301)

Una vez rellenos los campos, Click en el boton Continue.

(http://i2.wp.com/hackpuntes.com/wp-content/uploads/2015/06/Dendroid24.png?resize=660%2C183)

Y nos dirá que todo está completo, Click en Finish Setup y nos aparecerá el login, podremos el User y Pass que pusimos en los campos amarillos del paso de configuración.

(http://i0.wp.com/hackpuntes.com/wp-content/uploads/2015/06/Dendroid25.png?resize=649%2C238)

Y finalmente, ya estamos dentro de nuestro panel de administración, totalmente configurado y listo para crear el troyano y administrar los dispositivos desde él.

(http://i0.wp.com/hackpuntes.com/wp-content/uploads/2015/06/Dendroid26.png?resize=660%2C329)

COMPILANDO LA APK MALICIOSA

Para esta parte del tutorial, necesitaremos tener instalado Eclipse + SDK de Android y tener instalado en el sistema el JDK, si tenéis cualquier tipo de problema en instalarlo, podéis buscar en Google, existen miles de tutoriales de como preparar Eclipse para el desarrollo de aplicaciones Android.

Una vez tenemos todo instalado en el sistema, abrimos nuestro Eclipse y deberemos importar el proyecto, nos vamos a File –> Import.

(http://i1.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den1.png?resize=305%2C533)

El proyecto que tenemos que importar, está dentro de la carpeta Dendroid APK, recordemos que ya hemos utilizado la carpeta Dendroid Panel y nos faltaría por utilizar una última carpeta llamada APKBinder, que es la necesaria para “camuflar” nuestra APK Maliciosa.

(http://i2.wp.com/hackpuntes.com/wp-content/uploads/2015/06/dendroid2.png?resize=470%2C150)

Una vez hacemos Click en Import, debemos de indicarle a Eclipse que es un proyecto ya existente, en la categoría Android.

(http://i2.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den2.png?resize=525%2C550)

En Root Directory buscamos la ruta de la carpeta Dendroid APK.

(http://i0.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den3.png?resize=660%2C429)

Debemos de asegurarnos que la casilla Copy projects into workspace está marcada, de lo contrario la carpeta Dendroid APK desaparecerá y no la podremos volver a utilizar.

(http://i1.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den4.png?resize=531%2C550)

Click en Finish y nos aparecerá en la parte izquierda de nuestro Eclipse el proyecto de Dendroid APK, listo para modificar y compilar.

(http://i1.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den5.png?resize=238%2C347)

Es de buena práctica, renombrar los proyectos, yo lo llamaré DendroidAPK.

(http://i1.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den6.png?resize=660%2C681)

(http://i2.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den7.png?resize=496%2C208)

Vamos a modificar del proyecto solamente el valor de 3 variables, estas variables se encuentran en la clase DroidianService.java, dentro del paquete com.connect y en la carpeta src.

Se llaman encodedURL, backupURL y encodedPassword, si nos fijamos bien, veremos que su valor está codificado en Base64.

(http://i2.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den8.png?resize=660%2C213)

El valor de estas variables deberemos de borrarlo, y los dejamos vacíos, como en la siguiente imagen.

(http://i2.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den9.png?resize=660%2C96)

¿Y que debemos de poner si los hemos dejado vacíos? Lo primero será visitar la siguiente pagina web, CRYPO es una herramienta online para cifrar y descifrar en multitud de sistemas de numeración, nosotros la que utilizaremos será BASE64, y deberemos de poner la dirección en la cual quedo instalado nuestro panel de control, recordad que la mía era http://dendroid.hackpuntes.com/

(http://i0.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den10.png?resize=660%2C416)

Una vez lo tenemos puesto, hacemos Click en el boton encrypt y nos aparecerá algo parecido a esto:

(http://i2.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den11.png?resize=660%2C416)

Ese String, es que tendremos que poner como valor a las variables encodedURL y backupURL.

Para la variable encodedPassword repetiremos el mismo paso, pero esta vez deberemos de cifrar la contraseña que pusimos a la hora de crear nuestro panel de control (aquella que cambiamos el valor de keylimepie).

Nos quedaría así (evidentemente con la contraseña agregada)

(http://i2.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den12.png?resize=660%2C100)

Ya tenemos el proyecto modificado, ahora deberemos de compilarlo y generar el APK, nos vamos a la pestaña File –> Export.

(http://i2.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den13.png?resize=390%2C627)

Y le indicamos que queremos una Aplicación Android (APK).

(http://i2.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den14.png?resize=525%2C550)

Hacemos Click en Next y en la siguiente ventana buscamos nuestro proyecto.

(http://i1.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den15.png?resize=525%2C550)

La primera vez, nos pedirá una clave, si ya la tenemos marcamos la opción de Use existing keystore, en caso contrario la crearemos, debemos de indicar la ubicación en la cual se guardara la llave y ponemos un contraseña (otra distinta de las utilizadas hasta ahora).

(http://i1.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den16.png?resize=525%2C550)

Rellenamos los campos.

(http://i0.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den17.png?resize=525%2C550)

Y por ultimo nos pedirá que marquemos la ruta en la cual se generará el APK.

(http://i2.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den18.png?resize=525%2C550)

Click en Finish y ya tenemos nuestra APK maliciosa, lista para infectar a dispositivos.

(http://i0.wp.com/hackpuntes.com/wp-content/uploads/2015/07/den19.png?resize=337%2C109)

Fuente: http://hackpuntes.com (http://hackpuntes.com/)
Autor: Javier Olmedo
PD: Cuanto pueda modifico el tema y subo la última parte, en la cual se bindea junto a otra APK legitima de Google Play.


Título: Re: [Tutorial] Configuración de Dendroid - RAT para Android
Publicado por: oKo en 12 Agosto 2017, 21:05 pm
Hola muy buen tutorial , pero cuando los archivos modificados a la pagina web no me carga la web uso el 000web