El endpoint /wp-signup.php es un archivo oficial del núcleo de WordPress que funciona como la página de registro y creación de sitios en instalaciones Multisitio. Su función y nivel de riesgo dependen completamente del tipo de configuración de tu web.
¿Qué es wp-signup.php y para qué sirve?
- Función principal: En una red Multisitio, este archivo gestiona el proceso de registro de nuevos usuarios y la creación de nuevos sitios dentro de la red.
- Comportamiento en una instalación estándar (no Multisitio): Si intentas acceder a este archivo en una web que no es Multisitio, normalmente te redirigirá a la página de registro estándar de WordPress, que es
wp-login.php?action=register. - Cómo acceder: Es un archivo físico que se encuentra en la raíz de tu instalación de WordPress, junto con otros como
wp-login.php o wp-cron.php.
⚠️ ¿Cuáles son los riesgos de seguridad?
El riesgo principal es que se convierta en un punto de entrada para abusos, especialmente si tu Multisitio tiene las inscripciones abiertas al público.
Ataques de spam y creación masiva: Los bots pueden enviar miles de solicitudes a wp-signup.php para crear cuentas o sitios falsos de forma automatizada. Esto puede saturar tu base de datos, llenar tu red de contenido basura y consumir recursos del servidor. Este archivo ha sido identificado como uno de los más comúnmente infectados en campañas de malware que inyectan redireccionamientos maliciosos.
Enumeración de usuarios: Aunque menos común que en otros archivos, exponer un formulario de registro público siempre ofrece a los atacantes la posibilidad de comprobar qué nombres de usuario y correos electrónicos ya están registrados en tu sistema.
¿Cómo comprobar si está activo?
Accede a: https://tudominio.com/wp-signup.php
Los posibles comportamientos son:
- Página de registro (Multisite con registro habilitado).
- Mensaje indicando que el registro está deshabilitado.
- Redirección a otra página.
- Error 404 (si el administrador lo ha eliminado o bloqueado).
¿Cómo se protege o gestiona este archivo?
Si NO utilizas Multisitio o NO necesitas registro público:
Bloquea el acceso directamente desde el servidor. Es la medida más segura y efectiva, ya que evita que WordPress tenga que procesar siquiera la solicitud.
Para servidores Apache, puedes añadir esta regla en tu archivo .htaccess:
Para servidores Nginx, añade esta regla en tu archivo de configuración del sitio:
Si UTILIZAS Multisitio y necesitas que esté activo:
Refuerza la seguridad del formulario con medidas como:
Añadir un CAPTCHA (por ejemplo, Google reCAPTCHA) para diferenciar humanos de bots.
Instalar un plugin de seguridad o antispam que filtre las peticiones sospechosas
Configura las restricciones desde el panel de red (/wp-admin/network/settings.php). Puedes desactivar el registro de nuevos usuarios, restringir los dominios de correo electrónico permitidos, o prohibir la creación automática de sitios.
i necesitas una solución intermedia, puedes usar un plugin que requiera aprobación manual del administrador para cada nuevo registro.