Alerta: Vulnerabilidad crítica en Ninja Forms
Hay una vulnerabilidad crítica activa en el plugin Ninja Forms – File Upload para WordPress: el CVE-2026-0740 permite subir archivos PHP arbitrarios sin autenticación, logrando ejecución remota de código. Wordfence bloqueó más de 3.600 intentos de explotación en las primeras 24 horas. La solución es actualizar a la versión 3.3.27 cuanto antes.
En 30 segundos
- El CVE-2026-0740 afecta al plugin Ninja Forms – File Upload, con CVSS 9.8 (crítico máximo).
- Permite subir webshells PHP sin estar logueado, con ejecución remota de código.
- Wordfence detectó ataques activos: más de 3.600 intentos bloqueados en un día.
- Versiones vulnerables: 3.3.26 y anteriores. Solución: actualizar a 3.3.27 (lanzada el 19 de marzo de 2026).
- Si no usás la funcionalidad de carga de archivos, desactivá el plugin de extensión temporalmente.
Wordfence es un plugin de seguridad para WordPress desarrollado por Wordfence Inc. que proporciona protección contra malware, firewall de aplicación web, análisis de vulnerabilidades y monitoreo de seguridad.
Qué es CVE-2026-0740: la vulnerabilidad crítica de Ninja Forms
CVE-2026-0740 es una vulnerabilidad de subida arbitraria de archivos sin autenticación en el plugin Ninja Forms – File Upload para WordPress, que afecta a aproximadamente 50.000 sitios con instalaciones activas. La falla permite que cualquier visitante —sin cuenta, sin privilegios, sin nada— suba un archivo PHP directamente al servidor y lo ejecute de forma remota.
No es un “bug teórico”. Según el reporte de Wordfence, hay explotación activa en curso desde antes de que se publicara el aviso. Para cuando lo estás leyendo, ya hay scripts automatizados buscando sitios vulnerables.
Por qué el CVSS 9.8 no es exagerado
Un CVSS de 9.8 sobre 10 significa: vector de red, sin autenticación requerida, sin interacción del usuario, impacto total en confidencialidad, integridad y disponibilidad. Es la combinación más peligrosa posible.
¿Y qué pasó cuando salió el aviso público? Exacto: los ataques se multiplicaron. Wordfence registró más de 3.600 intentos de explotación bloqueados en las primeras 24 horas post-divulgación. Eso no es actividad de investigadores de seguridad probando cosas, eso es automatización corriendo contra listas de sitios WordPress.
El impacto potencial si el exploit tiene éxito:
- Robo de bases de datos, credenciales y datos de usuarios
- Defacement del sitio (reemplazo de contenido por páginas de propaganda)
- Incorporación del servidor a botnets para ataques DDoS
- Instalación de backdoors que persisten incluso después de actualizar el plugin
Cómo funciona técnicamente el exploit
La función vulnerable es NF_FU_AJAX_Controllers_Uploads::handle_upload. Según el análisis de CyCognito, el problema está en la validación de extensiones de archivo: se puede hacer bypass mediante técnicas de path traversal o aprovechando que la lógica de validación revisa la extensión de forma inconsistente.
El flujo es así: llegás al formulario de carga, mandás un archivo con nombre tipo webshell.php.jpg o con headers manipulados, el servidor acepta el archivo porque la validación falla, el archivo queda alojado en /wp-content/uploads/ o un subdirectorio accesible desde la web, y desde ahí podés hacer una petición GET a ese archivo PHP y ejecutar código arbitrario en el servidor (RCE).
No requiere JavaScript, no requiere una sesión activa, no requiere conocer ningún token ni nonce. Es una petición POST directa a admin-ajax.php con el payload correcto.
Qué versiones están afectadas y el timeline del parche
| Versión | Estado | Recomendación |
|---|---|---|
| 3.3.24 y anteriores | Vulnerable (explotable) | Actualizar de inmediato |
| 3.3.25 | Parche parcial (insuficiente) | Actualizar de inmediato |
| 3.3.26 | Vulnerable (bypass confirmado) | Actualizar de inmediato |
| 3.3.27 | Parcheada completamente | Versión a instalar |

