Volver al blog

Síguenos y suscríbete

Cómo frenar a los bots de zapatillas de la mejor manera

Katsuyuki Omuro

Senior Software Engineer, Developer Relations, Fastly

Hoy en día, los scripts automatizados, o bots, representan una gran parte de las compras de productos en internet. En algunos casos, estos bots pueden ser dañinos para las empresas, pero en otros pueden ayudarles a aumentar los ingresos. Si tienes un negocio online, quizás te cueste decidir cómo hacerles frente. La plataforma de edge cloud de Fastly se adapta a tus necesidades y te ayuda a crear el conjunto de políticas adecuado para tu empresa.

Hoy en día, las zapatillas han dejado de ser un simple calzado deportivo para convertirse en objetos emblemáticos muy codiciados para ir a la última moda, hasta tal punto que algunas personas recurren a la tecnología para ir unos metros por delante en esta competición.

Los fanáticos de las zapatillas y los revendedores utilizan bots cuyo único propósito es hacerse con el mayor número posible de pares de estos artículos tan demandados. Cuando las marcas lanzan sus productos más esperados, el tráfico a los sitios de compra se dispara, y la mayoría de los pedidos proceden de bots. Como resultado, los consumidores de carne y hueso pueden quedarse sin opciones de compra.

Sin embargo, este fenómeno no es exclusivo de las zapatillas y también afecta a otros productos. Los bots suelen hacerse rápidamente con artículos populares, como juguetes, aparatos electrónicos y videoconsolas. A los bots que compran artículos muy demandados durante la época navideña se les conoce como bots grinch.

¡Que vienen los robots!

Tener que competir con bots puede convertir la experiencia de compra en algo desesperante, y es que actúan con tanta rapidez que son capaces de agotar las existencias antes de que una persona pueda siquiera añadir el artículo a su cesta. En tal caso, los compradores reales se ven obligados a comprar el artículo a un operador de bots que lo revende a un precio más alto, o incluso a desistir de comprarlo.

El sitio web de la empresa vendedora puede recibir mucho tráfico de bots y, durante el lanzamiento de una edición limitada de un producto, recibir millones de visitas. Aunque el objetivo de los bots no es provocar la caída de tu sitio web, ya que su propósito es comprar tu producto, atender este tráfico puede resultar costoso e incluso llegar a bloquear el sitio.

¿Está en peligro la seguridad?

Lo inmediato sería pensar que los bots suponen un problema de seguridad.

Al fin y al cabo, saturan el ancho de banda de la red y generan una enorme carga de procesamiento. A través de las redes de bots (botnets)</u>, a menudo simulan que sus peticiones de red proceden de miles de direcciones IP únicas para eludir la limitación de volumen. Algunos bots aprovechan posibles vectores de ataque en el software de la cesta de la compra o de la arquitectura de red para obtener esa ventaja adicional. Por eso, los intentos de compras masivas por parte de bots sí se parecen a ciertos problemas de seguridad como los ataques de denegación de servicio distribuido (DDoS).

Sin embargo, la cosa no es tan sencilla cuando se trata de bots que quieren pagar por adquirir tus productos.

Siempre que haya existencias limitadas y clientes dispuestos a gastar su dinero, lo más probable es que también haya bots que quieran hacerse con la mercancía. Ahora bien, hay que tener en cuenta que existen distintos tipos de modelos de negocio que venden estos productos. Cada tienda, ya sea Walmart, Best Buy, Amazon, Supreme, Coachella o Apple, puede tener su propia visión de los bots.

En última instancia, lo que importa es vender. Por un lado, una empresa que adquiere sus productos a precios de mayorista y que los vende con un margen de beneficio predeterminado podría verlo como una forma de dar salida a un montón de stock. A veces, la escasez creada por los bots, aunque sea artificial, puede hacer que un producto parezca más exclusivo y lujoso.

Por otro lado, puede que algunas empresas prefieran vender sus productos a personas. Si sus tiendas online rechazan a demasiados compradores reales que desean adquirir una PlayStation 5 o Xbox, lo más probable es que esas personas se vayan a otra parte cuando necesiten cambiar de televisor.

Además, hay otros aspectos que pueden crear cierta inquietud. Por ejemplo, la reputación de una marca puede peligrar si los bots crean un mercado secundario demasiado amplio para un producto, o puede ser que algunas empresas piensen, simple y llanamente, que es injusto que los humanos compitan con los bots.

Por todo ello, las políticas necesarias son muy diversas, ya que dependen del modelo de negocio y las prioridades del sitio. De hecho, las soluciones que utilizan nuestros clientes son tan particulares que no podemos ofrecer aquí ejemplos concretos.

Es importante entender que cada empresa debe decidir cómo gestionar los bots que compran sus productos, ya que no hay una fórmula mágica ni una única solución válida para todas las empresas.

Creemos que es primordial que seas tú, como propietario de la empresa, quien decida la cantidad y la forma del tráfico de bots que quieres atraer.

¿Quién eres?

Hay varios métodos para identificar el tráfico de bots en los sitios web. Un método sencillo consiste en detectar los casos en los que un gran número de peticiones en un breve plazo de tiempo proceden de la misma dirección IP</u>. Lo malo es que las botnets podrían sortearlo.

