
Cockpit CMS 2.7.0 está afectado por la vulnerabilidad File Upload - XSS, que permite a los atacantes cargar un archivo PDF con un XSS oculto que, cuando se ejecuta, lanzará la ventana emergente de XSS.
Descripción: Vulnerabilidad de subida de archivos en Cockpit CMS 2.7.0 que permite a un atacante local subir un archivo PDF con XSS oculto.
Vectores de ataque: AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:L
Esta es la versión del software.

Este es el contenido del XSS inyectado en el archivo PDF.

Al iniciar sesión en el panel, iremos a la sección «Assets.» del menú General y haremos clic en Upload Asset.

Subimos el archivo PDF inyectado:

En la siguiente evidencia podemos ver que se ha subido correctamente:

Para acceder al PDF inyectado, hacemos clic en el archivo como se muestra a continuación:

Y copiamos el enlace de la ruta del servidor y el ID del archivo donde está almacenado:

Accedemos a la URL copiada y aparece el pop-up de XSS

Lo primero es generar el PDF malicioso con XSS oculto.
Para ello, creamos un archivo .js con el código Javascript que queremos inyectar para el XSS en el archivo PDF.

Después creamos un archivo PDF vacío (pdf2go) e inyectamos el payload del archivo .js usando la herramienta JS2PDFInjector

Podemos analizar el contenido del PDF inyectado utilizando la herramienta Peepdf.

Hay un objeto con código JavaScript en object[3] y podemos comprobarlo usando la herramienta pdf-parser del kit Peepdf.

He renombrado el archivo para tenerlo más a mano.

Subimos el archivo en Assets:

Y cuando lo abrimos, tenemos el XSS del archivo PDF almacenado en el servidor.
