Análisis de comportamiento: qué es y cómo los especialistas en automatización pueden eludirlo
22/5/26


Markus_automation
Expert in data parsing and automation
No hace mucho, los sistemas antifraude se basaban principalmente en atributos técnicos: direcciones IP, cookies y huellas digitales del navegador. Sin embargo, a medida que los desarrolladores de scripts y scrapers aprendieron a suplantar eficazmente estos parámetros, el enfoque de la protección se desplazó hacia el análisis del comportamiento.
La biometría del comportamiento evalúa exactamente cómo interactúa un usuario con una interfaz y se está convirtiendo gradualmente en un componente clave de los sistemas modernos de detección de automatización.
In este artículo, analizamos cómo funciona este enfoque y explicamos cómo reproducir de manera realista el comportamiento humano en escenarios automatizados.
Contenidos
Manténgase en el anonimato, aproveche las ventajas de tener múltiples cuentas y logre sus objetivos con el navegador antidetección de mayor calidad del mercado.
¿Te gustaría probar Octo Browser con descuento?
Usa el código promocional OCTOSCRAPER para obtener un 30% de descuento en cualquier suscripción. Esta oferta solo es válida para nuevos usuarios.
Por qué los CAPTCHAs están dando paso al análisis del comportamiento
Anteriormente, el CAPTCHA era el principal mecanismo de defensa contra los bots. Los CAPTCHAs todavía existen hoy, aunque han cambiado significativamente. Se han vuelto más sofisticados, y algunas versiones invisibles modernas (como reCAPTCHA v3) han incorporado la misma biométrica del comportamiento que estamos discutiendo.
¿Por qué es esto necesario? Los CAPTCHAs tradicionales (semáforos y caracteres distorsionados) empeoran la experiencia del usuario y son resueltos cada vez más sin esfuerzo por redes neuronales entrenadas. El nuevo enfoque, que funciona sin elementos visibles, elimina gran parte de la carga de los usuarios y evita molestarlos.

La biométrica del comportamiento, como núcleo de este proceso de verificación invisible, ofrece una autenticación continua. Funciona analizando cómo interactúa exactamente un usuario con un dispositivo mientras se desplaza por una página o rellena un formulario, sin requerir ninguna acción adicional por su parte.
Sin embargo, debe hacerse una aclaración importante: la biométrica del comportamiento no se utiliza como un método de verificación independiente. Siempre funciona junto con otras comprobaciones. Además de la biométrica, los sistemas antifraude siguen analizando las huellas digitales, la reputación de la IP y las cookies.
Tipos de biométrica del comportamiento
Profundicemos más en la teoría. Los patrones de comportamiento son, en esencia, una huella digital de su sistema nervioso transferida a un dispositivo. Los sistemas antifraude avanzados no analizan los parámetros por separado. En su lugar, construyen un perfil multidimensional completo que puede dividirse en las siguientes categorías:
Interacción con el dispositivo (cinestesia)
Esta es la mayor capa de datos para la web tradicional y las aplicaciones móviles. Aquí, los sistemas analizan la física de los movimientos del usuario.
Teclado: no se trata de qué letras o números escribe. Los sistemas antifraude evalúan dos parámetros principales: cuánto tiempo se mantiene presionada una tecla (
dwell time) y cuánto tiempo se tarda en moverse entre teclas (flight time). Los humanos tienen memoria muscular; las combinaciones de teclas familiares (por ejemplo, las terminaciones de palabras comunes) se escriben en microrráfagas. Los bots, por su parte, insertan cadenas completas a la vez o imitan la escritura utilizando una lógica simple detime.sleep(random). Esto crea una distribución de retraso plana y poco natural. La aleatoriedad en sí misma se vuelve sospechosa.Ratón: análisis del cursor. El sistema registra las coordenadas y calcula la velocidad, la aceleración, la curvatura de la trayectoria y los tirones. Los humanos no mueven el ratón en líneas perfectamente rectas. Apuntamos a un botón, fallamos por unos pocos píxeles, realizamos pequeños movimientos correctivos y hacemos una breve pausa antes de hacer clic.

Pantalla táctil: específico para la web móvil y las aplicaciones nativas. Un deslizamiento humano es un arco con velocidad desigual, presión específica (si la API permite la detección de presión) y un área de contacto del dedo cambiante. Los bots que emulan eventos táctiles a través de scripts de Appium o JavaScript a menudo simplemente "teletransportan" las coordenadas de enfoque. Escribir las matemáticas adecuadas para un deslizamiento realista es más difícil, por lo que los operadores de bots a menudo toman atajos.
Patrones físicos (biomecánica)
Cuando un usuario accede a una plataforma desde un dispositivo móvil, entran en juego los sensores de hardware. Y dado que ahora vivimos en la era de los usuarios móviles, esto importa mucho.
Patrones de marcha y micromovimientos. ¿Se desplaza por su feed mientras camina, está sentado en una silla o acostado en un sofá? El acelerómetro y el giroscopio de un teléfono inteligente capturan constantemente las diminutas vibraciones del dispositivo. El teléfono de un usuario real siempre tiembla ligeramente en sus manos, incluso cuando intenta mantenerlo perfectamente quieto. Las granjas de bots y los emuladores que se ejecutan en servidores suelen tener por defecto un nivel de ruido de fondo de los sensores de cero, lo que da a los sistemas antifraude algo en lo que pensar y aumenta la puntuación de riesgo.
Patrones cognitivos (psicología de la interacción)
Aquí es donde los sistemas analizan cómo funciona el cerebro de un usuario mientras interactúa con una interfaz de usuario.
Velocidad de navegación y toma de decisiones. ¿Con qué rapidez encuentra un usuario el botón requerido? ¿Lee el texto antes de marcar una casilla de verificación? Las personas a menudo mueven el cursor sobre el texto mientras leen, de manera similar a seguir las líneas de un libro con un dedo, o hacen pausas en formularios complicados. Algunos usuarios incluso seleccionan el texto. Un script de scraping, por el contrario, no tiene dudas: conoce la estructura DOM a la perfección y activa el evento requerido exactamente después de un tiempo de espera predefinido, ignorando por completo la lógica de la búsqueda visual.
Juntos, estos tres niveles crean un perfil tan complejo que replicarlo por completo simplemente agregando retrasos aleatorios al código de Selenium o Puppeteer resulta matemáticamente imposible.
Recopilación de datos y procesamiento previo
Las fuentes principales para recopilar datos biométricos son los eventos mousemove, keydown, keyup, touchstart y touchend, así como la DeviceOrientation API para capturar las lecturas del acelerómetro y del giroscopio.
La parte más difícil en esta etapa es manejar el enorme volumen de datos fragmentados y asíncronos. Un solo evento mousemove por sí solo puede activarse cientos de veces por segundo. Si cada movimiento del cursor activara directamente un procesamiento en el backend o cálculos pesados en el lado del cliente, el sistema antifraude congelaría instantáneamente la interfaz de usuario y causaría un retraso notable en el sitio web del cliente. Ningún negocio aceptaría eso.
Es por eso que los scripts de recopilación del lado del cliente están diseñados para ser tan livianos y simples como sea posible. Su única tarea es capturar rápidamente las coordenadas, adjuntar marcas de tiempo precisas, almacenar todo en un búfer local y enviar los datos al servidor en un lote.

