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

# Amor

## Identificación

Para empezar hay que hacer un escaneo `nmap` para ver los puertos que están abiertos:

```bash
sudo nmap -p- -sS -sCV -Pn --open --min-rate=5000 172.17.0.2 -v
```

Con el comando `nmap` es el comando de escaneo de redes.\
El parámetro `-sS` hace que sea un escaneo más sigiloso para no ser detectado.\
El parámetro `-sCV` hace que nmap ejecute scripts para la recolección de información y la versión del servicio.\
El parámetro `-Pn` hace que no compruebe que el host esté activo.\
El parámetro `-n` indica que no realice la resolución de nombres DNS.\
El parámetro `--open` muestra todos los puertos que estén abiertos.\
El parámetro `-v` para que muestre lo que va encontrando en tiempo real.

```
PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 9.6p1 Ubuntu 3ubuntu13 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   256 7e:72:b6:8b:5f:7c:23:64:dc:15:21:32:5f:ce:40:0a (ECDSA)
|_  256 05:8a:a7:27:0f:88:b9:70:84:ec:6d:33:dc:ce:09:6f (ED25519)
80/tcp open  http    Apache httpd 2.4.58 ((Ubuntu))
| http-methods: 
|_  Supported Methods: HEAD GET POST OPTIONS
|_http-server-header: Apache/2.4.58 (Ubuntu)
|_http-title: SecurSEC S.L
MAC Address: 02:42:AC:11:00:02 (Unknown)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
```

Como podemos observar encontramos dos puertos abiertos, el **22** que se asemeja el de **OpenSSH** de **Ubuntu 3ubuntu13** por lo que sabemos que detrás está corriendo **Ubuntu 24.04.2 (Noble Numbat)**.

También podemos encontrar que se encuentra el puerto **80** que se asemeja al servicio **http** de **Apache httpd 2.4.58** que tiene de título **SecurSEC S.L**.

### Sitio web

Accedemos al puerto **80** desde el navegador web para ver lo que hay.

<figure><img src="/files/6K6s0ZTMlXasI1HXy51k" alt=""><figcaption><p>Inicio de la web</p></figcaption></figure>

Y así viendo el codigo fuente de la página no encontramos nada, por lo que provamos a hacer foozing.

## Foozing de directorios

Para **descubrir directorios y archivos** vamos ha usar **gobuster**.\
Para ello ejecutamos el siguiente comando:

```bash
sudo gobuster dir -w $HOME/directory_list_lowercase_2.3_small.txt -u "http://172.17.0.2/" -x .php,.sh,.html,.txt,.py,.xml
```

Con ese comando escaneamos los directorios con la lista de directorios que la tengo en la carpeta del home a la url <http://172.17.0.2/> y escaneando también los archivos con extensión .php, .sh, .html, .txt, .txt, .py, .xml

<figure><img src="/files/7SKzUelNYNgQlP7n22Fq" alt=""><figcaption><p>Escaneo de directorios</p></figcaption></figure>

Entonces accedemos a inspeccionar el directorio de javascript:

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

Pero parece que no tenemos acceso, por lo que si probamos el index.html que es la página de inicio.

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

## Ataque de fuerza bruta

Como se puede ver intuimos que pueden existir dos usuarios: **Juan** y **Carlota** y arriba vemos que hay una contraseña debil, por lo que podemos intentar hacer un **ataque de fuerza bruta**.

<figure><img src="/files/rz7K8HjWEeyik6cQPAe0" alt=""><figcaption><p>Ataque hydra con contraseña encontrada</p></figcaption></figure>

Como se puede ver, en el usuario Juan no encontramos nada y en el usuario **carlota** si encontramos las **credenciales**.

## Acceso SSH

Al dar coin la contraseña accedemos a la máquina por **SSH**.

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

Al entrar podemos ver que hay una imagen que se encuntra dentro de unos subdirectorios.

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

### Revisar imagen

Para revisar la imagen, me la traigo a mi máquina host con el comando `python3 -m http.server`  y así se me abre un puerto que por defecto es el 8000 para poder acceder via http.

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

Entonces ya al tener la imagen en mi máquina host puedo usar el comando **exiftool** para ver si encuentro algo en los metadatos.

<figure><img src="/files/9epXmRI5YP8EoJXp0Oag" alt=""><figcaption><p>Metadatos de la imagen</p></figcaption></figure>

Pero como vemos no encontramos ningún metadato importante en la imagen.\
Y en la imagen en sí tampoco encontramos nada interesante<img src="/files/lfmTUipsJozSNLc271AX" alt="" data-size="original">

También podemos comprobar con el comando **setghide** si hay algún tipo de información oculta, y nos guarda un archivo **secret.txt**.

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

Y en el archivo **secret.txt** encontramos un texto en **base64** porque termina en un '='.

```
ZXNsYWNhc2FkZXBpbnlwb24=1
```

Y para pasarlo a un texto logible utilizamos el comando `base64 -d` :

<figure><img src="/files/2bP2x8G9uH3aJkOgOocB" alt=""><figcaption></figcaption></figure>

Encontramos el texto `eslacasadepinypon` por lo que intuimos que **es la casa de pinypon**.

## Usuario Oscar:

Al hacer un **ls ..** para ver los directorios que hay en la carpeta **home**.

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

Entonces ponemos el comando `su oscar` y ponemos lo que encontramos antes de `eslacasadepinypon` y así logramos tener cceso al usuario **oscar**.

<figure><img src="/files/6ErOjuX5556Lgwhlx7Ps" alt=""><figcaption></figcaption></figure>

Al estar dentro del usuario de **carlos** podemos ver alguna que otra cosa.

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

Al ejecutar el comando `sudo -l` podemos ver que el usuario **oscar** tiene permiso sin contraseña de **/usr/bin/ruby**.

Entonces así podemos ir a la web de [GTFOBins](https://gtfobins.github.io/).

Y ahí encontramos que podemos acceder a root por un comando:

<figure><img src="/files/6UHpurUt5Vdrhsaqh38h" alt=""><figcaption></figcaption></figure>

Y así ejecutando ese comando a través de la terminal podemos ser **root**.

<figure><img src="/files/tzH7m4OXYxkzKWHLdORy" alt=""><figcaption><p>Final</p></figcaption></figure>

## Aprendizaje

En esta maquina hemos practicado los **ataques de fuerza bruta** hacia algún usuario y a descubrir información y contenido oculto a través de una imagen.