Otra técnica es el conocido CAPTCHA</u>, en el que se pide al visitante que resuelva un desafío como, por ejemplo, que seleccione fotos de bocas de incendio o que escriba las letras de una imagen poco clara. En el Developer Hub encontrarás un ejemplo de cómo usar y validar un CAPTCHA en el edge</u>. Sin embargo, en la actualidad ya es posible eludirlos mediante inteligencia artificial o criaderos de CAPTCHA. Por otro lado, están apareciendo nuevas soluciones que respetan la privacidad, como los tokens de acceso privado</u>, pero todavía no están disponibles de forma generalizada.

Hay métodos de detección de comportamientos más complejos que utilizan técnicas heurísticas basadas en la premisa de que los humanos y los bots no siempre se comportan de la misma manera. En estos casos, los sitios pueden fijarse en datos como los siguientes para extraer conclusiones:

  • Hay un número excesivo de cargas de página por sesión.

  • El orden de navegación por las páginas es ilógico.

  • El tiempo de carga entre las páginas es demasiado corto.

  • No se cargan los recursos dependientes, como JavaScript, CSS y anuncios.

  • Se hace clic en enlaces que no están visibles en la pantalla.

  • Los formularios se rellenan a una velocidad inusitada.

Los métodos de recopilación de huellas digitales del navegador</u> utilizan diversas técnicas para recopilar información sobre el visitante, como el dispositivo, el navegador y el sistema operativo. Se realiza un análisis heurístico de la huella digital recopilada para ver si coincide con la de bots conocidos o si se aprecian modificaciones que intenten ocultar la presencia de un bot. Hay varios mecanismos de huella digital, como la biblioteca FingerprintJS</u> y JA3</u>, un método muy conocido para obtener la huella digital de clientes TLS</u>. Nuestras plataformas de VCL y Compute son compatibles con JA3.

La detección de bots puede ser muy laboriosa desde el punto de vista programático. Conforme mejoran las técnicas de detección, los bots también modifican sus estrategias de ocultación, incluso cada pocas semanas, lo que provoca un interminable juego del gato y el ratón.

Entonces, ¿qué hacemos con los bots?

En cuanto detectes que un visitante es un bot, deberás decidir qué hacer con él.

Si quieres bloquear los bots, lo más sencillo es mostrar un código de error y rechazarlos alegando que se trata de bots y que seguramente estén violando las condiciones del sitio. Sin embargo, la experiencia nos dice que este tipo de respuesta es contraproducente, ya que incentiva a los creadores de bots a volver con una estrategia aún más agresiva para no ser detectados.

Podrías optar por una estrategia de mitigación en la que el bot no tuviera por qué saber que ha sido detectado. Por ejemplo, podrías usar salas de penalización</u> para ralentizar las peticiones procedentes de una única dirección IP.

penaltybox origin_response_pb {}

sub vcl_fetch {
  if (beresp.status == 429) {
    ratelimit.penaltybox_add(origin_response_pb, client.ip, 1m);
  }
}

sub vcl_deliver {
  if (ratelimit.penaltybox_has(origin_response_pb, client.ip)) {
    resp.tarpit(5, 1000);
  }
}

En la imagen anterior se muestra un ejemplo del uso de una sala de penalización, una función de limitación de volumen en el edge</u> de Fastly. Este código añade una dirección IP a una sala de penalización para «enviarla al banquillo» durante 1 min después de que el servidor haya rechazado la respuesta con un código de respuesta 429 que indica que hay demasiadas peticiones. Durante ese tiempo, los clientes procedentes de esa dirección IP deben esperar 5 segundos por cada 1000 bytes emitidos de la respuesta.

Hay soluciones más creativas, como ofrecer cestas de la compra falsas a esos bots. De ese modo, los bots podrían completar procesos de compra falsos y quedar satisfechos sin que el sitio perdiera ninguna venta.

Fastly también ofrece integraciones con plataformas de partners, como HUMAN Security</u>, que se puede usar en la mitigación e identificación de bots.

También hay herramientas que permiten situar a los bots en un plano de igualdad con respecto a los visitantes reales. En ese sentido, se suelen usar soluciones como la sala de espera</u> para garantizar que las personas tengan la oportunidad de ponerse a la cola para comprar en los momentos de mayor afluencia.

De todas formas, puede darse el caso de que a tu empresa no le importe el tráfico de bots, siempre y cuando protejamos tu origen y la cesta de la compra. Quizás lo único que quieres es evitar el relleno de credenciales</u> y solo necesitas poder diferenciar el tráfico de bots del orgánico en los registros.

Sean cuales sean tus necesidades, la infraestructura de Fastly te ayuda a gestionar los bots:

  • En colaboración con tu empresa, elaboramos las estrategias de mitigación de bots que mejor se adapten a tus políticas.

  • Te ayudamos a desarrollar tu estrategia con plataformas como Compute, herramientas como la limitación de volumen y soluciones como la sala de espera.

  • Protegemos tu origen escalando y atendiendo el tráfico a tu sitio desde el edge. El WAF de última generación de Fastly (con tecnología de Signal Sciences) también puede ser una herramienta potente que te proteja de los bots que lanzan ataques automatizados contra tu sitio y lo usan de forma indebida.

Usa las políticas que mejor se adapten a tu negocio

Nos guste o no, los bots han venido para quedarse. Por eso, lo que debes plantearte es cómo hacer que la competencia entre bots y humanos encaje con los objetivos de tu empresa. Tanto si quieres bloquearlos como si quieres crear políticas que te permitan ofrecer las máximas oportunidades de compra a los clientes humanos, Fastly puede ayudarte a establecer las condiciones adecuadas para tu empresa.