sábado, 19 de mayo de 2012

Reverse Shell detrás de router utilizando SSH

Saludos gente!!!
Hoy quería comentar una opción de ssh conocida como Local Port Forwarding es bastante útil y por ahí no muy conocida, en este caso la utilizaremos para hacer un reverse shell  estando detrás de un router y sin  tener permisos para abrir puertos.
Para comenzar vamos a hacer una breve explicación de que es el port forwarding, que es básicamente direccionar el trafico de un puerto a otro, lo que hace ssh es reenviar el trafico de un puerto local a través de un túnel hacia un puerto remoto y viceversa.
Bien creo que no soy muy bueno explicando y mi intención no es explicar como usar ssh sino como usar la opción -R  para hacer un local port forwarding así que vamos a hacer un ejemplo de remote forwarding port (-L) para conectar a un irc para luego hacer un forward de verdad :D
 ssh  -NL 1337:irc.freenode.net:6667 ssh.servidor -l usuario
bien con esto estaríamos haciendo un túnel para conectar a freenode solo bastaría poner en nuestro irssi " /connect 127.0.0.1 1337 " o ejecutar irssi -c 127.0.0.1 -p 1337 para conectar a través del túnel a freenode y así ocultar nuestra ip =)
Ahora vamos a usar la opción -R para hacer el local port forwarding para lograr un reverse shell. ¿que hace la opción -R?

por ejemplo con el -L le dices a ssh que reenvíe el tráfico que vaya a un puerto local hacia uno remoto, con -R le dices a ssh que reenvíe el tráfico que llegué a un puerto remoto hacia uno local. Suena bastante bien no :D
Pero olvide mencionar que los túneles solo escuchan a localhost (127.0.0.1) por lo tanto todavía nos falta editar el archivo ssh_config en otras distros es sshd_config en ssh.servidor agregar una opción al final del archivo /etc/ssh/ssh_config:
GatewayPorts yes
bien con eso los túneles escucharían a cualquier interfaz, ahora un ejemplo de como hacer el local port forwarding :
ssh -NR 1337:127.0.0.7:4444 ssh.servidor -l usuario
 Lo cual quiere decir: “abre un túnel desde ssh.servidor en el puerto 4444 que reenvíe el tráfico hacia mi máquina (127.0.0.1) en el puerto 1337″.
Bien ahora solo quedaría hacer el reverse shell como siempre :P solo con la particularidad de que en vez de poner tu ip pondrás la ip del ssh.servidor
que seria maso menos así:

en tu pc ponemos netcat a la escucha:
nc -nlvvp 1337
y en la reverse shell solo quedaría poner:

ip: ssh.servidor  port:4444

con eso deberías tener tu reverse shell detrás de un router espero que haya entendido el procesamiento y les sea de utilidad ya en este caso nos es útil para hacer un reverse shell detrás de un router pero pueden darle un montón de utilidades, es cuestión de usar la imaginación.
bueno aca les dejo el link de un php reverse shell que es una de las que uso por si quiere practicar un saludo.

PHP Reverse Shell

                                                                                                           nagat0

martes, 29 de noviembre de 2011

About RSecurity


Research Security es una comunidad formada por miembros de varios paises de habla hispana, con el unico proposito de desarrolar y publicar informacion sobre las T.I.C.

Podras encontrarnos en el irc,  irc.freenode.net, canal: #RSecurity

En esta comunidad no apoya ningun tipo de actividad fraudulenta ni delictiva y estamos en total desacuerdo con ello.

En este momento que vive el mundo de manipulación y censura o si lo prefieres llamarlo falsa democracia, Rs sale a la luz para hacer libre distribucion de lo que hasta ahora estaba al alcance de solo unos pocos, la informacion no es un privilegio, es un derecho.

Creeis que tenemos miedo? A vosotros no.