Módulo Captcha en el formulario de inicio de sesión: una pregunta de cálculo local para evitar los robots
Los formularios de inicio de sesión, de recuperación de contraseña y de registro de WordPress son objetivos preferidos de los bots. El módulo Captcha en el formulario de acceso WPMasterToolKit añade a estos tres formularios nativos una sencilla pregunta de suma («¿Cuánto es 3 + 2?»), generada y verificada en tu servidor, sin necesidad de servicios de terceros. El módulo es gratuito; el modo adaptativo está reservado a la versión Pro.

¿A qué plugin puede sustituir este módulo?
Sustituye a las extensiones de captcha matemático como CAPTCHA realmente sencillo o Captcha de matemáticas en la página de inicio de sesión de WordPress. No es equivalente a reCAPTCHA, hCaptcha ni Turnstile: no realiza análisis de comportamiento y solo protege los formularios nativos de WordPress (no los de WooCommerce ni los de los creadores de formularios). Añade una sencilla barrera que complementa, sin sustituirla, una limitación de los intentos de inicio de sesión como nuestro módulo «Limit Login Attempts».
Características principales
Tres formularios protegidos
- Formulario de inicio de sesión: el formulario de inicio de sesión (nombre de usuario y contraseña).
- Formulario de recuperación de contraseña: la solicitud por correo electrónico para restablecer la contraseña.
- Formulario de inscripción: el formulario de inscripción propio, si las inscripciones están abiertas en tu página web.
Cada formulario se activa por separado. El enlace «New question» ofrece otro cálculo, y el captcha también funciona sin JavaScript.
Dos modos de protección
- Requisitos imprescindibles: La pregunta aparece siempre en los formularios protegidos.
- Adaptive (Pro): La pregunta solo aparece cuando la actividad reciente parece sospechosa. Los visitantes legítimos inician sesión sin problemas, mientras que los intentos repetidos dan lugar a la pregunta.
Ajustes del modo adaptativo (Pro)
El modo adaptativo contabiliza los intentos fallidos y los envíos de formularios durante un breve periodo de tiempo, por separado para cada navegador y cada dirección IP. En cuanto se alcanza un umbral, la pregunta pasa a ser obligatoria durante un periodo de tiempo definido. Todos los umbrales son ajustables:
- Período de contabilización de actividades: Duración del periodo de recuento (5 minutos por defecto).
- Preguntas obligatorias para: tiempo durante el cual la pregunta sigue siendo obligatoria tras una actividad sospechosa (15 minutos por defecto).
- Intentos fallidos de inicio de sesión desde un navegador / desde una dirección IP: Número de intentos fallidos de conexión permitidos (3 por navegador y 5 por dirección IP, por defecto).
- Límites de solicitudes: Número de envíos del formulario de inicio de sesión (10), de solicitudes de restablecimiento de contraseña (3), de registros (3) y de solicitudes de código de doble autenticación (3).
- Tiempo de la prueba: Un formulario enviado demasiado rápido (menos de 1 500 ms por defecto) se considera sospechoso y activa la pregunta antes de lo previsto.

¿Cómo se utiliza este módulo?
- Activar Captcha en el formulario de acceso en WPMasterToolKit y, a continuación, abre WPMasterToolkit > Captcha en el formulario de inicio de sesión.
- Elige el modo «Always require» o, en la versión Pro, «Adaptive».
- Marca los formularios que quieras proteger.
- En el modo adaptativo, ajusta los periodos y los umbrales si es necesario y, a continuación, haz clic en «Guardar».
- Abre tu página de inicio de sesión en una ventana privada para comprobar cómo se muestra la pregunta.
Nuestras opciones técnicas
- 100 % local: No se realiza ninguna llamada a un servicio externo, por lo que no se transmiten datos de tus visitantes a terceros.
- Preguntas de uso único: Cada pregunta está vinculada al navegador mediante una cookie técnica, caduca al cabo de 10 minutos y solo se puede intentar una vez. Solo se almacena una huella (HMAC) en una tabla específica que el cron borra cada hora.
- Límites integrados contra el uso indebido: El número de consultas generadas, respuestas y errores está limitado por dirección IP durante 5 minutos. Los filtros
wpmastertoolkit_captcha_issue_limit,wpmastertoolkit_captcha_validate_limit,wpmastertoolkit_captcha_failure_limit,wpmastertoolkit_captcha_activity_limitywpmastertoolkit_captcha_cancel_limitpermiten ajustar esos límites máximos. - Mensajes de error genéricos, que nunca revelan si existe una cuenta.
- Accesibilidad: campo etiquetado, teclado numérico del móvil, mensajes anunciados por los lectores de pantalla.
- Compatible con los demás módulos de WPMasterToolKit: Una respuesta incorrecta al captcha no se cuenta como un intento fallido en «Limit Login Attempts»; la autenticación de dos factores (Pro) comprueba el captcha antes de enviar un código por correo electrónico, y el captcha funciona con «Move Login URL» y «Custom Login Design».
- Los accesos a través de la API no se ven afectados: Las contraseñas de las aplicaciones, XML-RPC y la API REST no pasan por los formularios protegidos.
Información útil
- Si utilizas un proxy inverso o una CDN, configura tu servidor para que transmita la dirección IP real de los visitantes; de lo contrario, todos compartirán la misma IP y, por lo tanto, las mismas limitaciones.
- Excluye la página de inicio de sesión y las solicitudes AJAX de tu caché de páginas.
- Mantén activa la limitación del número de intentos de inicio de sesión: el cálculo supone un obstáculo para los bots sencillos, pero no es una verificación infalible.
Conclusión
Captcha on login form protege los formularios nativos de WordPress sin depender de ningún servicio externo ni realizar un seguimiento de tus visitantes. El modo «Always require» está disponible de forma gratuita; el modo adaptativo de la versión Pro solo molesta a tus usuarios cuando es necesario.