> For the complete documentation index, see [llms.txt](https://4lec4st.gitbook.io/4lec4st/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://4lec4st.gitbook.io/4lec4st/ejpt-notes/pruebas-de-penetracion-de-host-y-red/explotacion/descripcion-general-del-analisis-de-vulnerabilidades/escaneo-de-vulnerabilidades/escaneo-de-vulnerabilidades-con-scripts-de-nmap.md).

# Escaneo de vulnerabilidades con scripts de Nmap

## 🧪 Laboratorio Práctico

**Paso 1:** Abra el enlace del laboratorio para acceder a la instancia de la GUI de Kali

**Paso 2:** Identificar la dirección IP de destino

Antes de comenzar, deberá obtener la dirección IP del sistema de destino dentro del entorno de laboratorio. Esto se debe a que las direcciones IP y las subredes correspondientes cambian al iniciar un laboratorio.

Para identificar la dirección IP de destino, deberá ejecutar el siguiente comando en el sistema Kali Linux que se le proporcionó:

**Dominio:**

```
ifconfig
```

<figure><img src="/files/G2j6O3URr88TmwUcG9f2" alt=""><figcaption></figcaption></figure>

Como se muestra en la captura de pantalla anterior, identifique la dirección IP de Kali Linux asociada a la interfaz eth1. La dirección IP de destino siempre es la siguiente IP dentro de la subred. En este caso, la IP de destino es:

```
192.152.25.3
```

**Nota:** En su caso, esto será diferente, así que asegúrese de sustituir la dirección IP con la de su laboratorio.

**Paso 3:** Identificar los servicios que se ejecutan en el sistema de destino

Ahora que hemos identificado la dirección IP del objetivo, podemos realizar un escaneo rápido de detección de la versión del servicio Nmap para identificar los puertos abiertos que se ejecutan en el objetivo y los servicios correspondientes.

Esto se puede hacer ejecutando el siguiente comando:

**Dominio:**

```
nmap -sV -O 192.152.25.3
```

Como se muestra en la siguiente captura de pantalla, este escaneo revela que el objetivo solo tiene el puerto 80 abierto ejecutando Apache.

<figure><img src="/files/HEC9BR8tNlw5NnDkAyPy" alt=""><figcaption></figcaption></figure>

**Paso 4:** Exploración de la aplicación web que se ejecuta en Apache

Podemos visitar la dirección IP en nuestro navegador web para identificar qué sitio web o aplicación web está alojado.

Como se muestra en la siguiente captura de pantalla, a primera vista, el sitio web parece estar en construcción. Sin embargo, al examinarlo más de cerca, podemos identificar un temporizador de cuenta regresiva que parece funcionar dinámicamente.

<figure><img src="/files/1MXWnMVqBNURnpMqtipo" alt=""><figcaption></figcaption></figure>

Para comprender cómo funciona este temporizador, podemos ver el código fuente de la página de inicio haciendo clic derecho en la página y haciendo clic en "Ver código fuente de selección".

Como se muestra en la siguiente captura de pantalla, el código fuente de la página web contiene un bloque JavaScript que ejecuta un script CGI llamado **gettime.cgi** .

<figure><img src="/files/k1E2HnrxR8BrrXkxjyYX" alt=""><figcaption></figcaption></figure>

Esto parece muy interesante ya que el objetivo puede ser vulnerable al exploit ShellShock ya que el sitio está ejecutando un script CGI que es responsable de mostrar el temporizador de cuenta regresiva.

**Nota:** Un script CGI es un script que se ejecuta en un servidor web y que puede ejecutar comandos a nivel de sistema y mostrar la salida en el servidor web.

**¿Qué es ShellShock?** ShellShock es una vulnerabilidad que afecta a las versiones 1.0.3-4.3 de Bash y permite a los atacantes ejecutar comandos remotamente en un objetivo Linux mediante la inyección de encabezados HTTP maliciosos.

**Paso 5:** Realizar un análisis de vulnerabilidad de ShellShock con Nmap

Si bien podemos identificar un script CGI ejecutándose en un servidor web, aún necesitamos identificar de manera concluyente si el servidor web es vulnerable al exploit ShellShock.

Por suerte, Nmap nos proporciona un script para hacer precisamente esto. Podemos ejecutar el script **http-shellshock.nse** en el destino con el siguiente comando:

**Dominio:**

```
nmap -sV -p 80 --script=http-shellshock --script-args "http-shellshock.uri=/gettime.cgi" 192.152.25.3
```

**Nota:**&#x45;&#x6C;**--script-args**El parámetro nos permite especificar la URI del script CGI que se ejecuta en el servidor web.

Como se muestra en la siguiente captura de pantalla, el escaneo del script Nmap revela que el servidor web que se ejecuta en el objetivo es vulnerable al exploit ShellShock.

<figure><img src="/files/9YgKrQOt27lJp322l8LU" alt=""><figcaption></figcaption></figure>

Este es solo un ejemplo de cómo se puede usar Nmap para realizar análisis de vulnerabilidades. Nmap también le proporciona una gran colección de scripts de análisis de vulnerabilidades a los que se puede acceder ejecutando el siguiente comando:

**Dominio:**

```
ls -al /usr/share/nmap/scripts | grep vuln
```

Esto le proporcionará una lista de scripts de Nmap que pueden utilizarse para identificar vulnerabilidades específicas en un sistema de destino.

#### Conclusión

En este laboratorio, analizamos cómo usar Nmap para realizar análisis de vulnerabilidades en servicios específicos que se ejecutan en un objetivo. Esto puede ser muy útil y rápido al intentar identificar si un objetivo es vulnerable a un exploit o vulnerabilidad específica.
