Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en plugin Injection Guard para WordPress (CVE-2026-3368)

Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-79 Neutralización incorrecta de la entrada durante la generación de la página web (Cross-site Scripting)
Fecha de publicación:
21/03/2026
Última modificación:
22/04/2026

Descripción

El plugin Injection Guard para WordPress es vulnerable a cross-site scripting almacenado a través de nombres de parámetros de consulta maliciosos en todas las versiones hasta la 1.2.9 inclusive. Esto se debe a una sanitización de entrada insuficiente en la función `sanitize_ig_data()` que solo sanitiza los valores de los arrays pero no las claves de los arrays, combinado con una falta de escape de salida en la plantilla `ig_settings.php` donde las claves de los parámetros almacenados se imprimen directamente en HTML. Cuando se realiza una solicitud al sitio, el plugin captura la cadena de consulta a través de `$_SERVER['QUERY_STRING']`, aplica `esc_url_raw()` (que preserva caracteres especiales codificados en URL como %22, %3E, %3C), luego lo pasa a `parse_str()` que decodifica la cadena de URL, lo que resulta en HTML/JavaScript decodificado en las claves de los arrays. Estas claves se almacenan a través de `update_option('ig_requests_log')` y luego se renderizan sin `esc_html()` o `esc_attr()` en la página de registro del administrador. Esto hace posible que atacantes no autenticados inyecten scripts web arbitrarios en la página de registro del administrador que se ejecutan cada vez que un administrador ve la interfaz de registro de Injection Guard.

Referencias a soluciones, herramientas e información