# Server Side XSS (Dynamic PDF)
{{#include ../../banners/hacktricks-training.md}}
## Server Side XSS (Dynamic PDF)
Si una página web está creando un PDF utilizando entrada controlada por el usuario, puedes intentar **engañar al bot** que está creando el PDF para que **ejecute código JS arbitrario**.\
Así que, si el **bot creador de PDF encuentra** algún tipo de **etiquetas HTML**, va a **interpretarlas**, y puedes **abusar** de este comportamiento para causar un **XSS en el servidor**.
Por favor, ten en cuenta que las etiquetas `` no siempre funcionan, así que necesitarás un método diferente para ejecutar JS (por ejemplo, abusando de `
```
### SVG
Cualquiera de los payloads anteriores o siguientes puede ser utilizado dentro de este payload SVG. Se incluyen como ejemplos un iframe que accede al subdominio de Burpcollab y otro que accede al endpoint de metadatos.
```html
```
Puedes encontrar muchos **otros payloads SVG** en [**https://github.com/allanlw/svg-cheatsheet**](https://github.com/allanlw/svg-cheatsheet)
### Divulgación de rutas
```html
```
### Cargar un script externo
La mejor manera de explotar esta vulnerabilidad es abusar de la vulnerabilidad para hacer que el bot cargue un script que controlas localmente. Luego, podrás cambiar la carga útil localmente y hacer que el bot la cargue con el mismo código cada vez.
```html
')"/>
```
### Leer archivo local / SSRF
> [!WARNING]
> Cambia `file:///etc/passwd` por `http://169.254.169.254/latest/user-data` por ejemplo para **intentar acceder a una página web externa (SSRF)**.
>
> Si SSRF está permitido, pero **no puedes alcanzar** un dominio o IP interesante, [consulta esta página para posibles bypasses](../ssrf-server-side-request-forgery/url-format-bypass.md).
```html
```
```html
```
```html