> 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/diff3r3nts3c.md).

# Diff3r3ntS3c

### 🔍 **RECONOCIMIENTO**

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

```bash
ping -c 1 192.168.1.64
```

para verificar la conectividad de red.

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

A continuación, se realiza el comando:

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

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

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

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

### 🔎 **EXPLORACIÓN**

Se utiliza el comando:

```bash
sudo nmap -sCV -p80 -v 192.168.1.64
```

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

<figure><img src="/files/5mdyLdzFjRP8PaVjVbQQ" alt=""><figcaption></figcaption></figure>

Revisamos el puerto 80.&#x20;

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

### 🚀 **EXPLOTACIÓN**

Vemos que se pueden subir archivos pero con una extensión poco común que es **.phtml** por lo que subimos una Reverse Shell con esa extensión.

{% embed url="<https://www.revshells.com/>" %}

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

Revisamos directorios para ver dónde se ha subido.

```bash
gobuster dir -u http://192.168.1.64 -w /usr/share/wordlists/dirbuster/directory-list-lowercase-2.3-medium.txt -x html,txt,php,xml
```

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

Hay un directorio **/uploads** por lo que se habrá subido ahí.

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

Nos ponemos en escucha.

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

Hacemos el [tratamiento de la TTY](https://invertebr4do.github.io/tratamiento-de-tty/#) para trabajar más cómodos.

### 🔐 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. No tenemos permisos SUDO.

En el directorio **/home/candidate** hay un directorio oculto y que contiene un archivo.&#x20;

<figure><img src="/files/3tnvJSQ9pAcHGddo1vrU" alt=""><figcaption></figcaption></figure>

Revisando el **/etc/crontab** se ejecuta cada minuto el script.

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

Modificamos el contenido del archivo para que cuando se ejecuta nos haga una conexión remota.

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

Al ponernos en escucha y recibir la conexión vemos que ya nos conectamos como root.

<figure><img src="/files/8g9FVyP96TDul4pHLTid" alt=""><figcaption></figcaption></figure>
