Ciberamenazas y contramedidas

Bot

Se lee en aproximadamente 5 minutos

Qué es un bot

Un bot es un programa que ejecuta tareas automáticamente sin intervención humana. Deriva de "Robot" y aproximadamente la mitad del tráfico web proviene de bots.

Existen bots beneficiosos como crawlers de búsqueda y chatbots de soporte, y maliciosos para scraping o login fraudulento. Para los administradores web, aceptar bots benignos mientras se bloquean los maliciosos es un desafío crucial de seguridad y experiencia de usuario.

Tipos de bots benignos

  • Crawlers de búsqueda: Googlebot, Bingbot recorren páginas web construyendo índices de búsqueda. Respetan robots.txt.
  • Chatbots: Automatizan soporte al cliente y FAQ. Responden instantáneamente usando procesamiento de lenguaje natural.
  • Bots de monitorización: Verifican disponibilidad, tiempos de respuesta y certificados SSL periódicamente.
  • Crawlers de feeds: Recorren RSS y sitios de noticias recopilando actualizaciones.

Los bots benignos se identifican correctamente en User-Agent y respetan robots.txt. Sin embargo, bots maliciosos pueden falsificar el User-Agent de bots legítimos.

Amenazas de bots maliciosos

  • Bots de scraping: Recopilan masivamente precios, contenido o datos personales.
  • Credential stuffing: Prueban automáticamente credenciales filtradas en múltiples servicios.
  • Bots de spam: Publican masivamente en comentarios, formularios y redes sociales.
  • Bots de compra: Compran masivamente productos limitados o entradas para reventa.
  • Bots DDoS: Como parte de botnets, envían solicitudes masivas al servidor objetivo.

Los bots maliciosos son cada vez más sofisticados, usando navegadores headless que imitan comportamiento humano o machine learning para superar CAPTCHA.

Tecnologías de detección de bots

Distingue humanos de bots mediante reconocimiento de imágenes o puzzles. reCAPTCHA v3 analiza comportamiento en segundo plano sin requerir acción del usuario.
Análisis de comportamiento
Analiza movimientos del ratón, patrones de scroll, ritmo de tecleo. Los bots muestran patrones mecánicos.
Limitación de tasa
Limita frecuencia de solicitudes por IP o sesión. Implementado en WAF o proxy inverso.
Desafío JavaScript
Requiere ejecución de JS, eliminando bots simples. Verifica características del entorno del navegador.
Fingerprinting de dispositivo
Aplica fingerprinting del navegador para detectar accesos masivos del mismo dispositivo aunque cambie la IP.

Ninguna técnica individual elimina bots avanzados. Se requiere un enfoque multicapa combinando varias tecnologías.

Relación con botnets

La mayoría de bots maliciosos no operan solos sino como parte de botnets: redes de miles a millones de dispositivos infectados controlados remotamente.

Cada bot está diseñado para pasar desapercibido y solo se activa al recibir órdenes. Se usan para DDoS, spam masivo y credential stuffing.

Desde la perspectiva del administrador web, los accesos desde botnets provienen de muchas IPs diferentes, dificultando el bloqueo por IP. El análisis de comportamiento y fingerprinting son esenciales.

Conceptos erróneos comunes

Todos los bots son maliciosos
Muchos bots son benignos e imprescindibles: crawlers de búsqueda, bots de monitorización. Bloquearlos impediría la indexación en buscadores.
Con CAPTCHA la protección contra bots es completa
Existen granjas de CAPTCHA (humanos que los resuelven) y ML que los supera. Se necesita defensa multicapa: análisis de comportamiento, limitación de tasa y fingerprinting.
robots.txt bloquea completamente a los bots
robots.txt es solo una solicitud, sin fuerza legal. Los bots benignos lo respetan pero los maliciosos lo ignoran. Se necesitan medidas técnicas como WAF.
Compartir

Términos relacionados

Artículos relacionados