# BaseME

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FUAcpJh9nbgCpSEJCP65V%2Fimage.png?alt=media&#x26;token=e45e88e3-0df0-4f0f-8c42-ea6006534bb1" alt=""><figcaption></figcaption></figure>

## Fase de reconocimiento

### Nmap

Hacemos un escaneo de nmap que nos releva que los puertos 22 (SSH) y 80 (HTTP) se encuentran abiertos:

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FBM1Dismk4oGES3smiuvs%2Fimage.png?alt=media&#x26;token=f362075d-934a-489c-b2db-dc00319989f3" alt=""><figcaption></figcaption></figure>

En la página web encontramos una base64 ([Cyberchef](https://gchq.github.io/CyberChef/)) y una lista de nombres:

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FPISXimGpkvnCNOxhtBWQ%2Fimage.png?alt=media&#x26;token=6318d48f-af32-40f5-9c80-8b7b952aa18c" alt=""><figcaption></figcaption></figure>

Lo que entiendo con el mensaje es que hay que pasar a base64 todas las contraseñas incluyendo el usuario lucas y hacer un ataque de fuerza bruta, pero al parecer no van por ahí los tiros:

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FbzMEGeno9qCSUqCLZEKi%2Fimage.png?alt=media&#x26;token=c91a7f76-5091-4a51-a914-0a388e491348" alt=""><figcaption></figcaption></figure>

## Fase de intrusión

### Bash

Ahora voy a hacer una lista con todas las palabras de la lista del código fuente y voy a hacer fuzzing con ellas, lo intente pero no era por ahí el camino, así que voy a probar con un diccionario normal. Para ello voy a hacer un pequeño script en bash que automatice el proceso:

```bash
while read line; do echo "$line" | base64 >> archivo_codificado.txt; done < archivo_entrada.txt
```

### Gobuster

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FfUCXJT7S3QnlCCIYsyPY%2Fimage.png?alt=media&#x26;token=67e0081d-ffc4-48f0-9f9e-edea137ebb23" alt=""><figcaption></figcaption></figure>

Los archivos encontrados se llaman sin codificar id\_rsa y robots.txt, su interior conteniene:

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2F7fNBIT598GhqADhBoanZ%2Fimage.png?alt=media&#x26;token=47471bd8-6b84-453e-aee5-539e10424a0d" alt=""><figcaption></figcaption></figure>

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FaQ1a1CHVhqMT5YbedT5k%2Fimage.png?alt=media&#x26;token=582ebd88-5b43-406a-99e5-1bbafa1de64e" alt=""><figcaption></figcaption></figure>

No encuentro nada...

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FmlgEM0EOtbawayp3m1QA%2Fimage.png?alt=media&#x26;token=ecfc505d-89d9-4011-8885-619f447014a2" alt=""><figcaption></figcaption></figure>

yyyyyyy bingo!

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FnE9mbcipJOpi4LdA1c0U%2Fimage.png?alt=media&#x26;token=3b5e8a30-8536-41ab-a068-9bbf8e774ac7" alt=""><figcaption></figcaption></figure>

Intento iniciar sesión por el puerto SSH y el usuario lucas con la private key pero nos pide la key del id\_rsa, vamos a tratar de conseguir la contraseña usando ssh2john y john. Primero intente con el rockyou pero tardaba lo suyo, y recordé aquella wordlist de base64 que hice previamente basándome en el comentario de HTML de la web, así que la uso y rápidamente da con la contraseña valida!

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FmiHwQfdZeBPNH8GfiQS6%2Fimage.png?alt=media&#x26;token=12117584-95da-4d68-9b0c-f33e07de8cd3" alt=""><figcaption></figcaption></figure>

## Escalada de privilegios

Una vez dentro del sistema, reviso los permisos SUID y vemos que podemos ejecutar como cualquier usuario /usr/bin/base64, parece que el tipo que hizo esta máquina tiene un serio problema con el base64 jajajajjaj...

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FEpOtxTX070uarUU21TYz%2Fimage.png?alt=media&#x26;token=a818a805-163e-44f7-8ab1-736e287457f3" alt=""><figcaption></figcaption></figure>

En fin, nos vamos a GTFOBins y vemos que podemos leer archivos, así que vamos a intentar listar la id\_rsa de root:

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FF6thDEu2N0wLYGGrZsRv%2Fimage.png?alt=media&#x26;token=9c7ad4ad-00db-4076-8729-30a98906ca7f" alt=""><figcaption></figcaption></figure>

Iniciamos sesión con la id\_rsa obtenida y somos root!

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FhCXf7fhDZcLUDzCjuMsh%2Fimage.png?alt=media&#x26;token=f4c2a06c-4975-490d-a6b6-f2d5c8f4e460" alt=""><figcaption></figcaption></figure>

## Conclusión

Esta máquina ha sido más tipo puzle que una situación realista, pero ha sido divertida y hemos refrescado conceptos como de bash.
