Introducción
Los equipos de seguridad ya no pueden confiar en evaluaciones puntuales para distinguir entre humanos y bots. El 40% del tráfico web actual proviene de automatizaciones, y un subconjunto creciente corresponde a sesiones «híbridas» donde un usuario humano delega acciones a un agente (como un asistente de checkout). Cloudflare respondió a este desafío con un cambio de paradigma: en lugar de evaluar el riesgo en un momento dado, ahora analiza comportamientos continuos para construir una puntuación de confianza. Este enfoque no solo mejora la detección de bots sofisticados, sino que también reduce falsos positivos para tráfico legítimo.
Qué ocurrió
En abril de 2024, Cloudflare anunció Precursor, un sistema de detección lado cliente que analiza el comportamiento del usuario durante toda la sesión, no solo en un punto de control. a diferencia de los CAPTCHA o desafíos estáticos (basados en riesgo), Precursor evalúa señales de comportamiento (como movimientos del cursor, ritmo de clics) para construir confianza. Según datos de Cloudflare, en un período de 24 horas (mayo 2024), el sistema procesó 206 millones de evaluaciones en 73.438 zonas, revelando patrones antes solo sospechados.
Paralelamente, Cloudflare actualizó BotBase, su directorio de bots y agentes, con una taxonomía pragmática: un bot se considera «verificado» si (1) se identifica honestamente y (2) no abusa de la confianza concedida. BotBase ahora incluye tanto bots legítimos (como crawlers de buscadores) como actores maliciosos, permitiendo a los dueños de sitios tomar decisiones basadas en datos.
Impacto para DevOps / Infraestructura / Cloud / Seguridad
Para equipos de infraestructura, este cambio afecta dos áreas clave: protección de aplicaciones y experiencia de usuario. Con Precursor, los sistemas pueden detectar bots que evaden métodos tradicionales (como los que imitan headers de navegadores o resuelven CAPTCHA). Esto reduce el fraude en formulario (ej: relleno masivo de credenciales), scraping de datos y abusos de API, sin depender de listados estáticos de IPs o user agents.
En entornos cloud (como EKS), donde los pods pueden generar tráfico automatizado legítimo (ej: health checks, operadores de Kubernetes), la capacidad de distinguir entre automatización autorizada y maliciosa es crítica. BotBase permite whitelistear bots conocidos (como los de monitoreo de Prometheus o Operators de Red Hat), mientras Precursor bloquea imitaciones.
El modelo de Adaptive Intelligence (anunciado para pronto) lleva esto un paso más allá: el sistema de ML se actualiza automáticamente ante nuevos patrones de evasión, sin requerir deployments manuales. Esto es crucial en entornos dinámicos donde los atacantes adaptan sus técnicas en horas o minutos.
Detalles técnicos
Precursor: Detección continua de comportamientos
Precursor inyecta JavaScript desde el CDN de Cloudflare (sin requerir cambios en el código de la aplicación) y analiza señales en tiempo real:
- Movimientos del cursor: Humans muestran aceleración/deceleración natural y correcciones erráticas (ej: al apuntar a un botón). Bots suelen mover el cursor en líneas rectas a velocidad constante.
- Interacciones con la página: Patrones de clics, scroll y focus/blur.Por ejemplo, un bot que hace clic en un campo de formulario antes de que sea visible.
- Contexto de la sesión: Combina señales del cliente (behaviorales) con datos de la red (IP reputación, headers).
Precursor genera una puntuación de confianza que se actualiza continuamente. Si la puntuación cae (ej: por comportamiento sospechoso), el request puede ser desafiado o bloqueado, incluso si pasó checks iniciales.
BotBase: Taxonomía y verificación
BotBase clasifica los bots en:
- Verified: Declaran su identidad (via User-Agent o headers como CF-Bot-Type) y no abusan del acceso. Ejemplos:
– Crawlers de Googlebot (versiones específicas listadas en la documentación de Cloudflare)
– Herramientas de monitoreo como Datadog Synthetics.
- Unverified: No se identifican o tienen comportamiento abusivo. Incluye:
– Scrapers no declarados.
– Bots de fraude (ej: herramientas de credential stuffing como OpenBullet).
BotBase usa el header CF-Bot-Type para categorizar el tráfico en 10 tipos, incluyendo AISeo (bots de SEO generativo) y ButtonPusher (bots que interactúan con elementos de la UI).
Adaptive Intelligence: ML autoactualizable
El modelo de Bots ML tradicional se actualizaba en versiones discretas (ej: «Model v3»). Adaptive Intelligence reemplaza esto con un modelo que:
- Entrena continuamente sobre el tráfico global de Cloudflare.
- Ajusta automáticamente los umbrales de detección ante nuevos patrones (ej: un surge de bots que imitan comportamiento humano).
- No requiere action de los clientes para obtener las últimas detections.
Qué deberían hacer los administradores y equipos técnicos
1. Evaluar Precursor
- Habilitar la prueba: En el dashboard de Cloudflare, navegar a Security > Bots > Precursor y activar la evaluación en modo «Log» (sin bloquear tráfico). Analizar los logs para identificar falsos positivos/negativos.
- Probar el simulador: Usar Precursor Trace para ver cómo se evalúan sus propios movimientos de cursor. Esto ayuda a entender qué comportamientos pueden trigger detections.
2. Configurar BotBase
- Revisar tráfico de bots: En Security > Bots > BotBase, filtrar por CF-Bot-Type para identificar tráfico automatizado. Verificar si los bots legítimos (ej: Googlebot) están marcados como «Verified».
- Crear reglas personalizadas:
# Ejemplo: Permitir bots de monitoreo conocidos
– rule: «cf.bot.type eq ‘Datadog Synthetics’ or cf.bot.type eq ‘UptimeRobot'»
action: allow
- Desafiar bots no verificados:
– rule: «cf.bot.type ne ‘Verified'»
action: js_challenge
score: 10
3. Prepararse para Adaptive Intelligence
- Asegurar que Bot Management está activado: Adaptive Intelligence será habilitado automáticamente para clientes de Bot Management (no requiere acción, pero es prerequisite).
- Ajustar umbrales de acción: Revisar las reglas de Bot Management (en Security > Bots > Settings) para definir qué hacer con tráfico clasificado como «likely automated» (ej: bloquear, desafiar con CAPTCHA).
4. Integrar con EKS y otras cargas de trabajo cloud
- Whitelistear bots internos: Si usás agents para health checks o CI/CD (ej: Argo CD, Tekton), añadirlos a BotBase como «Verified» via headers personalizados:
curl -X GET https://example.com \
-H «User-Agent: Argobot/2.0» \
-H «CF-Bot-Type: Probe»
- Monitorear tráfico de pods: Usar Cloudflare Logs (o un SIEM) para detectar traffic anómalo desde IPs de nodos de EKS, que podría indicar pods comprometidos.
Conclusión
El enfoque de Cloudflare —combinar verificación de identidad (BotBase), análisis de comportamiento (Precursor) y ML adaptativo— refleja una tendencia más amplia en seguridad: la confianza es dinámica. Para los equipos de DevOps y SRE, esto significa que la protección contra bots ya no puede depender solo de listas negras o desafíos estáticos. La recomendación práctica es: implementar Precursor en modo observación, configurar BotBase para clasificar el tráfico automatizado y prepararse para la transición a Adaptive Intelligence. En entornos cloud, integrar estas herramientas con las políticas de acceso de los servicios (ej: EKS) para minimizar falsos positivos en tráfico legítimo.
Fuentes
https://blog.cloudflare.com/good-and-bad-agentic-behaviors/
https://developers.cloudflare.com/bots/get-integrated/