Estos lotes de objetos Json se transmiten luego al backend. En sistemas de alta carga, no se escriben directamente en bases de datos ni se pasan inmediatamente a los modelos de ML. Primero, se enrutan a través de intermediarios de mensajes como Kafka o RabbitMQ. Esto es necesario para suavizar los picos de tráfico, por ejemplo, durante ataques de bots a gran escala o aumentos naturales de usuarios reales durante ventas o promociones. En este punto, finaliza la responsabilidad del lado del cliente.
Ingeniería de variables y modelos de ML
Así pues, los lotes de datos sin procesar han llegado al servidor. ¿Qué sucede después?
Si simplemente introduce esta matriz de píxeles en un modelo de ML, este no aprenderá a distinguir a los humanos de los bots. Se limitará a memorizar dónde están ubicados los botones en su sitio web y fallará tan pronto como el diseño cambie ligeramente. Los modelos de aprendizaje automático no necesitan la geografía de la pantalla, necesitan abstracciones de comportamiento.
Por eso hay una capa de microservicios dedicada llamada ingeniería de variables ubicada entre la cola de mensajes y las redes neuronales. Se trata de pipelines normalmente construidos sobre Pandas y NumPy que agregan registros y los transforman en datos adecuados para los modelos de ML. Calculan:
Distancias euclidianas entre puntos;
deltas de tiempo;
velocidades instantáneas;
ángulos de giro de la trayectoria.
Basándose en estos cálculos, el sistema antifraude construye un perfil complejo de variables de comportamiento:
Teclado: vectores de retraso (
dwell timeyflight time), junto con su mediana, varianza y desviación estándar. En otras palabras, qué tan constante es el ritmo de escritura.Ratón: estadísticas sobre velocidad y aceleración, el número de micropausas y la entropía espectral de la trayectoria. Esta métrica muestra si el movimiento parece caótico (como el de un humano) o matemáticamente perfecto (como el de un script).
Pantalla táctil: gradientes de presión y cambios en el área de contacto durante un deslizamiento (en los casos en que la API del navegador o del sistema operativo comparta dichos datos).
Variables cognitivas:
idle timey retrasos antes de enfocarse en los elementos objetivo. Por ejemplo, una pausa antes de hacer clic en el botón "Pagar" mientras un usuario verifica mentalmente el importe.
Cientos de estos parámetros se extraen de una sola sesión, se despojan del contexto específico del diseño y luego se pasan a los modelos de ML.
Algoritmos clásicos de ML (Random Forest, SVM, Gradient Boosting)
Estos funcionan excepcionalmente bien con variables estadísticas agregadas. Operan rápidamente, consumen recursos mínimos del servidor y se utilizan típicamente como la primera y más rápida línea de defensa.
Básicamente, ejecutan todo el vector de estadísticas de la sesión (velocidad de acción, varianza del tiempo, entropía, etc.) a través de un sistema de umbrales matemáticos cuidadosamente calibrados, filtrando instantáneamente anomalías obvias como varianza cero en la aceleración del cursor o intervalos de clic extrañamente constantes.
Redes neuronales (LSTM, GRU y 1D-CNN)
Mientras que los algoritmos clásicos se centran en la imagen estadística general, las redes neuronales recurrentes analizan la secuencia real de los movimientos del cursor a lo largo del tiempo.
Las redes recurrentes están diseñadas para procesar datos secuenciales (texto, habla, series temporales), donde el contexto de los elementos anteriores es importante. A diferencia de las redes tradicionales, las arquitecturas recurrentes tienen "memoria" a través de bucles de retroalimentación, lo que les permite tener en cuenta la información de los pasos anteriores. Como resultado, pueden detectar patrones y ritmos poco naturales que quedan ocultos por las medias estadísticas ordinarias.
Autoencoders y detección de anomalías
El mayor desafío para los sistemas antifraude es que los desarrolladores de bots inventan constantemente nuevas técnicas de suplantación de identidad. Entrenar un modelo en cada bot existente es imposible, pero hay millones de sesiones generadas por humanos reales. Por eso se utiliza ampliamente el aprendizaje no supervisado, en particular los autoencoders.
Un autoencoder es una red neuronal entrenada exclusivamente en el comportamiento humano. Funciona como un filtro especializado: toma los parámetros de la sesión como entrada, los comprime matemáticamente en una representación compacta y luego intenta reconstruir los datos originales.
Debido a que esta red solo ha visto sesiones humanas reales, ha aprendido la física del movimiento humano con una precisión casi perfecta y puede reconstruir tales datos casi sin fallos. Pero si el comportamiento de un bot no visto anteriormente, por sofisticado que sea, se introduce en el modelo, la red intentará aplicarle las reglas de compresión humana. Como resultado, la etapa de reconstrucción producirá un resultado inexacto.
Cuando hay una gran discrepancia entre los datos originales y lo que la red logró reconstruir, esto se convierte en un error de reconstrucción. Cuanto mayor sea el error, mayor será la puntuación de riesgo, lo que indica un comportamiento anómalo.
Comprobaciones de método único frente a sistemas híbridos
Depender de un solo tipo de verificación es ineficaz, razón por la cual nadie utiliza un único modelo. En la mayoría de los casos, la arquitectura se construye en cascada: los algoritmos ligeros de ML pueden filtrar instantáneamente hasta el 90 % de los scripts y bots simples, mientras que las redes neuronales más pesadas se activan únicamente para los casos límite en los que las comprobaciones anteriores han arrojado resultados inciertos. Este enfoque reduce significativamente los costes informáticos.
Desviación de variables y adaptación
El comportamiento humano real puede cambiar con el tiempo, al igual que la huella digital de su dispositivo. Un usuario puede comprar un ratón nuevo con diferentes ajustes de DPI, cambiar de un ordenador de sobremesa a un portátil con touchpad, lesionarse la mano, beber un espresso doble o simplemente cansarse al final de la jornada laboral. Todo esto cambia instantáneamente su ritmo de escritura, su control motor fino y su velocidad de reacción.
Si un modelo antifraude es estático y se basa en un perfil de referencia recopilado hace años, inevitablemente comenzará a bloquear a usuarios legítimos. El porcentaje de falsos positivos aumentará, las tasas de conversión disminuirán y las empresas perderán tanto ingresos como la fidelidad de sus clientes.
Como resultado, los sistemas antifraude deben evolucionar continuamente junto con los usuarios y adaptarse a las condiciones cambiantes.
Entrenamiento de redes neuronales en tiempo real
A diferencia del entrenamiento tradicional por lotes, donde un modelo se vuelve a entrenar una vez al mes con un conjunto de datos acumulado masivo, el aprendizaje en línea permite que el algoritmo ajuste sus pesos continuamente en tiempo real. Tan pronto como finaliza una sesión válida—confirmada, por ejemplo, mediante una compra o una verificación exitosa de 2FA—sus variables modifican sutilmente los umbrales de decisión del modelo. Esto tiene en cuenta a la perfección los cambios graduales en los hábitos de los usuarios.
Ventana de memoria deslizante
Los algoritmos también se basan en el principio de ventana de memoria deslizante: los datos nuevos de la sesión se añaden constantemente al perfil de comportamiento de referencia y se les asigna el mayor peso matemático. Los registros más antiguos pierden gradualmente influencia hasta que su contribución se aproxima a cero. El sistema siempre compara el comportamiento actual con cómo se ha comportado el usuario durante las últimas semanas, no con el momento en que se creó la cuenta hace años.
Monitoreo estadístico
Pero, ¿cómo distingue el sistema entre un cambio legítimo, como la compra de un ratón nuevo, y una suplantación repentina de sesión por parte de un bot sofisticado? Para este propósito, se aplica un estricto monitoreo estadístico, que incluye:
Análisis de Componentes Principales (PCA). Este método proyecta docenas de variables en un espacio 2D o 3D y realiza un seguimiento de la desviación del clúster. Si las nuevas sesiones se desvían repentinamente del núcleo de comportamiento histórico del usuario, el sistema detecta la desviación.

