XSS
XSS almacenado en el campo de servidores de nombres de los ajustes de cuenta de un servicio de Tucows
El campo de nameservers de los ajustes de cuenta guardaba HTML sin validar si se modificaba la petición PUT, y el código se ejecutaba al recargar la página. Solo afecta a la propia cuenta (self-XSS), por lo que la severidad es baja.
3 min
Rails ActionText: una etiqueta <action-text-markdown> esquiva la validación de esquemas URI en to_markdown
En ActionText, un texto enriquecido con una etiqueta <action-text-markdown> escrita por el usuario salía tal cual en la exportación a Markdown, lo que permitía colar enlaces javascript: o data: que la validación de URI debía bloquear.
3 min
XSS almacenado sin autenticación en la API de contacto de Essity (Umbraco) con salto de reCAPTCHA
La API pública de contacto de Essity aceptaba tickets sin autenticar con HTML y JavaScript en más de 12 campos, saltándose reCAPTCHA, CSRF y límite de peticiones. El código se ejecutaba en la sesión del operador del back-office de Umbraco.
4 min
WordPress: XSS almacenado de Autor a Administrador mediante el nombre de fichero de una miniatura en wp-admin
El endpoint REST finalize guardaba sin sanear el nombre de fichero de los tamaños de imagen, y get_media_item() lo pintaba sin escapar en wp-admin: un Autor podía ejecutar JavaScript en la sesión de un administrador.
7 min
Rails Action Text: el contenido de <code> y <pre> rompe su delimitador en to_markdown e inyecta Markdown arbitrario
En la rama main de Rails, un cuerpo de texto enriquecido con <code> o <pre> podía escapar de su delimitador en ActionText::Content#to_markdown y colar enlaces javascript: o HTML sin escapar en el Markdown generado.
5 min
Dos formas de colar XSS en los comentarios de GitLab saltándose el saneamiento
Encadenando un fallo en el servidor (data-sourcepos) y otro en el cliente (el elemento gl-emoji) se conseguía ejecutar JavaScript a cualquiera que abriera un comentario.
2 min