En pocas palabras: AMP for WP hasta la versión 1.1.17 tiene un XSS almacenado (CVE-2026-97019, CVSS 7.2) en el atributo de shortcode ‘headline-*’. Un usuario Suscriptor puede guardar un script malicioso en su campo biográfico, que se ejecuta sin interacción al visitar la página. Al 28 de octubre de 2026 no hay parche disponible.

Un atacante sin cuenta de administrador puede inyectar scripts persistentes en cualquier sitio WordPress con AMP for WP hasta la versión 1.1.17, aprovechando el atributo de shortcode ‘headline-*’. La CVE-2026-97019, publicada el 28 de octubre de 2026, tiene un CVSS de 7.2 y no requiere interacción del usuario para ejecutarse.

La vulnerabilidad AMP for WP es una falla de Cross-Site Scripting (XSS) almacenado identificada como CVE-2026-97019, clasificada CWE-79, que afecta al plugin AMP for WP – Accelerated Mobile Pages de WordPress en todas las versiones hasta 1.1.17. La explota un usuario con rol Suscriptor guardando un shortcode malicioso en su campo biográfico, y el script se ejecuta cada vez que alguien visita la página renderizada.

En 30 segundos

  • La CVE-2026-97019 afecta a AMP for WP hasta la versión 1.1.17 inclusive, con CVSS 7.2 (alto).
  • El ataque no requiere privilegios: un usuario Suscriptor puede explotarlo guardando un shortcode en su biografía.
  • Al 28 de octubre de 2026 no hay versión parcheada confirmada según OffSeq Radar.
  • No hay evidencia pública de explotación activa: no está en Metasploit, Exploit-DB ni CISA KEV.
  • El fallo está en loop.php y thirdparty-compatibility.php del plugin, por fallas de sanitización.

¿Cómo funciona el XSS almacenado en el plugin AMP for WP?

El ataque aprovecha un hueco entre dos capas de sanitización que nunca se cruzan. Un usuario con rol Suscriptor guarda un shortcode con el atributo ‘headline-*’ en su campo de biografía. WordPress core usa wp_filter_kses() para limpiar ese campo, pero esa función solo filtra etiquetas HTML, no sintaxis de shortcode. Ahí está el problema.

Los sanitizadores de contenido AMP corren antes de que do_shortcode() procese la descripción del archivo. El resultado: el markup generado nunca pasa por un post-sanitizado. ¿Y qué pasa cuando un administrador visita esa página? El script se ejecuta en su sesión sin que haga nada especial, sin clic, sin confirmación. Cubrimos ese tema en detalle en nuestra comparativa de soluciones para detectar vulnerabilidades en plugins.

Según el análisis técnico de Strix, el problema se concentra en archivos puntuales: loop.php línea 69 y thirdparty-compatibility.php líneas 1565 y 1594. No es un bug nuevo en el concepto (los XSS por shortcode no son una «innovación» precisamente), pero la combinación de orden de ejecución entre sanitizador AMP y shortcode es lo que lo hace explotable sin privilegios.

¿Qué versiones de AMP for WP están afectadas por la CVE-2026-97019?

vulnerabilidad amp for wp diagrama explicativo

Están afectadas todas las versiones del plugin AMP for WP – Accelerated Mobile Pages hasta la 1.1.17 inclusive, desarrollado por el vendor mohammed_kaludi. Si tenés instalada esa versión o una anterior, tu sitio es vulnerable.

Acá viene lo que complica las cosas: al 28 de octubre de 2026, OffSeq Radar marca el campo «Fixed in» como vacío, sin versión corregida confirmada. Eso significa que no hay un número de versión al que puedas actualizar para cerrar el agujero, al menos no todavía.

Tomalo con pinzas: que no haya parche hoy no quiere decir que no vaya a aparecer mañana. Vale la pena revisar el changeset del repositorio de WordPress.org cada pocos días si administrás sitios con este plugin activo.