Pruebas estadísticas (como la prueba de Kolmogorov–Smirnov). El algoritmo compara continuamente la distribución de los nuevos datos con la distribución de referencia. Si se detecta una divergencia entre las dos muestras, el sistema disminuye temporalmente la confianza en el perfil. En esta etapa, al usuario no se le banea, sino que se le solicita que complete un CAPTCHA. Si la verificación se supera con éxito, el modelo interpreta la desviación como legítima—por ejemplo, un cambio a un nuevo dispositivo—y actualiza el perfil de referencia en consecuencia.
Emulación del comportamiento humano
Ahora que entendemos cómo funcionan los algoritmos antifraude, descubramos cómo entrenar a un bot para que se comporte como un humano.
Simplemente suavizar el movimiento del cursor con curvas de Bézier o agregar llamadas a time.sleep() ya no es suficiente: los modelos de ML pueden detectar la automatización en solo unos pocos clics. Para que un emulador se parezca realmente a un humano, debe incorporar las leyes de la fisiología y la biomecánica.
Inyección de jitter
Si le indica a un script que realice pausas aleatorias de 80 a 120 milisegundos, generará retrasos de 80 ms, 120 ms y 95 ms con aproximadamente la misma frecuencia.
Los humanos no escriben así. Cada uno de nosotros tiene un ritmo natural y cómodo en el que caemos la mayor parte del tiempo. Ocasionalmente, nuestros dedos se aceleran o se ralentizan ligeramente. Es por eso que los retrasos deben generarse de acuerdo con una distribución gaussiana (una curva de campana). La abrumadora mayoría de las pausas de un bot deberían agruparse en torno a una única velocidad de referencia, mientras que solo unas pocas desviaciones deberían diferir significativamente en cualquier dirección.

