Alerta

Logo de WordPress

Alerta 2026-138 Explotación activa de falla crítica en WordPress Core durante la actualización

Producto(s) afectado(s): 

ProductoVersiones afectadas
WordPress 7.17.1.0 a 7.1.3
WordPress 7.07.0.0 a 7.0.7
WordPress 6.96.9.0 a 6.9.10
WordPress 6.86.8.0 a 6.8.11
WordPress 4.7 a 6.7Todas las versiones anteriores a la versión corregida de cada rama

WordPress 4.6 y anteriores no reciben corrección por estar fuera de soporte.

Descripción

Se ha publicado una vulnerabilidad en WordPress Core que permite a un atacante remoto sin autenticación ejecutar código PHP en el servidor durante una actualización del core. La vulnerabilidad ha sido etiquetada como CVE-2026-119977 (CVSSv3.1 8.1 – ALTO) y es del tipo condición de carrera entre la comprobación y el uso (TOCTOU, CWE-367). Por la explotación activa confirmada y la amplia base instalada, se clasifica con gravedad CRÍTICA.

Durante una actualización del core que usa el paquete completo, las versiones afectadas extraen los archivos nuevos en un directorio con nombre predecible dentro de wp-content/upgrade/, que el servidor web publica. Investigadores señalan que esa copia temporal incluye el instalador (wp-admin/setup-config.php), que arranca sin la configuración del sitio. Un atacante que gane la carrera contra la extracción puede ejecutar código PHP con los privilegios del proceso web.

Investigadores señalan que la explotación requiere que se realice una actualización del core con paquete completo, que haya acceso web y ejecución de PHP en wp-content/upgrade/, que la ruta temporal sea predecible o pueda descubrirse, y que el ataque se complete antes de que WordPress borre los archivos temporales. En laboratorio la ventana dura solo segundos, pero el sondeo automatizado repetido aumenta las probabilidades de éxito y la ventana se repite en cada actualización, incluidas las automáticas. El proveedor indicó que WordPress 7.1.4 y las versiones corregidas de las ramas anteriores, hasta la 4.7, solucionan el problema.

El proveedor califica la falla con severidad baja por lo estrecho de la ventana de explotación, mientras que el puntaje CVSS publicado es 8.1. Sin embargo, la vulnerabilidad fue incorporada el 03/11/2026 a catálogos de vulnerabilidades explotadas conocidas, y una agencia gubernamental de ciberseguridad europea emitió un aviso que la señala como explotada activamente. Las fuentes públicas reportan intentos masivos y sondeo automatizado desde el 28/10/2026, sin detalles públicos de compromisos exitosos. No se conoce una prueba de concepto pública ni asociación con campañas de ransomware.

Un firewall de aplicación implementado como plugin de WordPress no protege frente a esta vulnerabilidad, ya que la copia extraída carga WordPress desde sus propios archivos y los plugins del sitio no se ejecutan en esa petición.

Mitigación

Antes de actualizar, se recomienda:

  • Denegar el acceso web a wp-content/upgrade/ en el servidor web, WAF o CDN, y verificar que el directorio no sea listable. WordPress escribe en esa carpeta mediante el sistema de archivos y no por HTTP, por lo que el bloqueo no afecta las actualizaciones.
  • Ubicar la regla en la configuración del servidor o virtual host, o en el .htaccess de la raíz del sitio, nunca dentro de wp-content/upgrade/, ya que las versiones vulnerables borran el contenido de esa carpeta antes de cada extracción. Ajustar la ruta si WordPress está instalado en un subdirectorio.
  • No depender solo de un firewall de aplicación en PHP (plugin).
  • Comprobar que el bloqueo funciona: curl -s -o /dev/null -w '%{http_code}' https://sitio/wp-content/upgrade/ debe devolver 403.

Después de actualizar, revisar los sitios que hayan ejecutado alguna actualización del core sin parche desde el 28/10/2026, con los patrones de la sección de detección.

Detección

El proveedor y los investigadores no publicaron indicadores de red; la detección se basa en comportamiento. Se recomienda revisar los registros de acceso del servidor web, WAF o CDN, ya que los plugins de seguridad pueden no registrar estas peticiones. Patrones a buscar:

  • Peticiones HTTP a archivos PHP bajo /wp-content/upgrade/, en especial a rutas que terminan en wp-admin/setup-config.php o wp-admin/install.php, sobre todo con respuesta 200 y en horarios en que se ejecutó una actualización del core.
  • Sondeo repetido y de alta frecuencia a /wp-content/upgrade/ desde las mismas direcciones IP, con variaciones de nombres de carpeta o versión.
  • Archivos PHP en wp-content/upgrade/ distintos de index.php fuera de una actualización.
  • wp-config.php modificado sin cambios propios, o con DB_HOST, DB_NAME o DB_USER apuntando a una base de datos desconocida. En ese caso, el sitio debe tratarse como comprometido.
  • Cuentas de administrador desconocidas, plugins inesperados o archivos PHP que nadie colocó, incluido wp-content/uploads/.

Comandos de verificación (ajustar las rutas al entorno):

  • find wp-content/upgrade -type f -name '*.php' ! -path 'wp-content/upgrade/index.php' -ls
  • grep -E "/wp-content/upgrade/.*(setup-config|install)\.php" /var/log/nginx/access.log*
  • stat wp-config.php y revisión de los valores DB_HOST, DB_NAME y DB_USER.

Solución

La solución consiste en bloquear primero el acceso a wp-content/upgrade/ y luego actualizar a WordPress 7.1.4 o a la versión corregida de cada rama, que ya están disponibles y se distribuyen por actualización automática:

  • 7.1: 7.1.4, 7.0: 7.0.8, 6.9: 6.9.11, 6.8: 6.8.12, 6.7: 6.7.11, 6.6: 6.6.11, 6.5: 6.5.14, 6.4: 6.4.14, 6.3: 6.3.14, 6.2: 6.2.15, 6.1: 6.1.16, 6.0: 6.0.18, 5.9: 5.9.20.
  • 5.8: 5.8.19, 5.7: 5.7.21, 5.6: 5.6.23, 5.5: 5.5.24, 5.4: 5.4.25, 5.3: 5.3.27, 5.2: 5.2.30, 5.1: 5.1.28, 5.0: 5.0.31, 4.9: 4.9.35, 4.8: 4.8.34, 4.7: 4.7.39.

La actualización puede hacerse desde Escritorio > Actualizaciones > «Actualizar ahora» o con la descarga oficial. En los sitios con actualizaciones automáticas en segundo plano, el proceso comienza automáticamente e instala la versión corregida de su rama; aun así, se recomienda confirmar la versión instalada en cada sitio.

Los sitios en WordPress 4.6 o anteriores deben migrar a una rama con soporte.

Para info sobre cómo actualizar, visita el siguiente enlace:

https://wordpress.org/news/2026/10/wordpress-7-1-4/

Información adicional: