Ante la cantidad de bots que hay en las aplicaciones (ya sea con buenas o malas intenciones), la pregunta del millón es cómo poner freno a los bots nocivos sin afectar a los legítimos. Por mucha atención que pongan los equipos de AppSec a los registros para detectar picos de tráfico y detectar la presencia de bots, sin las herramientas correctas es difícil saber si el tráfico proviene de bots legítimos o maliciosos. Además, el control interno de los bots puede dejar vulnerabilidades de seguridad, dado que los más sofisticados son capaces de emular a los usuarios humanos. El software de control de bots se creó con el objetivo de eludir estas desventajas.
La gestión de bots, por tanto, se refiere a un tipo de programas de seguridad de la capa 7 que se pueden implementar para defender las aplicaciones ante el tráfico de bots maliciosos. Este software ofrece funcionalidades de detección, mitigación y supervisión que se pueden usar para proteger los activos digitales de las organizaciones y mantener la seguridad de sus entornos online.
La detección de bots engloba la identificación y la distinción de bots con respecto a los usuarios humanos, así como la diferenciación entre la actividad legítima y la maliciosa. Se trata de la funcionalidad más compleja de todo programa de gestión de bots, puesto que los bots sofisticados presentan una capacidad casi total de hacerse pasar por tráfico humano. Para detectarlos, estos programas pueden aplicar varios métodos que repasamos a continuación.
El software de gestión de bots aplica varios métodos de detección que también pueden ayudar a distinguir entre el tráfico legítimo y el malicioso. Además, los métodos de detección se combinan para tapar vacíos de seguridad que podrían producirse si se usaran de forma individual:
El CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart) es un método muy común de detección de bots que plantea desafíos a los usuarios para que demuestren que son humanos. Suele conllevar la realización de tareas como reconocer caracteres distorsionados, resolver rompecabezas o seleccionar imágenes concretas. A los bots más simples les cuesta superar estas pruebas, mientras que para los humanos es pan comido.
Este método analiza patrones de comportamiento de usuarios para distinguir entre usuarios humanos y bots. Busca actividades sospechosas o llamativas que suelen ser características de los bots, como peticiones rápidas de páginas, patrones de navegación uniformes o patrones de clics poco comunes. El análisis de comportamiento también suele abarcar factores como la duración de la sesión, movimientos del ratón y velocidad de tecleo, entre otros.
El análisis de IP implica la supervisión y el análisis de las direcciones IP relacionadas con peticiones entrantes. Ayuda a identificar direcciones IP sospechosas o rangos que se conocen por sus actividades maliciosas o por mostrar comportamientos propios de bots. Normalmente, se usan listas negras o bases de datos de reputación de IP para marcar o bloquear peticiones que provengan de IP sospechosas.
El análisis del agente de usuario examina la cadena de agente de usuario que incluye el encabezado de la petición HTTP, con el fin de determinar el dispositivo o el software de cliente usado para acceder al sitio web o la aplicación. El tráfico de bots puede presentar patrones de agente de usuario únicos o reconocibles, lo que permite a los sistemas de detección marcar las peticiones de agentes de usuario de bots conocidos o identificar agentes inusuales o sospechosos.
También se pueden usar técnicas de aprendizaje automático e inteligencia artificial (IA) para formar modelos que puedan reconocer patrones y características propios de los bots. Estos modelos pueden aprender de grandes volúmenes de datos y detectar anomalías o comportamientos típicos de bots en combinaciones de encabezados de peticiones, interacciones de usuarios, movimientos del ratón o patrones de navegación.
Las huellas digitales de dispositivos se crean recabando y analizando información específica del dispositivo, como los atributos del navegador, los datos del sistema operativo, la resolución de la pantalla, los complementos instalados o la configuración del huso horario. Estos atributos pueden ayudar a identificar configuraciones sospechosas o únicas de un dispositivo relacionado con bots.
Los desafíos de JavaScript presentan una tarea o comprobación adicional que requiere la ejecución de código de JavaScript en el lado del cliente. A los bots les cuesta interpretar y ejecutar JavaScript correctamente, mientras que la mayoría de los navegadores web modernos pueden completar tareas de JavaScript sin problemas.
Puede que un bot sofisticado supere uno o varios de estos métodos de detección, pero si se combinan en el marco de una estrategia general de gestión de bots, las organizaciones podrán detectar la mayor parte del tráfico malicioso de bots de sus aplicaciones.
En cuanto se detecta un bot, la cuestión es cómo mitigarlo. La mitigación se refiere al proceso de filtrar bots maliciosos del tráfico normal para evitar sus posibles ataques. Para ello, se puede bloquear directamente la IP que envía esos bots o se puede mandar su tráfico a otra parte de la aplicación para evitar que un falso positivo eche a perder una venta u otra acción deseada. La mayoría de los productos de gestión de bots también permiten aplicar conjuntos de reglas pormenorizados al tráfico de bots, como la limitación de volumen o el cumplimiento de ciertas reglas antes de efectuar un bloqueo. Así, las organizaciones pueden depositar más confianza en las decisiones y garantizar que el tráfico legítimo no se vea afectado por un bloqueo.
La supervisión comprende las herramientas de la gestión de bots que aportan observabilidad y datos prácticos acerca de los bots que pasan por tu aplicación. Da una visión completa de los tipos, las tendencias y el tráfico de bots, así como otros detalles que AppSec puede usar para entender mejor el tráfico. En este contexto, resultan útiles acciones generales de seguridad, como listas de autorización y bloqueo o políticas de bots.
La gestión de bots protege a las aplicaciones ante los bots maliciosos y, a la vez, detecta y deja pasar de forma inteligente a aquellos con propósitos legítimos. Gracias a sus capacidades de detección, mitigación y supervisión, las organizaciones pueden mantener la seguridad de sus entornos y obtener información práctica acerca del tráfico de sus aplicaciones.
El WAF de última generación de Fastly cuenta con funciones integradas de gestión de bots que protegen tus aplicaciones de los bots maliciosos, a la vez que dejan pasar a los bots legítimos. Así, impide que bots maliciosos actúen contra tus sitios web y API, identificándolos y mitigando sus ataques antes de que afecten a tu negocio o a la experiencia de uso. Descubre más acerca del WAF de última generación y sus capacidades de gestión de bots.