Hola hackers, en esta ocasión vamos a ver como utilizar BackdoorMe.

BackdoorMe se trata de una utilidad de post-explotación capaz de crear un backdoor o puerta trasera en equipos Unix. Dispone de una interfaz similar a la de Metasploit.

Para transferir la puerta trasera al equipo objetivo, necesitamos que tenga el servicio SSH corriendo (o abrirlo en su defecto) y las credenciales del mismo.

BackdoorMe viene con una serie de puertas traseras, módulos (se pueden usar con cualquier puerta trasera para hacerlas mas potentes) y auxiliares (para ayudar a la persistencia). A continuación una lista de todo lo que nos ofrece.

MODULOS

  • Adduser: agrega un nuevo usuario en el equipo.
  • Cron: añade una puerta trasera con el usuario root para que se ejecute con cierta frecuencia.
  • Poison: envenena el archivo ejecutable de un comando del equipo objetivo, de esta forma, cada vez que el usuario utilice dicho comando, se ejecutará la acción correspondiente al comando y el backdoor.
  • Startup: permite que el backdoor se ejecute al encender el sistema, o meterlo en el archivo .bashrc para que se ejecute cada vez que se abre una consola o terminal.
  • Web: se instala un servidor web y coloca una web que desencadena la puerta trasera. Solo hay que visitar ésta y la puerta trasera se iniciará.
  • Whitelist: lista de las IPs que pueden conectarse al backdoor.

PUERTAS TRASERAS 

  • ssh_port: cambia el puerto para el servicio SSH
  • remove_ssh: desactiva el servicio SSH. Se usa cuando terminamos la sesión.
  • ssh_key: crea una clave RSA.

ESCALATION

  •  Shell: se trata de una puerta trasera para escalada de privilegios, similar a SetUID. Una vez ejecutada, podemos entrar como un usuario normal y ejecutar el comando .bash -p para obtener una shell con privilegios root.
  • SetUID: nos permite infectar el archivo bin de un comando (por ejemplo nano) y, entrando con un usuario sin privilegios, poder ejecutar el comando como si del usuario root se tratase.

WINDOWS

  • Windows: usa msfvenom para crear un backdoor para windows.

SHELL

  • Netcat: usa netcat para obtener una shell interactiva.
  • Web: instala apache en el equipo objetivo y envía un payload, luego basta con entrar en el servidor y ejecutar el payload para, con multi/handler escuchando, obtener una shell.
  • PHP: ejecuta un backdoor php que redirige el resultado a bash.
  • Bash: un simple script bash para conectarse a una IP y puerto especifico.
  • Metasploit: usa msfvenom para crear un payload reverse_tcp y lo ejecuta para obtener una shell meterpreter.
  • Perl: script escrito en perl y redirige el resultado a bash.
  • Pupy: esta shell utiliza el backdoor creado por n1nj4sec (enlace).
  • Python: script escrito en python para ejecutar comandos y recibir los resultados en bash.

AUXILIARES

  • Web: instala el servidor web Apache en el objetivo.
  • User: crea un nuevo usuario en el objetivo.
  • Append: añade o quita el atributo append (nos permite añadir información) a cualquier archivo del sistema.
  • SimpleHttp: instala el servidor python SimpleHttp en el objetivo.
  • Keylogger: instala un keylogger en el objetivo con opción de recibir el log en un mail dado.
  • Immutable: añade o quita el atributo immutable a cualquier archivo del sistema.

Como pueden ver tenemos infinidad de opciones para colocar nuestro backdoor o puerta trasera.

Lo primero que haremos será descargar BackdoorMe y prepararlo para su uso.

Ya está listo para usarlo, ahora lo ejecutamos con python master.py.

Para ver los comandos que tenemos disponibles escribiremos help.

En esta PoC usaremos como equipo objetivo una máquina virtual con Metasploitable 2 (192.168.0.195).
Lo primero que haremos será cambiar la ip local, que es donde se conectará el backdoor, tenemos que poner la ip de nuestra máquina atacante. Para esto usamos el comando change_ip, pulsamos enter, y escribimos la IP.
A continuación añadiremos nuestro objetivo.
  • Target Hostname: IP del objetivo
  • Username: nombre de usuario del servicio SSH.
  • Password: contraseña del servicio SSH.

Decir que BackdoorMe soporta varios targets (objetivos) a la vez, los diferencia asignandoles números (1, 2, 3…). Para usar el backdoor en uno u otro target, la sintaxis es la siguiente:

use <backdoor> <numero target>
Ejemplo: use shell/metasploit 2 

Establecemos la conexión por SSH con el comando open.

Ya estamos conectados al objetivo.

Con el comando list vemos los diferentes backdoors disponibles. Vamos a ver el funcionamiento de algunos de ellos.