Mostrando entradas con la etiqueta msfvenom. Mostrar todas las entradas
Mostrando entradas con la etiqueta msfvenom. Mostrar todas las entradas

miércoles, 10 de agosto de 2016

Pentesting a la abeja (Parte I)

Buenas hackers! En este CTF vamos a hacer un pentesting a esta maquina de Vulnhub
Es una maquina muy completa que permite realizar un test de intrusión al servidor, además de hacer retos de pentesting web tal como SQLi, XSS, LFI etc...



----------------
bee-box - README
----------------

bee-box is a custom Linux VM pre-installed with bWAPP.

With bee-box you have the opportunity to explore all bWAPP vulnerabilities!
bee-box gives you several ways to hack and deface the bWAPP website.
It's even possible to hack the bee-box to get root access...

This project is part of the ITSEC GAMES project. ITSEC GAMES are a fun approach to IT security education. 
IT security, ethical hacking, training and fun... all mixed together.
You can find more about the ITSEC GAMES and bWAPP projects on our blog.

We offer a 2-day comprehensive web security course 'Attacking & Defending Web Apps with bWAPP'.
This course can be scheduled on demand, at your location!
More info: http://goo.gl/ASuPa1 (pdf)

Enjoy!

Cheers

Malik Mesellem
Twitter: @MME_IT
 

Atención Spoiler!!

Se verá dirbuster para realizar una busqueda mediante fuerza bruta en directorios y archivos del servidor. Existen distintos diccionarios en la carpeta wordlists sobre esta herramienta.
Una vez visto con dirbuster el listado de directorios obtenidos y garantizado un metodo de acceso para poder subir un backdoor, vamos a iniciar el metasploit para comprobar FTP por el puerto 21, y asi un medio de subida al servidor.
Con el usuario anonymous se aprecia que tiene permisos de lectura y escritura, y por tanto que esta habilitado este tipo de usuario en el servidor FTP, muy usado en las organizaciones para acceso publico.
Se crea un backdoor en php, para poder obtener una shell reversa, con msfvenom.
Una vez subido necesitamos tener el exploit multi/handler a la escucha de la conexión inversa o payload creado con msfvenom en php. Por tanto tenemos que elegir el payload que usamos para crear ese rabbit.php
Una vez a la escucha, abrimos el navegador y enviamos una peticion http clickeando el archivo rabbit.php y asi se nos abrira una sesion meterpreter a nivel usuario del servidor.


Un saludo Naivenom

sábado, 5 de marzo de 2016

Crea tu backdoor automatizado con BackdoorMe


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 existente al archivo crontab del 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 podeis 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.


METASPLOIT

Este backdoor nos devolverá una shell meterpreter.


Para cambiar cualquiera de las opciones del backdoor usaremos la siguiente sintaxis:

set <nombre opción> <nuevo valor>
Ejemplo: set name apache

Una vez cambiadas las opciones a nuestro gusto, ejecutamos el backdoor con exploit.


En la captura podemos ver los pasos que sigue, también nos dice que ejecutemos Metasploit y pongamos a la escucha el exploit multi/handler.




Con todo listo, pulsamos enter (en la consola de BackdoorMe) y obtendremos la shell.



NETCAT

En este ejemplo, utilizaremos el backdoor netcat junto con el módulo poison.

Igual que hicimos antes, seleccionamos el backdoor y lo configuramos.


Ahora añadimos el módulo al backdoor.


Como vemos en la captura para cambiar las opciones del módulo se usa la siguiente sintaxis:

set <nombre modulo>.<opción> <valor> 
(fijaros que entre el módulo y la opción, hay un punto)

Ejemplo: set poison.name ls

Yo voy a dejar las opciones tal cual puesto que el comando ls se utiliza bastante y es lo que nos interesa. Usamos el comando exploit para ejecutarlo.


Al igual que paso con el backdoor de Metasploit, en este también nos indica lo que debemos hacer para obtener la shell. Abrimos una nueva terminal/consola y ponemos el netcat a la escucha como nos indica: nc -v -n -l -p 4444.

Pulsamos enter en la consola de BackdoorMe y obtendremos la shell.



Gracias al módulo poison, ahora cada vez que se use el comando ls en el equipo objetivo, ejecutará el backdoor y, teniendo el netcat a la escucha, obtendremos una shell.


ESCALATION/SHELL

Con este backdoor, aunque entremos con un usuario sin privilegios, obtendremos una shell con privilegios ejecutando el comando .bash -p.


Esta vez no nos va devolver una shell directamente como en los vistos anteriormente. Para ver que ha funcionado, nos conectaremos por SSH al equipo objetivo con un usuario sin privilegios.


Ahora ejecutamos el comando antes mencionado y obtendremos la shell con privilegios.


BackdoorMe además dispone de un backdoor (access/remove_ssh) que nos permite cerrar el servicio SSH  en el objetivo al finalizar.


Si hacemos un nmap al objetivo apuntando al puerto 22 SSH, vemos que esta cerrado.




Hasta aquí la PoC de hoy, espero os haya gustado y recordar que está realizado con fines educativos, no nos hacemos responsables del mal uso que se le pudiera dar.

Google Analytics