Emulación del temblor
Imagine que intenta hacer clic rápidamente en una casilla de verificación diminuta. Mueve el ratón abruptamente, se pasa del objetivo por un par de píxeles, se da cuenta del error y vuelve a colocar el cursor en su sitio.
Para imitar este efecto y el temblor natural de la mano humana, los desarrolladores mezclan funciones matemáticas (ondas de seno y coseno) en la trayectoria ideal del cursor. Esto crea un micro-ruido realista capaz de engañar a los sistemas antifraude.
Macropausas
Una de las técnicas más avanzadas y raramente implementadas es la introducción de macropausas que imitan los ciclos fisiológicos. Los humanos no trabajan de forma continua frente al ordenador. Parpadeamos, perdiendo temporalmente el contacto visual con la pantalla, inspiramos y espiramos, miramos hacia abajo al teclado o nos distraemos con nuestros teléfonos.
Por lo tanto, un emulador debe incluir una lógica de "pérdida de enfoque": retrasos artificiales periódicos de 1 a 3 segundos antes de acciones importantes, que rompan la monotonía propia de una máquina.
Copiado de comportamiento
¿Por qué escribir complicados modelos matemáticos desde cero para generar el movimiento de desplazamiento perfecto con desaceleración natural y microtirones cuando simplemente puede usar uno real? Este enfoque se llama combinación y lleva la emulación a un nivel completamente nuevo.
Los desarrolladores avanzados de bots crean sus propias bases de datos o adquieren otras ya listas. Estos conjuntos de datos contienen sesiones reales de usuarios reales: cómo las personas se desplazan por los feeds, mueven el cursor mientras leen texto o desplazan inconscientemente el ratón mientras piensan. Estas grabaciones se almacenan como matrices que contienen vectores de movimiento y datos de micro-tiempo.
Cuando un script creado con esta tecnología necesita desplazarse por una página o mover un cursor hacia un formulario complejo, no utiliza window.scrollBy() ni curvas de Bézier. En su lugar, recupera de la base de datos un fragmento adecuado de un registro de interacción humana real. A continuación, la trayectoria se transforma: el script deforma matemáticamente esta "instantánea" para que se adapte a las coordenadas actuales del navegador. Los vectores se desplazan lo suficiente para que el cursor termine sobre el botón requerido, tras lo cual el control se devuelve sin problemas al bot para el clic final.
Los modelos de ML antifraude perciben estos movimientos como un ruido de alta frecuencia perfecto, un temblor totalmente natural y micropausas realistas. Como resultado, permiten que el script funcione porque los datos subyacentes se originaron genuinamente a partir de un ser humano real.
¿Cuál es el truco? Para que este método funcione a escala, el desarrollador del bot necesita una biblioteca verdaderamente masiva de "instantáneas" de comportamiento. Si el mismo fragmento de desplazamiento se reutiliza en múltiples bots, los sistemas antifraude del lado del servidor detectarán rápidamente el duplicado matemático (activando la protección básica contra ataques de repetición) y banearán a toda la granja.
La vulnerabilidad de los bucles
Por mucho que aleatorice los tiempos y agite el cursor, cada bot sufre de una debilidad congénita: vive dentro de un bucle programático (while o for).
Los sistemas de protección toman los tiempos de su script y los pasan a través de un análisis espectral (transformada de Fourier). Esto filtra el ruido aleatorio artificial y revela la frecuencia portadora oculta del bucle. Los humanos son arrítmicos por naturaleza; los bots no lo son.
¿Puede derrotar al análisis de Fourier y convencer al servidor de que su script es un humano vivo sin una frecuencia base detectable? Sí, pero hacerlo requiere reescribir toda la arquitectura de su scraper. Un simple Math.random() está muy lejos de ser suficiente para esto.
Abandonar los bucles en favor de las máquinas de estados. No utilice bucles lineales
whileoforcombinados con llamadassleep()anidadas. Su bot debe funcionar como una máquina de estados finitos impulsada por eventos. Debe tener múltiples estados, por ejemplo, lectura, vacilación o inactividad, movimiento, clic. Las transiciones entre estos estados no deben estar rígidamente codificadas, sino determinarse probabilísticamente. Solo entonces el ritmo general de la sesión se volverá impredecible, como el de un humano que puede cambiar repentinamente de opinión antes de hacer clic en un botón.La matemática de las "colas pesadas". Olvídese de la aleatoriedad uniforme o incluso de las distribuciones gaussianas. La mayoría de sus pausas deberían ser cortas y estar muy agrupadas, pero el bot debería detenerse ocasionalmente durante un tiempo anormalmente largo con cierta probabilidad. Estos valores atípicos, raros pero extremos, son precisamente los que desbaratan el análisis de frecuencia de Fourier, distorsionando el espectro y ocultando el ritmo de la máquina.
Uso de la entropía del sistema operativo. Los generadores de números pseudoaleatorios integrados en JavaScript o Python tienen sus propios patrones predecibles. En su lugar, puede obtener entropía real directamente del sistema operativo, que recopila el caótico ruido de hardware, desde las fluctuaciones de temperatura de la CPU hasta las interrupciones de red.
Conclusión: la economía del scraping y el juego sin fin
La biométrica del comportamiento no se ha convertido en una solución mágica contra los bots. Sin embargo, ha cambiado fundamentalmente tanto las reglas del juego como la economía de la automatización.
Anteriormente, la creación de un scraper exitoso no requería mucho más que comprar un lote de proxies y comprender los encabezados del navegador. Hoy en día, los desarrolladores de automatización necesitan experiencia que se extienda a la biomecánica y las transformadas de Fourier. Por supuesto, esto se aplica a proyectos de gran envergadura, no simplemente a raspar fotos de Google Maps.
La carrera armamentista entre los sistemas antifraude y los desarrolladores de bots continúa, pero ahora en un nuevo campo de batalla: la imitación del sistema nervioso humano. Las soluciones antifraude seguirán introduciendo métodos de verificación cada vez más sofisticados, mientras que los scrapers aprenderán a "respirar" y a procrastinar de forma aún más convincente.
Manténgase en el anonimato, aproveche las ventajas de tener múltiples cuentas y logre sus objetivos con el navegador antidetección de mayor calidad del mercado.
¿Te gustaría probar Octo Browser con descuento?
Usa el código promocional OCTOSCRAPER para obtener un 30% de descuento en cualquier suscripción. Esta oferta solo es válida para nuevos usuarios.
Por qué los CAPTCHAs están dando paso al análisis del comportamiento
Anteriormente, el CAPTCHA era el principal mecanismo de defensa contra los bots. Los CAPTCHAs todavía existen hoy, aunque han cambiado significativamente. Se han vuelto más sofisticados, y algunas versiones invisibles modernas (como reCAPTCHA v3) han incorporado la misma biométrica del comportamiento que estamos discutiendo.
¿Por qué es esto necesario? Los CAPTCHAs tradicionales (semáforos y caracteres distorsionados) empeoran la experiencia del usuario y son resueltos cada vez más sin esfuerzo por redes neuronales entrenadas. El nuevo enfoque, que funciona sin elementos visibles, elimina gran parte de la carga de los usuarios y evita molestarlos.

