Vulnerabilidad crítica en WPvivid Backup & Migration (CVE-2026-1357)

Published:

Una falla crítica en el plugin WPvivid Backup & Migration para WordPress permite a un atacante no autenticado subir archivos arbitrarios y ejecutar código en el servidor, lo que puede derivar en la toma total del sitio (full site takeover).


Resumen técnico

Campo

Detalle

Vulnerabilidad

Subida arbitraria de archivos sin autenticación → RCE

CVE / CVSS

CVE-2026-1357 / 9.8 (Crítica)

Versiones afectadas

≤ 0.9.123

Versión corregida

0.9.124

Condición de explotación

Función “Receive backup from another site” habilitada con clave activa (expira máx. 24h)

Superficie de ataque

Endpoint asociado a wpvivid_action=send_to_site

Causa raíz

Manejo incorrecto de errores en RSA + path traversal por nombres no sanitizados


Detalle técnico de la explotación

La vulnerabilidad combina dos problemas:

1️⃣ Error criptográfico (RSA + AES/Rijndael)

Cuando falla la desencriptación RSA durante el procesamiento del mensaje, el código no detiene la ejecución.

En su lugar, continúa utilizando un valor false como clave, que en la práctica se convierte en una clave predecible compuesta por bytes nulos en la rutina AES/Rijndael.

Esto permite que un atacante:

  • Construya datos cifrados que el servidor aceptará.

  • Evite validaciones criptográficas reales.

  • Controle el contenido del archivo subido.


2️⃣ Manejo inseguro de rutas de archivo

El plugin aceptaba nombres de archivo provenientes del payload desencriptado sin sanitización adecuada.

Esto habilita:

  • Directory traversal

  • Escritura fuera del directorio previsto de backups

  • Colocación de archivos .php en ubicaciones accesibles vía web

Resultado: ejecución remota de código (RCE).


Condición clave para el riesgo

La explotación solo es viable si:

  • Está habilitada la función “Receive a backup from another site”

  • Se ha generado una clave activa

  • La clave aún no expiró (máximo 24 horas)

Aunque la función está deshabilitada por defecto, cualquier sitio que la haya activado temporalmente queda expuesto durante la ventana de validez.


Corrección aplicada en 0.9.124

La versión 0.9.124 implementa:

  • Detención inmediata del procesamiento si la clave desencriptada es false o vacía.

  • Restricción estricta de extensiones permitidas (zip, gz, tar, sql).

  • Mejoras en validación de rutas y nombres de archivo.


Recomendaciones para administradores

Si administras WordPress (especialmente en entornos productivos o multisitio):

  1. Actualizar inmediatamente a 0.9.124 o superior.

  2. Deshabilitar la función de recepción de backups si no es necesaria.

  3. Rotar cualquier clave generada previamente.

  4. Revisar el webroot y uploads en busca de:

    • Archivos .php inesperados

    • Fechas de modificación coincidentes con ventanas donde la clave estuvo activa

  5. Revisar logs de acceso buscando requests con:

wpvivid_action=send_to_site
  1. Considerar WAF con reglas específicas para bloquear uploads sospechosos.


Impacto potencial

Dado el vector:

  • No requiere autenticación.

  • Permite ejecución remota.

  • Puede derivar en instalación de webshells.

El impacto típico incluye:

  • Compromiso total del sitio.

  • Inyección de malware.

  • Redirecciones SEO maliciosas.

  • Robo de credenciales.

  • Movimiento lateral en servidores compartidos.

- Advertisement -
Jorge
Jorgehttps://nksistemas.com
Soy Jorge, Sr Sysadmin Linux/DevOps/SRE y creador de NKSistemas.com Trabajo con plataformas: Linux, Windows, AWS, GCP, VMware, Helm, kubernetes, Docker, etc.

Related articles