¿Cuál es el impacto real de la vulnerabilidad AMP for WP (CVSS 7.2)?

El vector CVSS 3.1 completo es AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N, lo que traducido significa: se explota por red, con baja complejidad, sin privilegios ni interacción del usuario, y el alcance del daño cambia de componente (Scope: Changed). El impacto en confidencialidad e integridad es bajo, y nulo en disponibilidad. Para más detalles técnicos, mirá otra vulnerabilidad crítica que afectó a WordPress.

¿Qué significa esto en criollo? Que un atacante no necesita credenciales de admin ni que la víctima haga clic en nada. Solo necesita que alguien con permisos (idealmente un administrador) visite la página donde quedó guardado el shortcode malicioso. Ahí el script corre en el contexto de esa sesión, lo que puede derivar en robo de cookies de sesión o manipulación de datos visibles en esa página.

El «Low» en confidencialidad e integridad no significa inofensivo. Significa que el atacante no controla completamente qué se filtra o modifica, pero sí puede causar daño parcial, suficiente para secuestrar una sesión de administrador si el timing acompaña.

¿La vulnerabilidad AMP for WP ya está siendo explotada en sitios reales?

No hay evidencia pública de explotación activa al 28 de octubre de 2026. Según el seguimiento de OffSeq Radar, la CVE-2026-97019 está en estado «Disclosed» (publicada) pero no cumple ninguno de los otros criterios de riesgo: no es «Detectable» (no hay template público de Nuclei), no está «Weaponised» (sin módulo en Metasploit ni código en Exploit-DB), no figura en el catálogo CISA KEV como explotada, y los sensores honeypot de OffSeq Mirage no registraron tráfico de ataque asociado.

¿Significa esto que podés relajarte? No. La ausencia de evidencia no es evidencia de ausencia, y este es un caso textual de eso. Una CVE recién publicada, con baja complejidad de explotación y sin necesidad de privilegios, es exactamente el tipo de fallo que suele pasar de «sin exploits conocidos» a «explotado masivamente» en cuestión de semanas, apenas alguien escribe el primer proof-of-concept público. Ya lo cubrimos antes en la falla crítica que afecta a WordPress desde 2016.

¿Cómo protegés tu sitio si usás AMP for WP?

Mientras no haya parche oficial, la mitigación pasa por restringir lo que pueden hacer los usuarios de bajo privilegio en tu instalación. No es una solución definitiva, pero reduce la superficie de ataque.

  • Restringí el registro de usuarios Suscriptor si tu sitio no necesita que cualquiera se registre con ese rol, o monitoreá de cerca los campos biográficos que completan.
  • Deshabilitá o limitá el atributo de shortcode vulnerable (‘headline-*’) si tu tema o configuración lo permite sin romper funcionalidad crítica.
  • Evitá exponer páginas con contenido generado por usuarios que se rendericen a través de ese shortcode específico, al menos hasta que salga un parche.
  • Seguí los avisos del vendor mohammed_kaludi y el changelog del plugin en el repositorio de WordPress.org para detectar la versión corregida en cuanto aparezca.

Si administrás varios sitios WordPress con este plugin, una auditoría de seguridad puntual te va a decir rápido si tenés páginas expuestas con contenido de usuarios de bajo privilegio. Y si estás pensando en migrar de hosting o necesitás un entorno donde monitorear este tipo de exposición sea más simple, donweb.com tiene planes de hosting con herramientas de seguridad incluidas para WordPress.

Qué está confirmado y qué no sobre la CVE-2026-97019

Separemos lo que sabemos con certeza de lo que todavía es zona gris.

  • Confirmado: la CVE-2026-97019 existe, está publicada desde el 28 de octubre de 2026, afecta a AMP for WP hasta 1.1.17, y tiene CVSS 7.2 según el registro en NVD.
  • Confirmado: el mecanismo de explotación requiere un usuario con rol Suscriptor y aprovecha el orden de ejecución entre sanitizadores AMP y do_shortcode().
  • No confirmado: al 28 de octubre de 2026, no hay versión parcheada publicada.
  • No confirmado: no hay evidencia de explotación activa en sitios reales, aunque eso puede cambiar sin previo aviso.