La biométrica del comportamiento, como núcleo de este proceso de verificación invisible, ofrece una autenticación continua. Funciona analizando cómo interactúa exactamente un usuario con un dispositivo mientras se desplaza por una página o rellena un formulario, sin requerir ninguna acción adicional por su parte.
Sin embargo, debe hacerse una aclaración importante: la biométrica del comportamiento no se utiliza como un método de verificación independiente. Siempre funciona junto con otras comprobaciones. Además de la biométrica, los sistemas antifraude siguen analizando las huellas digitales, la reputación de la IP y las cookies.
Tipos de biométrica del comportamiento
Profundicemos más en la teoría. Los patrones de comportamiento son, en esencia, una huella digital de su sistema nervioso transferida a un dispositivo. Los sistemas antifraude avanzados no analizan los parámetros por separado. En su lugar, construyen un perfil multidimensional completo que puede dividirse en las siguientes categorías:
Interacción con el dispositivo (cinestesia)
Esta es la mayor capa de datos para la web tradicional y las aplicaciones móviles. Aquí, los sistemas analizan la física de los movimientos del usuario.
Teclado: no se trata de qué letras o números escribe. Los sistemas antifraude evalúan dos parámetros principales: cuánto tiempo se mantiene presionada una tecla (
dwell time) y cuánto tiempo se tarda en moverse entre teclas (flight time). Los humanos tienen memoria muscular; las combinaciones de teclas familiares (por ejemplo, las terminaciones de palabras comunes) se escriben en microrráfagas. Los bots, por su parte, insertan cadenas completas a la vez o imitan la escritura utilizando una lógica simple detime.sleep(random). Esto crea una distribución de retraso plana y poco natural. La aleatoriedad en sí misma se vuelve sospechosa.Ratón: análisis del cursor. El sistema registra las coordenadas y calcula la velocidad, la aceleración, la curvatura de la trayectoria y los tirones. Los humanos no mueven el ratón en líneas perfectamente rectas. Apuntamos a un botón, fallamos por unos pocos píxeles, realizamos pequeños movimientos correctivos y hacemos una breve pausa antes de hacer clic.

Pantalla táctil: específico para la web móvil y las aplicaciones nativas. Un deslizamiento humano es un arco con velocidad desigual, presión específica (si la API permite la detección de presión) y un área de contacto del dedo cambiante. Los bots que emulan eventos táctiles a través de scripts de Appium o JavaScript a menudo simplemente "teletransportan" las coordenadas de enfoque. Escribir las matemáticas adecuadas para un deslizamiento realista es más difícil, por lo que los operadores de bots a menudo toman atajos.
Patrones físicos (biomecánica)
Cuando un usuario accede a una plataforma desde un dispositivo móvil, entran en juego los sensores de hardware. Y dado que ahora vivimos en la era de los usuarios móviles, esto importa mucho.
Patrones de marcha y micromovimientos. ¿Se desplaza por su feed mientras camina, está sentado en una silla o acostado en un sofá? El acelerómetro y el giroscopio de un teléfono inteligente capturan constantemente las diminutas vibraciones del dispositivo. El teléfono de un usuario real siempre tiembla ligeramente en sus manos, incluso cuando intenta mantenerlo perfectamente quieto. Las granjas de bots y los emuladores que se ejecutan en servidores suelen tener por defecto un nivel de ruido de fondo de los sensores de cero, lo que da a los sistemas antifraude algo en lo que pensar y aumenta la puntuación de riesgo.
Patrones cognitivos (psicología de la interacción)
Aquí es donde los sistemas analizan cómo funciona el cerebro de un usuario mientras interactúa con una interfaz de usuario.
Velocidad de navegación y toma de decisiones. ¿Con qué rapidez encuentra un usuario el botón requerido? ¿Lee el texto antes de marcar una casilla de verificación? Las personas a menudo mueven el cursor sobre el texto mientras leen, de manera similar a seguir las líneas de un libro con un dedo, o hacen pausas en formularios complicados. Algunos usuarios incluso seleccionan el texto. Un script de scraping, por el contrario, no tiene dudas: conoce la estructura DOM a la perfección y activa el evento requerido exactamente después de un tiempo de espera predefinido, ignorando por completo la lógica de la búsqueda visual.
Juntos, estos tres niveles crean un perfil tan complejo que replicarlo por completo simplemente agregando retrasos aleatorios al código de Selenium o Puppeteer resulta matemáticamente imposible.
Recopilación de datos y procesamiento previo
Las fuentes principales para recopilar datos biométricos son los eventos mousemove, keydown, keyup, touchstart y touchend, así como la DeviceOrientation API para capturar las lecturas del acelerómetro y del giroscopio.
La parte más difícil en esta etapa es manejar el enorme volumen de datos fragmentados y asíncronos. Un solo evento mousemove por sí solo puede activarse cientos de veces por segundo. Si cada movimiento del cursor activara directamente un procesamiento en el backend o cálculos pesados en el lado del cliente, el sistema antifraude congelaría instantáneamente la interfaz de usuario y causaría un retraso notable en el sitio web del cliente. Ningún negocio aceptaría eso.
Es por eso que los scripts de recopilación del lado del cliente están diseñados para ser tan livianos y simples como sea posible. Su única tarea es capturar rápidamente las coordenadas, adjuntar marcas de tiempo precisas, almacenar todo en un búfer local y enviar los datos al servidor en un lote.

