Reto de navegador

Ver en Markdown

La página de prueba de trabajo que el borde enseña en lugar de bloquear cuando una regla reta; los navegadores reales la resuelven solos.

En esta página

Algunas reglas pueden retar una petición en lugar de bloquearla: las reglas de límite de peticiones con action: challenge y la política del control de rastreadores IA con la acción challenge.

Qué ve el visitante

Una navegación de navegador (un GET cuyo Accept incluye text/html) recibe una página intermedia breve:

  1. La página responde 503 con Cache-Control: no-store, así que nunca se guarda en caché ni se indexa.
  2. Un pequeño script, sin recursos externos, calcula una prueba de trabajo SHA-256 en el navegador (normalmente entre decenas y cientos de milisegundos).
  3. Envía el resultado a /__waf/verify. Si es válido, el borde pone la cookie __waf_pass (HttpOnly, Secure, SameSite=Lax) y la página se recarga.
  4. Mientras el pase sea válido, la misma regla deja pasar al visitante.

El pase lo firma el borde y va ligado a la red del visitante; cuando caduca, o desde otra red, puede tener que resolver el reto otra vez.

Peticiones que no son navegaciones

Los scripts, las llamadas a la API y los envíos de formularios no pueden ejecutar la página intermedia, así que no la reciben:

Origen del retoRespuesta a lo que no es navegación
Regla de límite de peticiones429 con Retry-After, exactamente como block.
Control de rastreadores IA403 con {"error":"verificacion de navegador requerida"}.

Rastreadores

Un User-Agent por sí solo no demuestra nada. Con el control de rastreadores IA activado y spoofed_challenge en enforce, solo los rastreadores verificados por rango de IP, DNS inverso o Web Bot Auth se saltan el reto. Consulta Verificación de bots.

Última actualización:

↑↓ para moverte↵ para abriresc para cerrar