¿Qué es la gestión de bots? | Cómo funcionan los gestores de bots

La gestión de bots implica detectar y bloquear ciertos bots a la vez que se deja acceder a otros (a un sitio web o a una aplicación).

Share facebook icon linkedin icon twitter icon email icon

Gestión de bots

Objetivos de aprendizaje

Después de leer este artículo podrá:

  • Comprender cómo actúan los bots y por qué es necesario gestionarlos
  • Aprender para qué sirven los gestores de bots
  • Averiguar qué bots deben permitirse y cuáles deben ser bloqueados

¿Qué es la gestión de bots?

La gestión de bots consiste en bloquear bots de internet no deseados o maliciosos, pero, al mismo tiempo, dejar acceder, a nuestros activos de internet (dominios, sitios web, etc.), a aquellos que sí sean útiles. Esto se consigue mediante la detección de actividad de bots, el discernimiento entre comportamientos deseables y no deseables de bots y la localización de los orígenes de actividades no deseadas.

La gestión de bots es necesaria, porque si a los bots no se les presta atención pueden provocar problemas masivos a los activos de internet. Un tráfico de bots excesivo puede someter a los servidores web a una carga desproporcionada y ralentizar el tráfico o provocar que se deniegue acceso a usuarios legítimos (a veces esto se produce mediante un ataque DDoS). Los bots maliciosos pueden extraer (scraping) o descargar contenido del sitio web, robar credenciales de usuarios, esparcir con rapidez contenido spam y ejecutar diversos tipos distintos de ciberataques.

¿Qué hace un gestor de bots?

Un gestor de bots es cualquier producto de software que gestione bots. Los gestores de bots deben ser capaces de bloquear determinados bots, pero no todos, esto es, deben ser al mismo tiempo capaces de dejar pasar a los no dañinos. Así, si se bloquean todos los bots, los de Google, por ejemplo, no podrán indexar la página, esta no aparecerá en los resultados de búsqueda y el tráfico procedente de búsquedas disminuirá enormemente.

Un buen gestor de bots está capacitado para alcanzar los objetivos que siguen. Puede

  • Distinguir bots de visitantes humanos
  • Averiguar la reputación de los bots
  • Averiguar la dirección IPde origen del bot y realizar bloqueos basados en reputación de IPs
  • Analizar el comportamiento de los bots
  • Añadir bots buenos a listas blancas
  • Poner retos a bots potenciales, como captchas, inyección JavaScript u otros métodos diferentes
  • Limitar la tasa de peticiones a cualquier bot potencial que esté abusando del servicio
  • Denegar acceso a ciertos recursos a bots maliciosos o dañinos
  • Entregar contenido alternativo a los bots

¿Qué es un bot?

Un bot (derivación de "robot") es un programa de ordenador que opera en la red. Los bots están programados para realizar de forma automatizada determinadas acciones. Normalmente, las acciones que realizan los bots son bastante sencillas, pero pueden repetirlas una y otra vez a una velocidad que un humano jamás sería capaz de alcanzar.

Por ejemplo, Google utiliza bots para rastrear de forma continua todo internet e indexar contenido. Un equipo formado por seres humanos tardaría una cantidad astronómica de tiempo en hacer lo mismo que tales bots. Sin embargo, los bots de Google consiguen mantener bastante actualizado el índice de búsqueda de Google.

Un ejemplo de bot malicioso serían los bots para recopilar direcciones de correo electrónico por todo internet que utilizan los spammers. Estos bots rastrean paginas web en busca de cualquier tipo de texto que siga el formato de una dirección de correo electrónico (texto + arroba + dominio) y guardan después las direcciones halladas en una base de datos. Lógicamente, un humano también puede rastrear páginas web en busca de direcciones de correo, pero los bots, al estar automatizados, y programados además para buscar únicamente texto que reúna determinados parámetros, son capaces de hacerlo a mucha mayor velocidad.

A diferencia de lo que ocurre cuando un ser humano accede a internet, un bot, normalmente, no lo hace a través de un navegador web tradicional, como Google Chrome o Mozilla Firefox. En vez de un ratón y hacer clic después en el contenido que se quiere visualizar, los bots son simplemente programas de software que realizan solicitudes HTTP (además de otras acciones), normalmente utilizando lo que se conoce como "headless browser" (navegador sin interfaz gráfica).

¿Qué hacen los bots?

