> 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/muy-facil/hedgehog.md).

# HedgeHog

## Identificación

Para la identificación hacemos un escaneo `nmap`.

```bash
nmap -p- -sS -sV -sC --open --min-rate=5000 -n -Pn 172.17.0.2 -v
```

Con el comando `nmap` es el comando de escaneo de redes.\
El parámetro `-p-` indica que se escaneen todos los puertos disponibles.\
El parámetro `-sS` hace que sea un escaneo más sigiloso para no ser detectado.\
El parámetro `-sV` hace que se determine la versión del servicio de cada puerto.\
El parámetro `-sC` hace que nmap ejecute scripts para la recolección de información.\
El parámetro `--open` muestra todos los puertos que estén abiertos.\
El parámetro `--min-rate=5000` establece la tasa mínima de paquetes enviados por segundo, por lo que hace un escaneo más rápido.\
El parámetro `-n` indica que no realice la resolución de nombres DNS, sirve para acelerar el escaneo.\
El parámetro `-Pn` hace que no haga ping antes de escanear.

El resultado que me da es el siguiente:

```
PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 9.6p1 Ubuntu 3ubuntu13.5 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   256 34:0d:04:25:20:b6:e5:fc:c9:0d:cb:c9:6c:ef:bb:a0 (ECDSA)
|_  256 05:56:e3:50:e8:f4:35:96:fe:6b:94:c9:da:e9:47:1f (ED25519)
80/tcp open  http    Apache httpd 2.4.58 ((Ubuntu))
|_http-title: Site doesn't have a title (text/html).
| http-methods: 
|_  Supported Methods: POST OPTIONS HEAD GET
|_http-server-header: Apache/2.4.58 (Ubuntu)
MAC Address: 02:42:AC:11:00:02 (Unknown)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
```

Como podemos ver detecta el puerto **22** que se asemeja al puerto **ssh**, el puerto **80** que se asemeja el servicio de **httpd** de **Apache 2.4.58**.

## Entrando a la web

Al ver que hay un servicio **web** podemos entrar desde el navegador web.\
Al entrar nos encontramos con lo siguiente:

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

Por lo que podemos inducir que *tails* es un nombre de usuario por lo que podemos provar a hacer **fuerza bruta** al servicio **SSH** con el usuario **tails**.

## Fuerza bruta

Para hacer **fuerza bruta** podemos usar la herramienta de **hydra**.\
Ejecutamos el siguiente comando:

```bash
hydra -l tails -P rockyou.txt ssh://172.17.0.2 -t 15
```

Así con ese comando hacemos fuerza bruta con **el usuario tails**, con la **wordlist de rockyou.txt** al servicio **SSH** de la **IP** de la víctima usando **15 hilos**.

Al ver que tarda demasiado **invertiremos** la **wordlist** con el siguiente comando:

```bash
tac rockyou.txt > rockyou-invertido.txt
cat rockyou-invertido.txt | sed 's/ //g' > rockyou
```

Y ya ejecutamos de nuevo el comando pero con la nueva lista de contraseñas.

Y así realizamos de nuevo el ataque de fuerza bruta con el **wordlist invertido**.

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

Como descubrimos la contraseña del usuario **tails** es `3117548331`.

## Escalando privilegios

Podemos acceder al usuario **tails** por **ssh**:

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

Al ejecutar el comando `sudo -l` podemos ver que el usuario tails puede ejecutar cualquier comando como el usuario **sonic**.

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

Entonces ahí podemos ejecutar una **bash** con el usuario **sonic** con el comando `sudo -u sonic /bin/bash` .

Y así podemos hacer lo mismo con el usuario **sonic**, podemos comprovar los permisos sudo que tiene con `sudo -l` y así vemos que tenemos todos los permisos en el usuario **sonic** por lo que ponemos **sudo su** y ya somos **root**.

<figure><img src="/files/ofAMcD4AXixxiytyRERx" alt=""><figcaption><p>Máquina completada.</p></figcaption></figure>

## Final

En esta máquina hemos practicado la **fuerza bruta** e **invertir la lista de contraseñas**.
