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

# Extraviado

## Reconocimiento

Empezamos lanzando un **nmap** para enumerar los servicios expuestos en la máquina objetivo.

```bash
nmap -sV -p- 172.17.0.2
```

Se detectaron dos puertos abiertos:

* **22/tcp** → SSH (OpenSSH 9.6p1 Ubuntu)
* **80/tcp** → HTTP (Apache httpd 2.4.58)

![picture 1](/files/uhctOc388Timi0dgmnXm)

***

## Enumeración Web

Al acceder al puerto 80 encontramos la página por defecto de **Apache2 en Ubuntu**, sin contenido relevante aparente.

![picture 2](/files/mug2bd8a0vZnUtyuDeZZ)

Procedemos a lanzar **Gobuster** para enumerar directorios:

```bash
gobuster dir -u http://172.17.0.2:80 -w /usr/share/seclists/Discovery/Web-Content/DirBuster-2007-directory-list-2.3-medium.txt -x html,php,txt,py,sh,log
```

![picture 3](/files/PncJGvDrvAX8uOobNwZ4)

No se encontraron rutas interesantes. Pasamos a revisar el **código fuente** de la página.

![picture 4](/files/bC4cFl9TTEOz7OWE8D7I)

***

## Obtención de Credenciales Iniciales

Al final del código fuente encontramos dos cadenas codificadas en **Base64**.

```bash
echo "ZGFuaWVsYQ==" | base64 -d
# daniela

echo "Zm9jYXJvamE=" | base64 -d
# focaroja
```

![picture 5](/files/1xHxD9Hh52O5WGmVmRNp)

Tenemos posibles credenciales: `daniela:focaroja`.

***

## Acceso SSH como daniela

```bash
ssh daniela@172.17.0.2
```

Acceso exitoso. En el escritorio encontramos una nota:

```
Daniela no recuerdo donde guarde la password de root, si la encuentras me dices.
```

![picture 6](/files/mSkf615JaPmeziSNPWm1)

***

## Escalada a diego

Buscamos binarios SUID sin resultado útil. Revisamos los archivos de daniela con `ls -la` y encontramos un directorio oculto llamado **`.secreto`**.

![picture 8](/files/JWlGz41euObOsJyOGjWl)

```bash
cd .secreto
cat passdiego
# YmFsbGVuYW5lZ3Jh (aprox)
```

Decodificamos:

```bash
echo "YmFsbGVuYW5lZ3Jh" | base64 -d
# ballenanegra
```

![picture 9](/files/2RW3oytfNIk3jlp857rA)

Nos autenticamos como diego:

```bash
su diego
# Password: ballenanegra
```

***

## Exploración del directorio de diego

Dentro del home de diego encontramos un archivo `pass` que no contiene la contraseña real (es una pista falsa). Buscando en directorios ocultos encontramos `~/.passroot/.pass`:

![picture 10](/files/GuTz4INoPxUIYbkAEUow)

```bash
cat .pass
# YWNhdGFtcG9jb2VzdGE=

echo "YWNhdGFtcG9jb2VzdGE=" | base64 -d
# acatampocoesta
```

![picture 11](/files/K3L8q43zswBR7U0CauZo)

Como indica el nombre, tampoco es la contraseña correcta. Seguimos buscando.

***

## Encontrando la contraseña de root

En `~/.local/share/` encontramos un fichero con un **acertijo** cuyo contenido dice:

```
password de root

En un mundo de hielo, me muevo sin prisa,
con un pelaje que brilla, como la brisa.
No soy un rey, pero en cuentos soy fiel,
de un color inusual, como el cielo y el mar también.
Soy amigo de los ni~nos, en historias de ensue~no.
Quien soy, que en el frio encuentro mi due~no?
```

![picture 12](/files/19ZF26gsMY92UM9AEgGh)

El acertijo describe a un **oso polar azul**. Probamos la contraseña `osoazul`:

```bash
su root
# Password: osoazul
```

![picture 13](/files/YLRs7WdKwvQO6KbkubmB)

***

## Conclusión

| Usuario | Contraseña   | Método                       |
| ------- | ------------ | ---------------------------- |
| daniela | focaroja     | Base64 en código fuente HTML |
| diego   | ballenanegra | Base64 en `.secreto/`        |
| root    | osoazul      | Acertijo en `.local/share/`  |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://itskode.gitbook.io/pentesting/dockerlabs/facil/extraviado.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