Estos lotes de objetos Json se transmiten luego al backend. En sistemas de alta carga, no se escriben directamente en bases de datos ni se pasan inmediatamente a los modelos de ML. Primero, se enrutan a través de intermediarios de mensajes como Kafka o RabbitMQ. Esto es necesario para suavizar los picos de tráfico, por ejemplo, durante ataques de bots a gran escala o aumentos naturales de usuarios reales durante ventas o promociones. En este punto, finaliza la responsabilidad del lado del cliente.
Ingeniería de variables y modelos de ML
Así pues, los lotes de datos sin procesar han llegado al servidor. ¿Qué sucede después?
Si simplemente introduce esta matriz de píxeles en un modelo de ML, este no aprenderá a distinguir a los humanos de los bots. Se limitará a memorizar dónde están ubicados los botones en su sitio web y fallará tan pronto como el diseño cambie ligeramente. Los modelos de aprendizaje automático no necesitan la geografía de la pantalla, necesitan abstracciones de comportamiento.
Por eso hay una capa de microservicios dedicada llamada ingeniería de variables ubicada entre la cola de mensajes y las redes neuronales. Se trata de pipelines normalmente construidos sobre Pandas y NumPy que agregan registros y los transforman en datos adecuados para los modelos de ML. Calculan:
Distancias euclidianas entre puntos;
deltas de tiempo;
velocidades instantáneas;
ángulos de giro de la trayectoria.
Basándose en estos cálculos, el sistema antifraude construye un perfil complejo de variables de comportamiento:
Teclado: vectores de retraso (
dwell timeyflight time), junto con su mediana, varianza y desviación estándar. En otras palabras, qué tan constante es el ritmo de escritura.Ratón: estadísticas sobre velocidad y aceleración, el número de micropausas y la entropía espectral de la trayectoria. Esta métrica muestra si el movimiento parece caótico (como el de un humano) o matemáticamente perfecto (como el de un script).
Pantalla táctil: gradientes de presión y cambios en el área de contacto durante un deslizamiento (en los casos en que la API del navegador o del sistema operativo comparta dichos datos).
Variables cognitivas:
idle timey retrasos antes de enfocarse en los elementos objetivo. Por ejemplo, una pausa antes de hacer clic en el botón "Pagar" mientras un usuario verifica mentalmente el importe.
Cientos de estos parámetros se extraen de una sola sesión, se despojan del contexto específico del diseño y luego se pasan a los modelos de ML.
Algoritmos clásicos de ML (Random Forest, SVM, Gradient Boosting)
Estos funcionan excepcionalmente bien con variables estadísticas agregadas. Operan rápidamente, consumen recursos mínimos del servidor y se utilizan típicamente como la primera y más rápida línea de defensa.
Básicamente, ejecutan todo el vector de estadísticas de la sesión (velocidad de acción, varianza del tiempo, entropía, etc.) a través de un sistema de umbrales matemáticos cuidadosamente calibrados, filtrando instantáneamente anomalías obvias como varianza cero en la aceleración del cursor o intervalos de clic extrañamente constantes.
Redes neuronales (LSTM, GRU y 1D-CNN)
Mientras que los algoritmos clásicos se centran en la imagen estadística general, las redes neuronales recurrentes analizan la secuencia real de los movimientos del cursor a lo largo del tiempo.
Las redes recurrentes están diseñadas para procesar datos secuenciales (texto, habla, series temporales), donde el contexto de los elementos anteriores es importante. A diferencia de las redes tradicionales, las arquitecturas recurrentes tienen "memoria" a través de bucles de retroalimentación, lo que les permite tener en cuenta la información de los pasos anteriores. Como resultado, pueden detectar patrones y ritmos poco naturales que quedan ocultos por las medias estadísticas ordinarias.
Autoencoders y detección de anomalías
El mayor desafío para los sistemas antifraude es que los desarrolladores de bots inventan constantemente nuevas técnicas de suplantación de identidad. Entrenar un modelo en cada bot existente es imposible, pero hay millones de sesiones generadas por humanos reales. Por eso se utiliza ampliamente el aprendizaje no supervisado, en particular los autoencoders.
Un autoencoder es una red neuronal entrenada exclusivamente en el comportamiento humano. Funciona como un filtro especializado: toma los parámetros de la sesión como entrada, los comprime matemáticamente en una representación compacta y luego intenta reconstruir los datos originales.
Debido a que esta red solo ha visto sesiones humanas reales, ha aprendido la física del movimiento humano con una precisión casi perfecta y puede reconstruir tales datos casi sin fallos. Pero si el comportamiento de un bot no visto anteriormente, por sofisticado que sea, se introduce en el modelo, la red intentará aplicarle las reglas de compresión humana. Como resultado, la etapa de reconstrucción producirá un resultado inexacto.
Cuando hay una gran discrepancia entre los datos originales y lo que la red logró reconstruir, esto se convierte en un error de reconstrucción. Cuanto mayor sea el error, mayor será la puntuación de riesgo, lo que indica un comportamiento anómalo.
Comprobaciones de método único frente a sistemas híbridos
Depender de un solo tipo de verificación es ineficaz, razón por la cual nadie utiliza un único modelo. En la mayoría de los casos, la arquitectura se construye en cascada: los algoritmos ligeros de ML pueden filtrar instantáneamente hasta el 90 % de los scripts y bots simples, mientras que las redes neuronales más pesadas se activan únicamente para los casos límite en los que las comprobaciones anteriores han arrojado resultados inciertos. Este enfoque reduce significativamente los costes informáticos.
Desviación de variables y adaptación
El comportamiento humano real puede cambiar con el tiempo, al igual que la huella digital de su dispositivo. Un usuario puede comprar un ratón nuevo con diferentes ajustes de DPI, cambiar de un ordenador de sobremesa a un portátil con touchpad, lesionarse la mano, beber un espresso doble o simplemente cansarse al final de la jornada laboral. Todo esto cambia instantáneamente su ritmo de escritura, su control motor fino y su velocidad de reacción.
Si un modelo antifraude es estático y se basa en un perfil de referencia recopilado hace años, inevitablemente comenzará a bloquear a usuarios legítimos. El porcentaje de falsos positivos aumentará, las tasas de conversión disminuirán y las empresas perderán tanto ingresos como la fidelidad de sus clientes.
Como resultado, los sistemas antifraude deben evolucionar continuamente junto con los usuarios y adaptarse a las condiciones cambiantes.
Entrenamiento de redes neuronales en tiempo real
A diferencia del entrenamiento tradicional por lotes, donde un modelo se vuelve a entrenar una vez al mes con un conjunto de datos acumulado masivo, el aprendizaje en línea permite que el algoritmo ajuste sus pesos continuamente en tiempo real. Tan pronto como finaliza una sesión válida—confirmada, por ejemplo, mediante una compra o una verificación exitosa de 2FA—sus variables modifican sutilmente los umbrales de decisión del modelo. Esto tiene en cuenta a la perfección los cambios graduales en los hábitos de los usuarios.
Ventana de memoria deslizante
Los algoritmos también se basan en el principio de ventana de memoria deslizante: los datos nuevos de la sesión se añaden constantemente al perfil de comportamiento de referencia y se les asigna el mayor peso matemático. Los registros más antiguos pierden gradualmente influencia hasta que su contribución se aproxima a cero. El sistema siempre compara el comportamiento actual con cómo se ha comportado el usuario durante las últimas semanas, no con el momento en que se creó la cuenta hace años.
Monitoreo estadístico
Pero, ¿cómo distingue el sistema entre un cambio legítimo, como la compra de un ratón nuevo, y una suplantación repentina de sesión por parte de un bot sofisticado? Para este propósito, se aplica un estricto monitoreo estadístico, que incluye:
Análisis de Componentes Principales (PCA). Este método proyecta docenas de variables en un espacio 2D o 3D y realiza un seguimiento de la desviación del clúster. Si las nuevas sesiones se desvían repentinamente del núcleo de comportamiento histórico del usuario, el sistema detecta la desviación.

