Korzen
Bot Protection

WordPress y WooCommerce

Bot Protection en WordPress sin código: el plugin carga el tag y pregunta antes de un inicio de sesión, un registro y un checkout de WooCommerce, en fail-open.

En WordPress no escribes código de servidor: el plugin Korzen Bot Protection hace el trabajo del tag y de la llamada. Carga el tag en tus páginas y en la página de inicio de sesión, y pregunta a Bot Protection antes de un inicio de sesión, de un registro (el de WordPress y el de WooCommerce) y de un checkout de WooCommerce, el clásico y el de bloques. Cuando Bot Protection va lento (más de 200 ms), está caído o responde algo inesperado, el visitante pasa. Necesita WordPress 6.5 y PHP 8.2 o posteriores.

Instalar

El plugin aún no está en el directorio de WordPress.org: escríbenos para pedir el zip. En WordPress, abre Plugins > Añadir nuevo plugin > Subir plugin, elige el zip y actívalo.

Ajustes

Abre Ajustes > Korzen Bot Protection y pega las dos claves de la página Set-up: la site key (YOUR_SITE_KEY), que lleva el tag, y una API key, que envía tu servidor. Una vez guardada, la API key no se vuelve a mostrar. Para dejarla fuera de la base de datos, defínela en wp-config.php y deja el campo vacío:

// wp-config.php, above "That's all, stop editing!"
define( 'KORZEN_API_KEY', 'your API key' );

Dos ajustes más:

  • Modo. Monitor pregunta y deja pasar a todos, sea cual sea la respuesta: empieza por ahí y sigue las decisiones en tu panel. Block aplica la action de la respuesta, que sigue siendo allow hasta que actives el block mode también en la página Set-up (consulta monitor mode y block mode).
  • IP del visitante. Detrás de un load balancer, un proxy o Cloudflare, todos los visitantes parecen venir de él. Elige la última entrada de X-Forwarded-For detrás de tu propio load balancer o proxy, o CF-Connecting-IP cuando tu servidor recibe tráfico solo de Cloudflare; si no, deja la conexión.

Qué protege

  • Inicio de sesión: la página de inicio de sesión y el acceso de Mi cuenta de WooCommerce. Se pregunta a Bot Protection después de que WordPress compruebe la contraseña, correcta o no, así que un rechazo no le dice nada a un bot sobre la contraseña. Los inicios de sesión de apps, por XML-RPC y la REST API, no se preguntan: allí no corrió ningún tag.
  • Registro: la página de registro de WordPress y el registro de Mi cuenta de WooCommerce.
  • Checkout: el checkout clásico de WooCommerce y su checkout de bloques.

Cada uno aparece en tu panel como /login, /signup o /checkout, sean cuales sean las direcciones de tu sitio.

Qué ve el visitante

En block mode, un visitante que Bot Protection bloquea recibe el error habitual del formulario, que dice que la solicitud no se pudo completar, sin decir por qué. Un visitante del que duda (challenge) recibe un enlace a la página de desafío, una comprobación breve que lo devuelve al mismo formulario; lo envía de nuevo y sigue.

Qué envía y qué guarda

Antes de cada acción protegida, tu servidor envía a Bot Protection la IP del visitante, el User-Agent, los headers que enumera la llamada, el token _kz del tag, el método y el nombre de la acción: nunca la contraseña, el email ni el pedido. El plugin guarda solo sus ajustes, en una opción de WordPress, y borrar el plugin los elimina.