Errores comunes al manejar esta vulnerabilidad

Acá van los tropiezos más típicos que veo cuando sale una CVE de este tipo.

  • Asumir que «sin privilegios requeridos» significa que es fácil de explotar desde afuera sin ninguna cuenta. En realidad el atacante necesita poder registrarse como Suscriptor, lo que en muchos sitios con registro abierto es trivial, pero en sitios con registro cerrado es un obstáculo real.
  • Desactivar AMP for WP por completo sin evaluar el impacto en SEO o tráfico móvil. Antes de sacar el plugin de producción, revisá si tenés alternativas de renderizado AMP o si podés simplemente restringir el shortcode problemático.
  • Esperar el parche sin aplicar ninguna mitigación intermedia. Si tu sitio permite registro público y usa AMP for WP, la mitigación de restringir el campo biográfico de Suscriptores no es opcional, es urgente.
  • Confundir «no hay evidencia de explotación» con «no es riesgo». Como vimos arriba, eso es un error de interpretación que puede salir caro en unas semanas.

Preguntas Frecuentes

¿Qué es la CVE-2026-97019?

Es una vulnerabilidad de Cross-Site Scripting (XSS) almacenado en el plugin AMP for WP para WordPress, publicada el 28 de octubre de 2026 con CVSS 7.2. Permite a un usuario con rol Suscriptor inyectar scripts persistentes a través del atributo de shortcode ‘headline-*’.

¿Mi sitio WordPress está afectado por la vulnerabilidad de AMP for WP?

Tu sitio está afectado si tenés instalado AMP for WP – Accelerated Mobile Pages en la versión 1.1.17 o anterior. Revisá la versión activa desde el panel de Plugins de tu WordPress para confirmarlo. Sobre eso hablamos en otros plugins populares con vulnerabilidades críticas.

¿Existe un parche para AMP for WP 1.1.17?

No, al 28 de octubre de 2026 no hay versión corregida confirmada según el registro de OffSeq Radar, que indica el campo «Fixed in» vacío. Conviene revisar periódicamente el repositorio oficial del plugin en WordPress.org por si publican una actualización. Mirá también las diferencias entre escaneo interno y externo de vulnerabilidades.

¿Cómo protejo mi WordPress de ataques XSS en plugins?

Restringí o monitoreá los campos donde usuarios de bajo privilegio puedan ingresar texto, como biografías, y limitá el uso de shortcodes vulnerables conocidos. Mantener los plugins actualizados y auditar regularmente la superficie de contenido generado por usuarios reduce el riesgo general. Más sobre esto en qué versión de Next.js realmente corrige las fallas.

¿Esta vulnerabilidad de AMP for WP ya está siendo explotada?

No hay evidencia pública de explotación activa hasta el momento: no figura en CISA KEV, no tiene módulo en Metasploit ni Exploit-DB, y los sensores de OffSeq Mirage no detectaron tráfico de ataque asociado. Eso no garantiza que vaya a seguir así en las próximas semanas.

Conclusión

La CVE-2026-97019 es un recordatorio de que los agujeros de seguridad más peligrosos no siempre requieren privilegios altos ni interacción compleja. Un Suscriptor con acceso a su propio campo de biografía alcanza para comprometer la sesión de un administrador, gracias a un desajuste en el orden de sanitización entre WordPress core y los filtros AMP.

Si administrás sitios con AMP for WP, la decisión concreta hoy es simple: restringí el registro público o auditá los campos biográficos de tus Suscriptores, y mantené un ojo en el changelog del plugin. No hay parche todavía, pero tampoco hay evidencia de explotación masiva, así que hay margen para actuar con cabeza en vez de con pánico.

Fuentes