Pruebas estadísticas (como la prueba de Kolmogorov–Smirnov). El algoritmo compara continuamente la distribución de los nuevos datos con la distribución de referencia. Si se detecta una divergencia entre las dos muestras, el sistema disminuye temporalmente la confianza en el perfil. En esta etapa, al usuario no se le banea, sino que se le solicita que complete un CAPTCHA. Si la verificación se supera con éxito, el modelo interpreta la desviación como legítima—por ejemplo, un cambio a un nuevo dispositivo—y actualiza el perfil de referencia en consecuencia.
Emulación del comportamiento humano
Ahora que entendemos cómo funcionan los algoritmos antifraude, descubramos cómo entrenar a un bot para que se comporte como un humano.
Simplemente suavizar el movimiento del cursor con curvas de Bézier o agregar llamadas a time.sleep() ya no es suficiente: los modelos de ML pueden detectar la automatización en solo unos pocos clics. Para que un emulador se parezca realmente a un humano, debe incorporar las leyes de la fisiología y la biomecánica.
Inyección de jitter
Si le indica a un script que realice pausas aleatorias de 80 a 120 milisegundos, generará retrasos de 80 ms, 120 ms y 95 ms con aproximadamente la misma frecuencia.
Los humanos no escriben así. Cada uno de nosotros tiene un ritmo natural y cómodo en el que caemos la mayor parte del tiempo. Ocasionalmente, nuestros dedos se aceleran o se ralentizan ligeramente. Es por eso que los retrasos deben generarse de acuerdo con una distribución gaussiana (una curva de campana). La abrumadora mayoría de las pausas de un bot deberían agruparse en torno a una única velocidad de referencia, mientras que solo unas pocas desviaciones deberían diferir significativamente en cualquier dirección.

