# TickTakRoot

### 🔍 **RECONOCIMIENTO**

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

```bash
ping -c 1 192.168.1.66
```

para verificar la conectividad de red.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FJSRF5pW3ordWKVBud4rj%2Fimagen.png?alt=media&#x26;token=780e38b6-aa2b-48ba-b160-b5acf4ab4dbc" alt=""><figcaption></figcaption></figure>

A continuación, se realiza el comando:

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

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

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FxJtf8OksIzxwvIN7bTyY%2Fimagen.png?alt=media&#x26;token=64aaec06-c22d-42ea-886b-030c5e41bc27" alt=""><figcaption></figcaption></figure>

Como podemos observar durante el escaneo que el **puerto 21** perteneciente al **servicio FTP**, el **puerto 22** perteneciente al **servicio SSH** y el **puerto 80** perteneciente al **servicio HTTP** están abiertos por lo que a continuación se indagará más.

### 🔎 **EXPLORACIÓN**

Se utiliza el comando:

```bash
sudo nmap -sCV -p21,22,80 -v 192.168.1.66
```

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

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2Fnj9Hr2UlBdgLmbtuWlUT%2Fimagen.png?alt=media&#x26;token=d691fa26-19af-4d0d-946d-8780c86a1f92" 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 por defecto de **Apache**.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FCWq0KSw61AksajgkOOFT%2Fimagen.png?alt=media&#x26;token=448b53e5-38ee-48f8-8c58-7f3b53b4a289" alt=""><figcaption></figcaption></figure>

Entramos al servicio **FTP** de forma anónima por si encontramos algo relevante.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2F21kDkgr9C9oTXVKUYiQd%2Fimagen.png?alt=media&#x26;token=b106db2c-7232-4ab8-9cf1-2cb791fbd54c" alt=""><figcaption></figcaption></figure>

Listamos el contenido y el directorio **login** que dentro tiene un archivo de texto por lo que nos los descargamos a nuestra máquina local para ver el contenido.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2Fbgp5PQuK2sHtg3myu4mU%2Fimagen.png?alt=media&#x26;token=21eb797d-500e-421d-89f4-46861ff9f597" alt=""><figcaption></figcaption></figure>

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FI2UjeD6rZ54wvhnvFeFM%2Fimagen.png?alt=media&#x26;token=a1738e88-f86f-4156-808c-0ce9dc108813" alt=""><figcaption></figcaption></figure>

Se nos muestra un par de nombres que pueden ser posibles usuarios pero si nos damos cuenta cuando nos hemos conectado por **FTP** se nos muestra el nombre de **Robin** que será el usuario.&#x20;

### 🚀 **EXPLOTACIÓN**

Con la información obtenida anteriormente, realizamos el comando:

```bash
hydra -l robin -P /usr/share/wordlists/rockyou.txt ssh://192.168.1.66 -t 5
```

que utiliza la herramienta **Hydra** para realizar un ataque de fuerza bruta contra el servicio **SSH** de una máquina con la IP **192.168.1.66**.

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FiIGuKSTsflVJo4ORXQMT%2Fimagen.png?alt=media&#x26;token=043da44d-5bab-48e3-93bf-e99c51a26b8b" alt=""><figcaption></figcaption></figure>

Al realizar el ataque de fuerza bruta, hemos descubierto la contraseña de **robin**. Sabiendo esto, nos conectamos a través de **SSH** al usuario con el comando:

```bash
ssh robin@192.168.1.66
```

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FRmAcfhTxiBCwv1EygCow%2Fimagen.png?alt=media&#x26;token=fe126f2a-0a3b-4f6e-8439-89d0d726827b" 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="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FHPpGJJX3lkfCOr8nHBtp%2Fimagen.png?alt=media&#x26;token=62d28ce2-fd8b-49d4-b38a-4d5a1c9f34a8" alt=""><figcaption></figcaption></figure>

El comando `timeout` se utiliza para ejecutar un comando y finalizarlo si no se completa en un tiempo específico. Sin embargo, este comando puede ser vulnerable a ciertas técnicas de explotación que permiten escalar privilegios. Para más información sobre cómo explotar el comando `timeout` y ejemplos prácticos, puedes consultar la página de [GTFObins](https://gtfobins.github.io/gtfobins/timeout/).

```bash
/usr/bin/timeout_suid 7d /bin/sh -p
```

<figure><img src="https://469389308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbKXfRjFOYJgGlV1An6Cf%2Fuploads%2FTkInWd3WKZZPd2oRhbmr%2Fimagen.png?alt=media&#x26;token=88dc6868-df02-4e0f-89b0-5c5726e9e9d8" 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! 💻🔍🚀
