Administración de bots
Información general
El tráfico automatizado de bots puede tener un impacto negativo en su aplicación web, en cuanto a disponibilidad, aumento de los costos de infraestructura, análisis sesgados y actividades fraudulentas como la toma de control de cuentas. La administración de bots designa los controles utilizados para identificar el tráfico procedente de bots y, a continuación, bloquear los no deseados. La sofisticación de estos controles depende de hasta qué punto los actores maliciosos están incentivados financiera y políticamente para atacar una aplicación web. Cuanto más motivados estén para atacar una aplicación web, más invertirán en técnicas de evasión de la detección, lo que requerirá capacidades de mitigación más avanzadas. Se recomienda adoptar un enfoque por capas para administrar los bots, con herramientas diferenciadas, cada una adaptada a la sofisticación específica del bot. Para obtener más información sobre dónde empezar, consulte las Recomendaciones de AWS para implementar una estrategia de control de bots.
Detección basada en firmas para bots comunes y omnipresentes
El tráfico generado por bots comunes y omnipresentes, como escáneres y rastreadores, podría identificarse y gestionarse en el servidor al analizar la firma de solicitudes basadas en atributos HTTP como IP, encabezado User-Agent o huella digital TLS. AWS WAF le permite utilizar las siguientes reglas basadas en firmas:
- Las reglas que se utilizan para bloquear inundaciones HTTP (ataques DDoS L7), como límites de tasas, grupos de reglas de reputación de IP administradas (lista de reputación de IP de Amazon, lista de IP anónimas, etc.) y reglas creadas automáticamente por la mitigación automática de ataques DDoS en la capa de aplicaciones de Shield Avanzado.
- El grupo de reglas administrado del Bot Control de AWS WAF se configura con un nivel de protección común para bloquear bots autoidentificados o con firmas de bot de alta confianza. Este grupo de reglas se puede configurar con granularidad para diferenciar la administración de diferentes categorías de bots, como Http Library o Scraping Framework. En este blog encontrará ejemplos concretos de una configuración granular de Bot Control de AWS WAF con etiquetas e instrucciones de alcance reducido.
- Reglas administradas proporcionadas por proveedores de seguridad en AWS Marketplace, como la Bot Protection Rules de F5 y Active Malicious Bots de ThreatSTOP.
Detecciones de comportamiento para bots avanzados
Cuando los actores maliciosos tienen mayores incentivos para automatizar el tráfico a su sitio web (por ejemplo, motivación financiera para extraer contenido y revenderlo, robar datos de tarjetas de crédito y revenderlos, etc.), invierten más esfuerzos y dinero en técnicas para evadir las detecciones (por ejemplo, con IP de redes residenciales, mediante marcos avanzados de automatización del navegador, a través de granjas de CAPTCHA, etc.). Para los bots sofisticados, las detecciones basadas en firmas son menos eficaces, por lo que es necesario implementar detecciones de comportamiento más avanzadas y costosas. Para los bots sofisticados, las detecciones basadas en firmas no son suficientes, por lo que es necesario implementar detecciones de comportamiento más avanzadas y costosas. Los desafíos silenciosos y las acciones CAPTCHA se utilizan como acciones de mitigación comunes para los bots avanzados e implican interacciones con navegadores o dispositivos móviles. Lea esta entrada de blog para profundizar en cómo ocurren estas interacciones.
CAPTCHA
Las reglas configuradas en AWS WAF pueden tener una acción CAPTCHA, además de bloqueo, recuento o límite de tasas. Cuando una regla se configura con una acción CAPTCHA, los usuarios deben resolver un rompecabezas para demostrar que un ser humano envía la solicitud. Cuando un usuario resuelve correctamente un desafío CAPTCHA, se coloca un token en su navegador para evitar el desafío de futuras solicitudes, con un tiempo de inmunidad configurable. Más información sobre las prácticas recomendadas para configurar CAPTCHA.
Desafío silencioso
Las reglas configuradas en AWS WAF pueden tener la opción Desafío, además de bloqueo, recuento o límite de tasas. Cuando se configura una regla con una opción Desafío, se presenta al navegador un desafío silencioso (desafío intersticial) que requiere que la sesión del cliente verifique que se trata de un navegador y no de un bot. La verificación se ejecuta en segundo plano sin involucrar al usuario final. Esta es una buena opción para verificar clientes de los que sospecha que no son válidos sin afectar negativamente a la experiencia del usuario final con un rompecabezas CAPTCHA. Cuando un usuario resuelve correctamente un desafío silencioso, se coloca un token en su navegador para evitar desafiar futuras solicitudes, con un tiempo de inmunidad configurable. Obtenga más información sobre las prácticas recomendadas para configurar Desafíos.
Integración de aplicaciones cliente
Otra opción para adquirir un token de AWS WAF es utilizar los SDK de integración de aplicaciones de AWS WAF. Los SDK requieren programación en las aplicaciones cliente, pero pueden brindar una mejor experiencia al cliente, son de uso gratuito y se pueden usar con navegadores que ejecuten JavaScript o de forma nativa en aplicaciones móviles Android o iOS. La integración del SDK es útil en los casos en los que las acciones de las reglas Desafío o CAPTCHA no son posibles, p. ej., las aplicaciones de una sola página. AWS WAF ofrece dos niveles de integración de aplicaciones cliente:
- SDK de integración inteligente de amenazas: están diseñados para funcionar con reglas inteligentes de mitigación de amenazas. Verifican la aplicación del cliente y proporcionan la adquisición y administración de los tokens de AWS. Funcionan de forma similar a la acción de regla de AWS WAF Challenge.
- API JS de integración de CAPTCHA: Estas API verifican a los usuarios finales con un rompecabezas CAPTCHA personalizado que los clientes administran en su aplicación. Es similar a la funcionalidad que proporciona la acción de la regla AWS WAF CAPTCHA, pero con un mayor control sobre la ubicación y el comportamiento del rompecabezas. Esta característica está disponible para aplicaciones de JavaScript.
AWS WAF Fraud Control
AWS WAF proporciona un conjunto de reglas administradas que se centran en detectar actividades fraudulentas en los flujos de trabajo de inicio de sesión o registro. La apropiación de cuentas es una actividad ilegal en Internet en la que el atacante obtiene acceso no autorizado a la cuenta de un usuario, ya sea con credenciales robadas o si adivina la contraseña de la víctima con una serie de intentos. Puede supervisar y controlar los intentos de apropiación de cuentas si implementa la regla administradaPrevención de la apropiación de cuentas (ATP) de AWS WAF Fraud Control. En cada sesión de usuario, ATP supervisa la tasa de intentos de inicio de sesión, incluidos los intentos fallidos, para detectar intentos de apropiación de contraseñas o nombres de usuario. Además, ATP comprueba las combinaciones de nombre de usuario y contraseña en una base de datos de credenciales robadas, que se actualiza regularmente a medida que se encuentran nuevas credenciales filtradas en la web clandestina.
El fraude de creación de cuentas es una actividad ilegal en Internet en la que un atacante intenta crear una o más cuentas falsas. Los atacantes utilizan cuentas falsas para actividades fraudulentas como abusar de bonos promocionales y de registro, suplantar la identidad de alguien y ciberataques como el phishing. Puede supervisar y controlar los intentos de creación de cuentas fraudulentas con la regla administrada Prevención del fraude en la creación de cuentas (ACFP) de AWS WAF Fraud Control. Para cada sesión de usuario, ACFP supervisa el uso de credenciales comprometidas, la puntuación de riesgo de IP, la interactividad del cliente con la página, el marco de automatización detectado o el comportamiento incoherente del navegador, el uso elevado del mismo teléfono, dirección o correo electrónico para crear varias cuentas, etc.
Para utilizar todas las capacidades de las diferentes reglas administradas de Fraud Control, debe agregar un SDK del cliente a su aplicación para hacer un seguimiento de los comportamientos por sesión.
Control de bots de AWS WAF para bots específicos
El grupo de reglas del Control de bots, configurado con el nivel de protección para bots específicos, proporciona una sofisticada detección y mitigación de bots mediante la creación de una línea de base inteligente de patrones de tráfico. Bot Control para bots específicos utiliza técnicas de huellas dactilares del navegador y métodos de interrogación de JavaScript del cliente para ayudar a proteger su aplicación de bots avanzados que imitan los patrones de tráfico humano e intentan activamente evadir la detección. Los controles específicos de AWS WAF para bots también ofrecen tecnología de aprendizaje automático predictivo para defenderse de los ataques distribuidos basados en proxy. El grupo de reglas administrado de AWS WAF Bot Control utiliza un análisis automático de aprendizaje automático de las estadísticas de tráfico del sitio web para detectar un comportamiento anómalo que indique una actividad de bots distribuida y coordinada.
Estas opciones incluyen la limitación dinámica de las tasas, acciones de desafío y la posibilidad de bloquear en función de etiquetas y puntuaciones de confianza. Obtenga más información sobre esta función avanzada en esta charla y en este blog.
Detección de comportamiento en aplicaciones
En su aplicación, puede utilizar señales personalizadas para identificar comportamientos anormales, en función de lo que se espera de su aplicación. Por ejemplo, es probable que espere que los usuarios naveguen por su aplicación en un orden determinado, o que un usuario haga un pedido de determinados productos desde o hacia determinados países según su dirección registrada. Al utilizar estas señales, puede automatizar su respuesta mediante AWS WAF, por ejemplo, al bloquear o desafiar mediante CAPTCHA las solicitudes procedentes de IP con un comportamiento sospechoso en la aplicación. Para empezar con el concepto de automatización de WAF basado en señales de aplicación considere los ejemplos en esta Solución de AWS.
Las automatizaciones avanzadas incluyen:
- Consumo de eventos de alto riesgo emitidos por Cognito durante el proceso de inicio de sesión o registro.
- Consumo de eventos de alto riesgo identificados por Fraud Detector. Fraud Detector utiliza el machine learning (ML) y 20 años de experiencia en detección de fraudes de Amazon Web Services (AWS) y Amazon.com para identificar automáticamente patrones fraudulentos potenciales hechos por humanos y bots en tiempo real. Fraud Detector permite detectar fraudes mediante el análisis del comportamiento de los usuarios a nivel de aplicación, y utiliza sus propios datos históricos de fraude para entrenar, probar e implementar modelos personalizados de machine learning de detección de fraudes adaptados a su caso de uso.
Proveedores de seguridad de terceros
Los proveedores de seguridad de AWS Marketplace especializados en la detección avanzada de bots pueden proporcionar un nivel de protección adicional. Entre los proveedores se incluyen DataDome, Distill Networks, PerimeterX, Cequence, Kasada e Imperva.
Tenga en cuenta que cada proveedor de seguridad tiene diferentes puntos fuertes en términos de protecciones específicas del sector, capacidades y costos. En general, su aplicación que utiliza CloudFront puede integrar soluciones de proveedores de una de estas dos maneras:
- Solución SaaS basada en proxy inverso, situada entre CloudFront y su origen.
- API de mitigación de bots replicada globalmente que se puede llamar mediante Lambda@Edge para cada solicitud entrante (es decir, configurada en el evento de solicitud del espectador) para decidir cómo administrar la solicitud.
Recursos
- AWS re:Inforce 2024 - How Catch Group uses AWS WAF Bot Control on their ecommerce platform
- AWS re:Inforce 2022 - Advanced protections against bots using AWS WAF
- The Routing Loop - Protect your applications against Bot traffic
- Caso práctico de OLX
- Use AWS WAF CAPTCHA to protect your application against common bot traffic
- Best practices for intelligent threat mitigation
- Encuentre socios de entrega de AWS WAF
- Fraud prevention and Bot control with AWS WAF - AWS Online Tech Talks
- Using AWS WAF intelligent threat mitigations with cross-origin API access
- Kasada beats bots at their own game: How to identify and eliminate bot attacks