Emulación del temblor
Imagine que intenta hacer clic rápidamente en una casilla de verificación diminuta. Mueve el ratón abruptamente, se pasa del objetivo por un par de píxeles, se da cuenta del error y vuelve a colocar el cursor en su sitio.
Para imitar este efecto y el temblor natural de la mano humana, los desarrolladores mezclan funciones matemáticas (ondas de seno y coseno) en la trayectoria ideal del cursor. Esto crea un micro-ruido realista capaz de engañar a los sistemas antifraude.
Macropausas
Una de las técnicas más avanzadas y raramente implementadas es la introducción de macropausas que imitan los ciclos fisiológicos. Los humanos no trabajan de forma continua frente al ordenador. Parpadeamos, perdiendo temporalmente el contacto visual con la pantalla, inspiramos y espiramos, miramos hacia abajo al teclado o nos distraemos con nuestros teléfonos.
Por lo tanto, un emulador debe incluir una lógica de "pérdida de enfoque": retrasos artificiales periódicos de 1 a 3 segundos antes de acciones importantes, que rompan la monotonía propia de una máquina.
Copiado de comportamiento
¿Por qué escribir complicados modelos matemáticos desde cero para generar el movimiento de desplazamiento perfecto con desaceleración natural y microtirones cuando simplemente puede usar uno real? Este enfoque se llama combinación y lleva la emulación a un nivel completamente nuevo.
Los desarrolladores avanzados de bots crean sus propias bases de datos o adquieren otras ya listas. Estos conjuntos de datos contienen sesiones reales de usuarios reales: cómo las personas se desplazan por los feeds, mueven el cursor mientras leen texto o desplazan inconscientemente el ratón mientras piensan. Estas grabaciones se almacenan como matrices que contienen vectores de movimiento y datos de micro-tiempo.
Cuando un script creado con esta tecnología necesita desplazarse por una página o mover un cursor hacia un formulario complejo, no utiliza window.scrollBy() ni curvas de Bézier. En su lugar, recupera de la base de datos un fragmento adecuado de un registro de interacción humana real. A continuación, la trayectoria se transforma: el script deforma matemáticamente esta "instantánea" para que se adapte a las coordenadas actuales del navegador. Los vectores se desplazan lo suficiente para que el cursor termine sobre el botón requerido, tras lo cual el control se devuelve sin problemas al bot para el clic final.
Los modelos de ML antifraude perciben estos movimientos como un ruido de alta frecuencia perfecto, un temblor totalmente natural y micropausas realistas. Como resultado, permiten que el script funcione porque los datos subyacentes se originaron genuinamente a partir de un ser humano real.
¿Cuál es el truco? Para que este método funcione a escala, el desarrollador del bot necesita una biblioteca verdaderamente masiva de "instantáneas" de comportamiento. Si el mismo fragmento de desplazamiento se reutiliza en múltiples bots, los sistemas antifraude del lado del servidor detectarán rápidamente el duplicado matemático (activando la protección básica contra ataques de repetición) y banearán a toda la granja.
La vulnerabilidad de los bucles
Por mucho que aleatorice los tiempos y agite el cursor, cada bot sufre de una debilidad congénita: vive dentro de un bucle programático (while o for).
Los sistemas de protección toman los tiempos de su script y los pasan a través de un análisis espectral (transformada de Fourier). Esto filtra el ruido aleatorio artificial y revela la frecuencia portadora oculta del bucle. Los humanos son arrítmicos por naturaleza; los bots no lo son.
¿Puede derrotar al análisis de Fourier y convencer al servidor de que su script es un humano vivo sin una frecuencia base detectable? Sí, pero hacerlo requiere reescribir toda la arquitectura de su scraper. Un simple Math.random() está muy lejos de ser suficiente para esto.
Abandonar los bucles en favor de las máquinas de estados. No utilice bucles lineales
whileoforcombinados con llamadassleep()anidadas. Su bot debe funcionar como una máquina de estados finitos impulsada por eventos. Debe tener múltiples estados, por ejemplo, lectura, vacilación o inactividad, movimiento, clic. Las transiciones entre estos estados no deben estar rígidamente codificadas, sino determinarse probabilísticamente. Solo entonces el ritmo general de la sesión se volverá impredecible, como el de un humano que puede cambiar repentinamente de opinión antes de hacer clic en un botón.La matemática de las "colas pesadas". Olvídese de la aleatoriedad uniforme o incluso de las distribuciones gaussianas. La mayoría de sus pausas deberían ser cortas y estar muy agrupadas, pero el bot debería detenerse ocasionalmente durante un tiempo anormalmente largo con cierta probabilidad. Estos valores atípicos, raros pero extremos, son precisamente los que desbaratan el análisis de frecuencia de Fourier, distorsionando el espectro y ocultando el ritmo de la máquina.
Uso de la entropía del sistema operativo. Los generadores de números pseudoaleatorios integrados en JavaScript o Python tienen sus propios patrones predecibles. En su lugar, puede obtener entropía real directamente del sistema operativo, que recopila el caótico ruido de hardware, desde las fluctuaciones de temperatura de la CPU hasta las interrupciones de red.
Conclusión: la economía del scraping y el juego sin fin
La biométrica del comportamiento no se ha convertido en una solución mágica contra los bots. Sin embargo, ha cambiado fundamentalmente tanto las reglas del juego como la economía de la automatización.
Anteriormente, la creación de un scraper exitoso no requería mucho más que comprar un lote de proxies y comprender los encabezados del navegador. Hoy en día, los desarrolladores de automatización necesitan experiencia que se extienda a la biomecánica y las transformadas de Fourier. Por supuesto, esto se aplica a proyectos de gran envergadura, no simplemente a raspar fotos de Google Maps.
La carrera armamentista entre los sistemas antifraude y los desarrolladores de bots continúa, pero ahora en un nuevo campo de batalla: la imitación del sistema nervioso humano. Las soluciones antifraude seguirán introduciendo métodos de verificación cada vez más sofisticados, mientras que los scrapers aprenderán a "respirar" y a procrastinar de forma aún más convincente.
Mantente al día de las últimas noticias sobre Octo Browser
Al hacer clic en el botón, aceptas nuestra Política de privacidad.
Mantente al día de las últimas noticias sobre Octo Browser
Al hacer clic en el botón, aceptas nuestra Política de privacidad.
Mantente al día de las últimas noticias sobre Octo Browser
Al hacer clic en el botón, aceptas nuestra Política de privacidad.

Únete a Octo Browser ahora
O contacta al servicio al cliente en cualquier momento si tienes alguna pregunta.

Únete a Octo Browser ahora
O contacta al servicio al cliente en cualquier momento si tienes alguna pregunta.
Únete a Octo Browser ahora
O contacta al servicio al cliente en cualquier momento si tienes alguna pregunta.