El parche completo llegó el 19 de marzo de 2026. Hay un detalle importante acá: la versión 3.3.25 intentó corregir el problema pero el fix fue incompleto, y los investigadores encontraron que la validación aún se podía bypassear. La 3.3.27 es la que cierra el vector definitivamente. Para más detalles técnicos, mirá alternativas de protección para WordPress.
Cómo saber si tu sitio está afectado
Ojo acá: la falla está en la extensión del plugin Ninja Forms, no en el plugin base. Ninja Forms – File Upload es un addon separado. Podés tener Ninja Forms instalado y no tener el File Upload activado, en cuyo caso no sos vulnerable.
Para verificar:
- Entrá a WordPress Dashboard → Plugins → Plugins instalados
- Buscá “Ninja Forms – File Upload” (no solo “Ninja Forms”)
- Si aparece, fijate la versión en la columna de detalles
- Versión 3.3.26 o menor: vulnerable. Actualizá ahora.
Si no aparece ese plugin específico, no tenés el componente vulnerable instalado. El plugin base de Ninja Forms no está afectado por este CVE.
Pasos para actualizar a la versión 3.3.27 de forma segura
La actualización es el paso crítico. Hacela así para no romper nada:
- Paso 1: Hacé un backup completo del sitio antes de cualquier cambio (base de datos + archivos).
- Paso 2: Desactivá temporalmente el plugin Ninja Forms – File Upload desde el panel de plugins.
- Paso 3: Con el plugin desactivado, actualizalo desde Dashboard → Actualizaciones, o subiendo manualmente la versión 3.3.27 vía FTP/SFTP.
- Paso 4: Reactivá el plugin.
- Paso 5: Verificá que la versión instalada muestra 3.3.27.
Si la funcionalidad de carga de archivos no es crítica para tu operación actual, considerá dejarlo desactivado hasta que puedas hacer una revisión completa del sitio. Un formulario sin carga de archivos sigue siendo funcional para el 90% de los casos de uso.
Indicios de compromiso: cómo detectar si ya te explotaron
Si tu sitio estuvo corriendo una versión vulnerable en las últimas semanas, actualizar no alcanza. Necesitás revisar si ya entraron.
Ponele que actualizás el plugin hoy pero hace tres semanas un atacante ya subió un webshell. El archivo sigue ahí. El parche no lo borra. El atacante todavía tiene acceso.
- Revisá
/wp-content/uploads/buscando archivos.phpo.php.jpgcon fechas de modificación recientes que no deberían estar ahí. - Buscá usuarios administradores nuevos que no reconocés en Dashboard → Usuarios.
- Revisá los logs del servidor (access.log) buscando peticiones POST a
admin-ajax.phpcon action relacionada a file upload desde IPs desconocidas, especialmente sin parámetro de usuario autenticado. - Verificá si hay tareas cron de WordPress (wp-cron) que no configuraste vos.
- Usá un plugin de integridad de archivos como Wordfence o iThemes Security para detectar archivos modificados o agregados recientemente.
INCIBE-CERT publicó un aviso técnico con indicadores adicionales de compromiso para equipos de seguridad que quieran hacer una revisión más profunda.
Medidas adicionales después de actualizar
Actualizar el plugin es el primer paso, no el último. Si tenés un sitio con tráfico real o maneja datos de clientes, estas acciones son necesarias:
- Cambiá las contraseñas de FTP/SFTP y credenciales de base de datos.
- Revisá los permisos de la carpeta
wp-content/uploads/: debería tener permisos 755 para directorios y 644 para archivos, sin ejecución de PHP. - Si tu hosting lo permite (como en la mayoría de los planes de donweb.com), podés agregar una regla en
.htaccessdentro de/uploads/que bloquee la ejecución de PHP aunque exista un archivo malicioso. - Activá un WAF: Wordfence tiene reglas específicas para este CVE, y Cloudflare también publicó reglas para su WAF.
- Configurá monitoreo continuo de integridad de archivos.
La regla en .htaccess para bloquear PHP en uploads es simple y muy efectiva como capa adicional (no como sustituto del parche): Más contexto en cómo protege Wordfence tu sitio.
<Files *.php>
deny from all
</Files>
Qué está confirmado / Qué todavía no
| Aspecto | Estado | Fuente |
|---|---|---|
| Explotación activa en curso | Confirmado | Wordfence (3.600+ intentos bloqueados) |
| CVSS 9.8 sin autenticación | Confirmado | NVD / INCIBE-CERT |
| Versión 3.3.27 parchea completamente | Confirmado | Ninja Forms / Wordfence |
| Número exacto de sitios comprometidos | Sin confirmar | No hay datos públicos aún |
| Explotación masiva automatizada con botnet | Probable pero no confirmado | Inferencia del volumen de intentos |
Errores comunes que hay que evitar
Error 1: Confundir el plugin base con la extensión vulnerable. Ninja Forms (el plugin principal) no está afectado. La vulnerabilidad está en el addon “Ninja Forms – File Upload”. Mucha gente actualiza Ninja Forms base y cree que ya está. Verificá específicamente el addon.
Error 2: Creer que actualizar borra los archivos maliciosos previos. Si alguien ya explotó tu sitio antes de que actualizaras, el webshell sigue ahí. Actualizar el plugin cierra la puerta pero no limpia lo que ya entró. Necesitás revisar archivos manualmente o con herramientas de integridad.
Error 3: Considerar que la versión 3.3.25 ya estaba protegida. Según el análisis de TicWeb, el parche de 3.3.25 fue insuficiente y se podía bypassear. Si tenés esa versión, seguís vulnerable. La solución real es 3.3.27.
Si te interesa el tema, tenemos más detalles en @wordfence: Attackers Actively Exploiting Critical Vulnerabi.
Preguntas Frecuentes
¿Qué es la vulnerabilidad CVE-2026-0740 en Ninja Forms?
Es una falla de subida arbitraria de archivos sin autenticación en el plugin Ninja Forms – File Upload para WordPress. Tiene un CVSS de 9.8 (crítico) y permite que cualquier visitante suba un archivo PHP malicioso al servidor y lo ejecute remotamente. Afecta las versiones 3.3.26 y anteriores.
¿Cómo actualizar Ninja Forms a la versión 3.3.27?
Desde el Dashboard de WordPress, andá a Plugins → Actualizaciones y buscá “Ninja Forms – File Upload”. Hacé un backup antes. Si preferís hacerlo manualmente, bajá la versión 3.3.27 desde el repositorio del desarrollador y subila vía FTP/SFTP desactivando el plugin primero. Verificá que la versión cambió a 3.3.27 después de actualizar.
¿Afecta mi sitio WordPress si uso Ninja Forms pero no el addon File Upload?
No. El plugin base de Ninja Forms no tiene esta vulnerabilidad. CVE-2026-0740 afecta específicamente al addon “Ninja Forms – File Upload”. Si no tenés esa extensión instalada y activa, tu sitio no es vulnerable a este CVE en particular.
¿Cuál es el riesgo real de esta vulnerabilidad?
Alto. Con explotación exitosa, un atacante logra ejecución remota de código en el servidor: puede leer y modificar cualquier archivo del sitio, robar la base de datos, crear usuarios administradores, instalar backdoors y usar el servidor para atacar terceros. Wordfence registró más de 3.600 intentos de explotación en las primeras 24 horas de divulgación pública.
¿Se puede haber comprometido mi sitio por CVE-2026-0740 aunque ahora lo actualice?
Sí. Si tu sitio corrió una versión vulnerable (3.3.26 o anterior) en las últimas semanas, un atacante pudo haber subido un webshell antes de que actualizaras. Actualizar el plugin cierra la vulnerabilidad pero no elimina archivos maliciosos ya instalados. Revisá /wp-content/uploads/ en busca de archivos PHP y hacé un análisis de integridad del sitio.
Conclusión
CVE-2026-0740 es de esas vulnerabilidades que no dan tiempo de evaluación: hay explotación activa, el vector es trivial (sin autenticación, HTTP básico) y el impacto es total. Si tenés el addon Ninja Forms – File Upload en cualquier versión menor a 3.3.27, actualizás ahora y después revisás si ya entraron. En ese orden.
Lo que cambia con este incidente es el recordatorio de que los addons de plugins populares son vectores de ataque igual de válidos que el plugin base. Ninja Forms tiene millones de instalaciones; su ecosistema de extensiones no siempre tiene el mismo nivel de auditoría de seguridad. Vale la pena revisar qué addons tenés activos en todos tus sitios y si los necesitás realmente.
Fuentes
- Wordfence – Attackers Actively Exploiting Critical Vulnerability in Ninja Forms File Upload Plugin
- CyCognito – Emerging Threat: CVE-2026-0740 Ninja Forms File Upload Unauthenticated RCE
- INCIBE-CERT – Subida arbitraria de archivos en plugin Ninja Forms de WordPress
- El Hacker – 50.000 sitios WordPress expuestos por vulnerabilidad grave en Ninja Forms
- TicWeb – CVE-2026-0740 en Ninja Forms: qué hacer si tu WordPress permite subir archivos






