Pivoting con Metasploit
Last updated
Last updated
SI encontramos en una máquina solo una interfaz de red eso signfica que esa no es la que tenemos que hacer Pivoting ya que no se puede. A continuación enseñó un ejemplo de lo que podría ser.
Este sería el esquema que vamos a tratar. Se realiza Pivoting en la máquina Windows.
Ahora explicaré cómo configurar una red virtual en VirtualBox y asignar diferentes adaptadores de red a las máquinas virtuales (VM) involucradas en un entorno de pentesting. En este caso, utilizaremos máquinas con Windows 7, Metasploitable2 y Kali Linux.
Acceder al Administrador de Red:
En la ventana principal de VirtualBox, dirígete a la barra de menús superior y selecciona Archivo > Herramientas > Administrador de red.
Crear una nueva Red Interna (NAT):
En el Administrador de Red, localiza el apartado Redes NAT.
Haz clic en el botón Crear para añadir una nueva red.
Asignación de la red NAT:
Dale un nombre a la red, por ejemplo, Red_Pivoting
.
Asigna el prefijo IPv4 de la red como 10.10.10.0/24
.
Asegúrate de que se haya asignado correctamente y haz clic en Aplicar.
Ahora tienes configurada una red interna (NAT) que utilizarás para conectar las máquinas virtuales.
Acceder a la configuración de la máquina:
En VirtualBox, selecciona la máquina de Windows 7 y haz clic en Configuración.
Configuración de adaptadores de red:
En el panel de configuración de la máquina, ve a la sección Red.
Habilita Adaptador 2, selecciona la opción Conectado a y elige Red NAT. Esta configuración le permitirá a la máquina Windows 7 comunicarse a través de la red NAT que acabamos de crear.
Verificación de interfaces de red:
Ahora la máquina Windows 7 tendrá dos interfaces de red: una asociada al adaptador puente (que se conecta a la red física de tu PC) y otra conectada a la red NAT que acabamos de configurar.
Configurar adaptador de red en Metasploitable2:
Selecciona la máquina Metasploitable2 en VirtualBox y ve a la configuración.
Asegúrate de que solo hay un adaptador de red conectado y que esté configurado para usar Red NAT.
Esto asegura que Metasploitable2 estará en la misma red NAT que la máquina Windows 7, pero sin interfaces adicionales que puedan complicar la configuración.
Configurar adaptador de red para Kali Linux:
Selecciona la máquina Kali Linux y abre su configuración en VirtualBox.
En la sección Red, configura el Adaptador 1 como un Adaptador puente. Esto hará que Kali Linux se conecte directamente a la red física de tu equipo, permitiéndole interactuar con otras máquinas de la misma red local.
Kali Linux: Inicia primero.
Windows 7: Luego, enciende la máquina víctima.
Metasploitable2: Finalmente, arranca la máquina vulnerable.
Abre la terminal y ejecuta ipconfig
.
Verifica que haya dos interfaces de red: una para el adaptador puente y otra para la red NAT.
Abre la terminal y ejecuta ifconfig
.
Asegúrate de que solo haya una interfaz de red conectada a la red puente.
Inicia sesión con:
Usuario: msfadmin
Contraseña: msfadmin
Ejecuta ifconfig
y asegúrate de que solo haya una interfaz de red conectada a la red NAT.
Para identificar las máquinas en la red local:
Explotación de la Vulnerabilidad EternalBlue.
En meterpreter.
Busca una segunda IP en la red NAT en la interfaz 13. Esta podría indicar una red interna para pivoting. Si solo hay una IP, tal vez esta máquina no sea adecuada para pivoting.
Poner en Segundo Plano la Sesión de Meterpreter
Para ver las sesiones en segundo plano.
Módulo de Metasploit para encontrar equipos de la Red Interna.
Nos encuentra las distintas IPs de nuestra Red Interna. Ahora quiero que me envíe el tráfico desde la máquina víctima Windows a la máquina víctima objetivo Metasploitable2 para que llegue a mi Kali.
Ya tenemos el tráfico enrutado. Hacer escaneo de los puertos abiertos de la máquina víctima.
Vemos los puertos abiertos es hacer nmap
pero con Metasploit. En caso de hacer el Pivoting en Windows realizamos lo siguiente.
Abrimos el navegador con la IP de la máquina Windows 7 con el puerto 5000 porque es donde me he traído el puerto 80.
Para crear una red en VirtualBox y configurar las máquinas necesarias, sigue estos pasos:
Creación de Red NAT:
Ve a Archivo > Herramientas > Administrador de red.
Crea una red NAT con el nombre Red_Pivoting
y asigna la dirección IP 10.10.10.0/24
.
Configuración de Máquinas Virtuales:
Máquina Kali:
En la configuración de red, elige Adaptador puente para el único adaptador de red activo.
Máquina Friendly (Máquina intermedia):
Configura el primer adaptador como Adaptador puente.
Configura el segundo adaptador en modo Red NAT y selecciona la red Red_Pivoting
.
Máquina Basic (Máquina final):
Activa solo un adaptador de red y configúralo en modo Red NAT, seleccionando la red Red_Pivoting
.
Iniciar Máquinas:
Con las configuraciones completadas, inicia las máquinas en el orden necesario.
Desde la máquina Kali, ejecuta el siguiente comando para identificar dispositivos en la red local:
Realiza un escaneo con Nmap en la máquina objetivo para detectar posibles vulnerabilidades. Utiliza el siguiente comando:
En los resultados, se observa que los puertos 80 y 21 están abiertos.
El puerto 21 (FTP) está abierto, permitiendo autenticación con el usuario anonymous
y una contraseña en blanco (comportamiento predeterminado).
Genera un payload para obtener acceso remoto con msfvenom
:
Accede al servicio FTP y sube el payload utilizando el siguiente comando:
Pon el puerto 443 en escucha para recibir la conexión inversa:
Para activar el payload y obtener acceso, visita la siguiente URL:
Dado que la conexión inicial no es estable, creamos una nueva escucha en el puerto 444:
Luego, transferimos la sesión del puerto 443 al 444 con el siguiente comando:
Para mejorar el control sobre la máquina, generamos un payload de Meterpreter con msfvenom
:
Inicia un servidor web en Python para facilitar la transferencia del archivo malicioso a la máquina víctima:
Desde la sesión activa en la máquina víctima, descarga el payload usando wget
:
Abre Metasploit y selecciona el módulo de handler:
Muestra las opciones del módulo seleccionado:
Elige el payload de Meterpreter adecuado para Linux:
Asigna la dirección IP de la máquina atacante:
Inicia el handler para recibir la sesión:
En la máquina intermedia Friendly, otorga permisos de ejecución al archivo malicioso:
Inicia la ejecución del archivo para enviar la sesión a Metasploit:
Para realizar pivoting, necesitamos obtener privilegios de root ya que como usuarios www-data
tenemos permisos limitados.
Comprobamos los permisos sudo
del usuario actual:
El resultado muestra que podemos ejecutar el binario /usr/bin/vim
con privilegios elevados. Antes de continuar, configuramos el TTY:
Consultando GTFOBins, encontramos el comando para escalar privilegios utilizando vim
:
Con la sesión de root obtenida, podemos completar el proceso de pivoting ejecutando el payload en la máquina intermedia:
Desde el intérprete de Meterpreter en la máquina intermedia Friendly, listamos las interfaces de red para visualizar la red interna:
Observaremos dos interfaces de red:
Friendly: máquina intermedia.
Basic: la máquina final en la red interna.
Para escanear otros dispositivos en la red, enviamos la sesión actual de Meterpreter a segundo plano:
Usar Ctrl + Z
para minimizar la sesión.
Confirmar que la sesión sigue activa con:
Configuramos el enrutamiento para escanear la red interna cargando el módulo autoroute
en Metasploit:
Asigna el SESSION ID adecuado (en este caso, 1
):
Ejecuta el módulo:
Verifica el enrutamiento configurado:
Para identificar otros dispositivos en la red interna, creamos un script en bash. En tu máquina local, crea el archivo:
Incluye el siguiente contenido en el script:
Este script envía un ping a las IPs en el rango 10.0.10.1 - 10.0.10.255
para identificar hosts activos.
Para transferir el script a la máquina intermedia:
Inicia un servidor HTTP en tu máquina:
Desde la sesión de Meterpreter, descarga el script en Friendly:
Verifica que el archivo se transfirió correctamente:
Asigna permisos de ejecución al archivo:
Ejecuta el script para ver los hosts activos en la red interna:
En Metasploit, usa el módulo de escaneo de puertos TCP para analizar la IP identificada.
Este módulo muestra los puertos abiertos en la máquina objetivo.
Para acceder a los servicios en la máquina víctima, redirigimos sus puertos hacia nuestro equipo local.
Ejemplo de redirección para SSH en el puerto 22
hacia el puerto 222
en tu máquina:
Conéctate al servicio SSH desde tu terminal local:
Si necesitas redirigir otro puerto, como el 631
, puedes mapearlo al puerto 5000
en tu equipo:
Ahora puedes acceder al servicio en tu navegador en 127.0.0.1:5000
.
Para realizar un ataque de fuerza bruta en el servicio SSH, utiliza Hydra:
En este escenario, tenemos tres máquinas configuradas de la siguiente manera:
Máquina Atacante: Kali Linux
Conexión de red: Adaptador en modo puente.
Máquina Intermedia: Ubuntu
Conexión de red: Adaptador en modo puente y otro adaptador en red interna.
Máquina Objetivo: Metasploitable2
Conexión de red: Adaptador en modo red interna (conectada solo con la máquina intermedia Ubuntu).
Objetivo: Realizar un pivoting desde Kali Linux para acceder a la máquina Metasploitable2 a través de Ubuntu, utilizando SSH y la herramienta SSHuttle.
Instalar y habilitar SSH en la máquina intermedia Ubuntu si no está ya configurado:
Verificar las interfaces de red en Ubuntu para identificar las IP disponibles:
Esto mostrará las direcciones IP asignadas a cada interfaz. Necesitaremos la IP del adaptador en modo puente para conectarnos desde Kali Linux.
En Kali Linux, usa SSHuttle para enrutar el tráfico de red hacia la red interna de Ubuntu, permitiendo el acceso a la máquina Metasploitable2:
Donde:
<usuario_en_ubuntu>
es el usuario en la máquina Ubuntu.
<IP_de_ubuntu>
es la dirección IP del adaptador en modo puente en la máquina Ubuntu.
10.10.10.0/24
es el rango de la red interna (ajusta este rango según la configuración de tu red interna).
Explicación: El comando indica a SSHuttle que redirija todo el tráfico para la red 10.10.10.0/24
a través de la conexión SSH con Ubuntu. Esto nos permite "pivotar" hacia la máquina Metasploitable2, situada en la red interna.
En la máquina intermedia (Ubuntu), ejecuta arp-scan para descubrir los dispositivos conectados en la red interna y obtener la IP de la máquina Metasploitable2:
Donde:
enp0s8
es la interfaz configurada en red interna en Ubuntu (ajusta el nombre de la interfaz según tu sistema).
Este comando mostrará las IPs de los dispositivos activos en la red interna. Anota la IP de Metasploitable2 para acceder a ella en el siguiente paso.
Ahora, desde Kali Linux, puedes acceder directamente a la máquina Metasploitable2 usando la IP obtenida en el paso anterior.
Puedes, por ejemplo, abrir la IP de Metasploitable2 en un navegador o realizar escaneos de puertos utilizando herramientas como nmap
:
Esto te permitirá enumerar servicios y realizar pruebas en la máquina objetivo como si estuviera en la misma red que Kali Linux.