Te cuento algo que no me gusta nada tener que repetir: otra vez un plugin de formularios en el punto de mira. En los últimos días se ha hablado mucho de un fallo crítico en el complemento de Ninja Forms para subir archivos. La historia, resumida: si tienes activa esa extensión y no la has actualizado, estás en la lista de sitios que un atacante puede intentar tumbar sin siquiera iniciar sesión.
La vulnerabilidad está catalogada como CVE-2026-0740. Según lo que recogen medios como BleepingComputer, permite a un atacante no autenticado subir archivos arbitrarios y, en el peor de los casos, acabar ejecutando código en el servidor. Wordfence ha publicado que bloqueó más de 3.600 intentos de explotación en 24 horas. No son números para alarmarse sin más, pero sí para dejar de posponer el mantenimiento.
Qué está pasando exactamente
El problema afecta al add-on Ninja Forms File Upload (la parte que permite adjuntar ficheros en los formularios). Las versiones vulnerables van hasta la 3.3.26. La gracia del fallo, desde el punto de vista del atacante, es que parece haber poca validación sobre el tipo de archivo y el nombre de destino: en la práctica eso abre la puerta a subir un PHP donde no toca o a jugar con rutas para colocar el archivo en un sitio ejecutable.
Yo lo veo así: no es que WordPress “sea inseguro” de fábrica; es que el ecosistema de plugins es enorme y cada extensión añade superficie de ataque. Un formulario con subida de archivos es cómodo para el usuario final, pero es de los puntos donde más se equivocan los desarrolladores si no cierran bien la validación en el servidor.
Qué deberías hacer hoy (sin dramatismos pero sin pereza)
- Actualiza el complemento a la última versión disponible. Las fuentes técnicas indican que el parche completo llegó en la 3.3.27 (publicada el 19 de marzo de 2026). Si estás por debajo, no es negociable.
- Revisa si realmente necesitas la subida de archivos en formularios públicos. A veces se activa “porque mola” y luego nadie lo usa. Menos código activo, menos riesgo.
- Mira los registros de tu hosting o de un plugin de seguridad: picos de peticiones raras a rutas de
wp-contento intentos POST repetidos a URLs de formularios pueden ser la pista de que alguien ya te ha estado probando. - Copia de seguridad reciente antes de actualizar en producción. Lo digo siempre y suena a mantra, pero en un WordPress con varios plugins es la red que te evita el susto si algo rompe la compatibilidad.
Una reflexión de alguien que monta webs para terceros
En proyectos de cliente el formulario con adjunto es el típico requisito que sale en el briefing. Yo suelo plantear alternativas: enlace a Drive, campo de texto largo, o subida solo para usuarios registrados. No por capricho sino porque cada upload anónimo es un vector. Cuando no hay más remedio, al menos quiero ver el plugin actualizado y un hosting que no ejecute PHP en carpetas de subida si se puede evitar.
También es justo decir que los fabricantes de plugins a veces tardan en parchear y los medios tardan en traducir el tecnicismo a acción. Por eso me gusta ir a la fuente: CVE, avisos del proveedor y análisis de empresas de seguridad. Ahí es donde se separa el titular del plan concreto.
Fuentes
- BleepingComputer: Hackers exploit critical flaw in Ninja Forms WordPress plugin
- WP News Desk: 50,000 WordPress Sites affected (Ninja Forms File Upload)
Si mañana tu cliente te pide un formulario con adjuntos obligatorio para usuarios anónimos, que condiciones pondrías en el hosting y en el plugin antes de decir que sí? Si la respuesta es «ninguna», quizá tengas que replantear el alcance.