Los bots básicamente están capacitados para realizar cualquier tipo de tarea repetitiva y no creativa, cualquier cosa que se pueda automatizar. Pueden interactuar con una página web, rellenar y enviar formularios, hacer clic en enlaces, escanear (o rastrear) textos y descargar contenido. Los bots también pueden ver vídeos, publicar comentarios o contenidos, dar likes o retuitear. Algunos bots pueden incluso mantener conversaciones sencillas con usuarios humanos, son los conocidos como chatbots.

¿En qué se diferencian los bots buenos de los malos?

Por increíble que parezca, muchas fuentes independientes han estimado que en torno a la mitad del tráfico de internet son bots. Y, de igual manera que parte del software existente es malware, hay bots buenos y bots malos.

Cualquier bot que haga un mal uso de un producto o servicio en línea puede ser considerado malo. Tales bots "malos" pueden abarcar desde los manifiestamente maliciosos, como los que intentan entrar a la fuerza en las cuentas de los usuarios, hasta los que llevan a cabo otro tipo de abusos más moderados, como, por ejemplo, los que compran entradas en un sitio web de eventos.

Un bot que preste un servicio necesario o útil será categorizado como "bueno". Por ejemplo, los chatbots, los rastreadores que utilizan los motores de búsqueda y los bots que monitorizan el rendimiento serían bots "buenos". Y, normalmente, tales bots buenos obedecen las reglas contenidas en el archivo robots.txt del sitio web.

¿Qué es un archivo robots.txt?

Un archivo robots.txt es un archivo que se halla en un servidor web y que contiene las reglas de acceso para bots a los activos de internet ubicados en dicho servidor. Ahora bien, tal archivo no se encarga de velar por el cumplimiento de tales reglas. Por este motivo, todo quedaría en mano de los propios programadores de bots, los cuales deberían asegurarse de que sus bots respetasen tales reglas de acceso. Y esto obviamente no sucede así cuando se trata de bots maliciosos. Y de ahí la necesidad de contar con un gestor de bots.

¿Cómo funciona la gestión de bots?

Para detectar bots, los gestores de bots pueden utilizar retos en JavaScript (que determinan si se está utilizando o no un navegador tradicional) o pruebas captcha. Estos gestores también son capaces de discernir qué usuarios son humanos y cuáles no mediante un análisis de comportamiento que compara las acciones del usuario con las anteriores de otros usuarios. Para poder realizar eficazmente esto último, los gestores de bots deben disponer de extensas bases de datos de calidad recopilatorias de acciones de usuarios (datos sobre comportamiento).

Cuando se determina que un bot es dañino o malicioso, dicho bot puede ser redirigido a otra página o simplemente bloqueado.

Los bots buenos pueden ser incluidos en listas blancas o en listas de bots permitidos (que son lo opuesto a las listas negras). Un gestor de bots está también normalmente capacitado para ir más allá en el discernimiento entre bots buenos y malos mediante la utilización de análisis de comportamiento.

Otra posible forma de gestionar bots es utilizar el archivo robots.txt para crear lo que se conoce como honeypot (literalmente jarro de miel). Se trata de una trampa que se tiende a los bots precisamente para poder descubrirlos con mayor facilidad. Por ejemplo, establecer una página web en el sitio cuyo acceso esté prohibido para bots (según lo dispuesto en robots.txt). Los bots inofensivos leerán entonces el archivo y se abstendrán de entrar en dicha página mientras que algunos de los dañinos sí entrarán para rastrearla. El gestor de bots podrá entonces bloquear las direcciones IP de los bots que hayan caído en la trampa.

¿Qué tipos de ataques de bots no puede mitigar el gestor de bots?

Una solución de este tipo, gestor de bots, puede ayudarte a detener varios tipos de ataques:

Estas acciones de bots no son siempre consideradas "maliciosas", pero, de todas formas, un buen gestor de bots debería ser capaz de mitigarlas:

  • Inventory hoarding (secuestro de inventarios)
  • Publicaciones automáticas en foros o plataformas
  • Stuffing de carritos de compra

¿Cómo funciona la gestión de bots de Cloudflare?

Cloudflare domina una habilidad única, la de recopilar datos procedentes de miles de millones de solicitudes diarias canalizadas a través de su red. Utilizando estos datos, los cuales son examinados mediante aprendizaje automático y análisis de comportamiento, Cloudflare consigue detectar actividad de bots y aportar la información necesaria para crear listas blancas (de bots buenos) y listas negras (de los malos). Cloudflare cuenta demás con una amplia base de datos sobre reputación de IPs. Lee más sobre Gestión de bots por parte de Cloudflare.