Alerta de seguridad de Hong Kong Tema Houzez XSS (CVE20259163)

Cross Site Scripting (XSS) en el tema Houzez de WordPress






Unauthenticated Stored XSS in Houzez Theme (<= 4.1.6) via SVG Upload — What WordPress Owners Must Do Now


Nombre del plugin Houzez
Tipo de vulnerabilidad Scripting entre sitios (XSS)
Número CVE CVE-2025-9163
Urgencia Medio
Fecha de publicación de CVE 2025-11-30
URL de origen CVE-2025-9163

XSS almacenado no autenticado en el tema Houzez (≤ 4.1.6) a través de la carga de SVG — Lo que los propietarios de WordPress deben hacer ahora

Una vulnerabilidad recientemente divulgada que afecta al tema de WordPress Houzez (versiones hasta e incluyendo 4.1.6) permite a atacantes no autenticados cargar archivos SVG maliciosos que se almacenan y luego se renderizan, habilitando scripting entre sitios persistente (almacenado) (XSS). El problema ha sido asignado como CVE-2025-9163 y tiene una puntuación base CVSS de 7.1 (Media). Se lanzó una solución en Houzez 4.1.7, pero muchos sitios aún ejecutan versiones anteriores y siguen expuestos.

Este artículo explica, en términos técnicos claros y con pasos prácticos, cómo funciona la vulnerabilidad, los riesgos reales para su sitio y usuarios, y qué hacer de inmediato y a largo plazo. Si gestiona sitios de WordPress utilizando Houzez o cualquier sitio que acepte cargas de SVG de usuarios no confiables, lea y actúe con prontitud.

Resumen rápido (para propietarios de sitios con poco tiempo)

  • Vulnerabilidad: XSS almacenado no autenticado a través de la carga de archivos SVG en el tema Houzez ≤ 4.1.6
  • CVE: CVE-2025-9163
  • Severidad: Media (CVSS 7.1)
  • Impacto: XSS persistente — los atacantes pueden inyectar JavaScript que se ejecuta cada vez que se renderiza el SVG cargado. Los resultados potenciales incluyen secuestro de sesión, inyección de contenido, redirecciones y puertas traseras.
  • Solucionado en: Houzez 4.1.7 — actualice de inmediato si es posible.
  • Mitigaciones inmediatas si no puede actualizar de inmediato:
    • Desactive las cargas de SVG o restrinja las cargas a roles confiables y autenticados.
    • Haga cumplir la sanitización de SVG del lado del servidor o convierta las cargas de SVG en imágenes rasterizadas.
    • Despliegue reglas específicas en su WAF o servidor para bloquear cargas de SVG sospechosas y atributos de script en línea.
    • Endurezca la Política de Seguridad de Contenido y los encabezados relacionados para reducir el impacto.
    • Escanee las cargas y la base de datos en busca de archivos o cargas SVG sospechosas y elimínelas.

Cómo funciona la vulnerabilidad (explicación técnica)

SVG (Scalable Vector Graphics) is an XML-based image format that supports shapes, styles and script execution via embedded JavaScript. If an application accepts and stores SVG files and later outputs their content in a way the browser interprets as inline markup (for example, embedding SVG markup directly into pages or serving it with a content type that allows inline rendering), an attacker can include executable JavaScript inside the SVG. When another user or an administrator views the page, the script runs in the site’s origin context, causing a stored XSS condition.

En este problema específico:

  • El tema permitía la carga de archivos SVG sin una sanitización o validación adecuadas.
  • Uploaded SVGs could contain JavaScript, inline event attributes (onload, onclick, etc.) or