paint-brush
Introducción a las huellas digitales: comprensión, manipulación y defensa contra el seguimiento en líneapor@shad0wpuppet
27,086 lecturas
27,086 lecturas

Introducción a las huellas digitales: comprensión, manipulación y defensa contra el seguimiento en línea

por Konstantin Sakhchinskiy10m2024/01/19
Read on Terminal Reader
Read this story w/o Javascript

Demasiado Largo; Para Leer

La toma de huellas digitales es una técnica que identifica a los usuarios basándose en características únicas del dispositivo y del navegador, crucial para la seguridad en línea. Este artículo proporciona una descripción general de los parámetros de huellas dactilares, su manipulación y estrategias para navegar en la web de incógnito. Analiza herramientas como navegadores, extensiones y VPN centrados en la privacidad. Se exploran las motivaciones para la suplantación de huellas dactilares, la recopilación de huellas dactilares de los usuarios y el papel de los sistemas de detección de bots. Se describen ejemplos de pasos adicionales de verificación de sitios web, enfatizando la importancia de la suplantación de identidad para la privacidad y la seguridad. El artículo concluye que la suplantación de identidad, es decir, presentar un usuario único y legítimo, es preferible a simplemente ocultar las huellas dactilares para mejorar la credibilidad y la confianza en línea.

People Mentioned

Mention Thumbnail
featured image - Introducción a las huellas digitales: comprensión, manipulación y defensa contra el seguimiento en línea
Konstantin Sakhchinskiy HackerNoon profile picture
0-item

Descripción general

La toma de huellas digitales es una técnica utilizada para identificar a los usuarios en diferentes sitios web en función de las características únicas de su dispositivo y navegador. Estas características (parámetros de huellas dactilares) pueden incluir varios software, hardware (CPU, RAM, GPU, dispositivos multimedia: cámaras, micrófonos, parlantes), ubicación, zona horaria, IP, tamaño/resolución de pantalla, idiomas del navegador/sistema operativo, red, proveedor de Internet. -atributos relacionados y otros.


La combinación de estos parámetros crea un identificador único, la huella digital, que puede usarse para rastrear la actividad en línea de un usuario. Las huellas dactilares desempeñan un papel crucial en la seguridad en línea, ya que permiten que los servicios identifiquen y autentiquen a usuarios únicos. También permiten a los usuarios engañar a dichos sistemas para que permanezcan en el anonimato en línea. Sin embargo, si puede manipular sus huellas digitales, puede ejecutar decenas, cientos o más cuentas diferentes para pretender que son usuarios únicos y auténticos. Si bien esto puede parecer interesante, tiene serias implicaciones, ya que puede hacer posible la creación de un ejército de robots que pueden difundir spam y falsificaciones por todo Internet, lo que podría resultar en acciones fraudulentas.


Nota: Obviamente, no discutiré aquí cómo se pueden hacer cosas "malas"; siempre debes tener cuidado, mantenerte alejado del “lado oscuro” y evitar cometer acciones ilegales. Este artículo trata sobre la tecnología detrás de esto, así que utilice la información con prudencia.


Este es el primer artículo (y tal vez no el último) en este dominio, por lo que será más bien una descripción general. El contenido ofrece una introducción al tema. Hay docenas de herramientas y formas de detectar, recopilar y falsificar huellas dactilares, y hay muchos parámetros y tecnologías diferentes que pueden revelar u ocultar su identidad real o el hecho de que está falsificando huellas dactilares (lo que significa que no es un usuario auténtico). ).


Parámetros en huellas digitales

Consideremos algunos de ellos, algunos ejemplos de parámetros obvios, simples o bien conocidos, algunos que son más raros, menos conocidos y difíciles de falsificar.


  • User-Agent: esta cadena proporciona información sobre el navegador, el sistema operativo y el dispositivo del usuario.
  • IP: revela la red y geolocalización del usuario. Los servicios utilizan direcciones IP por motivos de seguridad y para evitar actividades maliciosas. Si usa una cuenta de diferentes IP o muchas cuentas diferentes de la misma IP, algunos servicios pueden considerar esta actividad (en combinación con otros parámetros) como sospechosa y usar algún nivel de protección contra bots en su contra. Esto también puede activarse si utiliza IP que ya están en uso o en algún tipo de lista prohibida (proxies).
  • Complementos y extensiones del navegador: la información sobre los complementos y extensiones instalados se puede utilizar para crear una huella digital única; ayuda a identificar a los usuarios en función de las funcionalidades adicionales de su navegador.
  • Resolución de pantalla y profundidad de color: diferentes usuarios suelen tener diferentes características de visualización.
  • Configuración de zona horaria e idioma: son factores importantes en la toma de huellas digitales; si tiene valores aleatorios, por ejemplo, zona horaria de Japón y idioma noruego, esto es un poco inusual.
  • Canvas: implica representar gráficos ocultos en el navegador del usuario para recopilar información sobre el hardware de gráficos. Es bastante complicado porque si falsificas la información de tu hardware, entonces no podrás tener el valor de lienzo adecuado: no podrás renderizarlo en tu hardware real diferente.
  • WebGL Fingerprinting: explota las capacidades y limitaciones únicas del hardware de gráficos del usuario al representar gráficos 3D: información adicional sobre el dispositivo del usuario.
  • Fuentes: la lista de fuentes instaladas en el sistema de un usuario se puede utilizar como parámetro de toma de huellas digitales. Esta información es accesible a través de JavaScript. La lista de fuentes tiene que ser realista; por ejemplo, no puedes tener fuentes Win en macOS o no puedes tener solo 1 o 2 fuentes, este es un indicador muy sospechoso.
  • API de estado de la batería: permite a los sitios web determinar el nivel de la batería del dispositivo y el estado de carga; la combinación de atributos de la batería se puede utilizar para tomar huellas digitales.
  • Huellas digitales de audio: los sitios web pueden utilizar la API de audio web para generar huellas digitales de audio únicas mediante el análisis de las características de procesamiento de audio del dispositivo.
  • Simultaneidad de hardware: esta información incluye detalles sobre los componentes de software y hardware del dispositivo, como la tarjeta gráfica, el adaptador de red y el sistema operativo. Esto se suma a la singularidad de la huella digital.
  • Información de red: esta información incluye detalles sobre la conexión de red, como la dirección IP, el ISP y el servidor DNS.
  • Puertos abiertos y usados: algunos usuarios pueden usar algún software que escuche puertos específicos que también pueden ser útiles para algunos casos específicos.



Navegando por la Web de incógnito

La manipulación de huellas digitales es una tarea difícil que exige un enfoque proactivo para evitar la detección. Existen muchas estrategias y herramientas para ocultar tu identidad (huellas dactilares) o fingir que eres otra persona.

Utilice navegadores centrados en la privacidad

Optar por navegadores centrados en la privacidad, como Brave, Ghostery, Tor, Octo Browser o Vivaldi con configuraciones de privacidad mejoradas, proporciona una defensa fundamental contra las técnicas comunes de toma de huellas digitales. Estos navegadores priorizan la privacidad del usuario e incorporan funciones diseñadas para ocultar sus huellas digitales reales, lo que dificulta el seguimiento de sus actividades. Por ejemplo, el navegador Tor, basado en principios de anonimato, dirige el tráfico de Internet a través de la red Tor. Este enrutamiento estratégico oscurece la identidad del usuario al hacer rebotar las conexiones a través de una serie de servidores operados por voluntarios, lo que mejora el anonimato general en línea.

Extensiones del navegador

Las extensiones de navegador centradas en la privacidad, incluidas AdBlock, uBlock Origin, Privacy Badger o CanvasBlocker, podrían ser defensas activas contra scripts de seguimiento, cookies e intentos de toma de huellas digitales. Estas herramientas funcionan en segundo plano, protegiendo y preservando el anonimato del usuario.

VPN y servidores proxy

El uso de VPN o servicios proxy agrega una capa adicional de protección al enmascarar las IP reales del usuario (ubicación, zona horaria, idioma, etc.) y cifrar el tráfico de Internet. Esto no sólo se utiliza para cambiar sus huellas digitales, sino también para brindar una presencia en línea más anónima y un mayor nivel de seguridad.


Motivaciones detrás de la suplantación de huellas dactilares

Comprender los porqués

Privacidad: las personas preocupadas por la privacidad personal y la creciente vigilancia digital a menudo falsifican sus huellas dactilares para protegerse del implacable seguimiento en línea.

Restricción geográfica: la falsificación de huellas dactilares resulta útil para eludir las restricciones geográficas, lo que permite a los usuarios acceder a contenido restringido a regiones específicas. Los servicios VPN y proxy desempeñan un papel crucial aquí, no sólo ocultando la identidad del usuario sino también proporcionando acceso a servidores en diferentes ubicaciones geográficas.

Anuncios: evitar la publicidad dirigida y la elaboración de perfiles en línea sirve como motivo convincente para que las personas manipulen sus huellas digitales. Algunas herramientas pueden bloquear cookies y secuencias de comandos de seguimiento de terceros, lo que interrumpe el proceso de creación de perfiles.

Necesidades estratégicas en el ámbito digital, detección de bots y sistemas de protección: web scraping, multicuenta, comercio electrónico, bounty&airdrop, búsqueda de bonos, bots de redes sociales y marketing de afiliación son a menudo fuentes de ingresos o bases para medianas empresas. Las agencias digitales, las personas y las personas influyentes que participan en estas actividades pueden requerir la suplantación de huellas dactilares para navegar a través de complicados sistemas de detección de bots. Evitar la detección se vuelve vital para algunos servicios, asegurando que las actividades legítimas no sean marcadas o restringidas por error (aunque muy a menudo, dichas actividades y cuentas no son realmente legítimas, sino que fingen serlo). Algunas de las herramientas más populares son Multilogin, X-Browser, Octo Browser, AdsPower, Incogniton, Scrapy, Surfsky, Web Scraper.io, ScrappingBee, etc.


Recopilación de huellas dactilares de los usuarios

JavaScript: los sitios web utilizan JS (obviamente) para recopilar detalles sobre los usuarios para construir retratos digitales completos. Esto implica sondear la resolución de la pantalla, la orientación del dispositivo, los movimientos del mouse, la dinámica de las pulsaciones de teclas, etc. Los sofisticados scripts de toma de huellas digitales enumeran una amplia gama de atributos del navegador y del hardware.

Cookies y almacenamiento local: las cookies persistentes y los datos almacenados en el almacenamiento local funcionan para rastrear a los usuarios en todas las sesiones y plataformas. Las técnicas incluyen aprovechar las cookies del navegador y almacenar identificadores únicos para el seguimiento de los usuarios. Dependiendo de sus propósitos, necesita saber cuándo necesita un navegador "vacío" con huellas digitales únicas o cuándo necesita engañar a un servicio que muestre que tiene cookies particulares y las mismas huellas digitales.

Scripts de terceros: la inclusión de scripts de terceros para análisis y publicidad incorpora rastreadores invisibles que a menudo se utilizan para ajustar el comportamiento de los sistemas para un usuario específico en función de las huellas dactilares recopiladas. Puede utilizar las herramientas y enfoques antes mencionados para bloquear o engañar selectivamente dichos scripts para obtener el comportamiento necesario.


Comprender su identidad en línea

Comprobadores en línea: Panopticlick (EFF), Pixelscan, deviceinfo.me y BrowserLeaks muestran los parámetros de huellas digitales de su navegador, como User-Agent, huellas digitales de lienzo, fuentes, etc. Estos verificadores brindan información sobre la singularidad y estabilidad de su huella digital en diferentes navegaciones. sesiones.

Herramientas de desarrollo de navegadores: permiten a los usuarios inspeccionar solicitudes de red, cookies y otros parámetros de huellas dactilares, fomentando una comprensión más profunda de su huella digital y de cómo los sitios web detectan bots y usuarios legítimos únicos y recopilan huellas dactilares. Examinar las pestañas Red y Aplicación en los navegadores proporciona una vista en tiempo real de los datos intercambiados entre el navegador, los sitios web y los servidores.


A continuación se muestran algunos ejemplos de cómo puede obtener información sobre las huellas digitales de los usuarios en el navegador.

  • GEO:
 navigator.geolocation.getCurrentPosition(function(position) { var userLocation = position.coords; });


  • Micrófono:
 navigator.mediaDevices.enumerateDevices() .then(function(devices) { var microphones = devices.filter(device => device.kind === 'audioinput'); });


  • Cámara:
 navigator.mediaDevices.enumerateDevices() .then(function(devices) { var cameras = devices.filter(device => device.kind === 'videoinput'); });


  • Altavoces:
 navigator.mediaDevices.enumerateDevices() .then(function(devices) { var speakers = devices.filter(device => device.kind === 'audiooutput'); });


  • Audio:
 var audioContext = new (window.AudioContext || window.webkitAudioContext)(); var oscillator = audioContext.createOscillator(); var analyser = audioContext.createAnalyser(); oscillator.connect(analyser); analyser.connect(audioContext.destination);


  • GPU:
 var canvas = document.createElement('canvas'); var gl = canvas.getContext('webgl') || canvas.getContext('experimental-webgl'); var renderer = gl.getParameter(gl.RENDERER); console.log(renderer);


  • Fuentes:
 var fonts = []; var fontList = document.fonts.forEach(function(font) { fonts.push(font.family); }); console.log(fonts);


  • Lienzo (hash):
 var canvas = document.createElement('canvas'); var context = canvas.getContext('2d'); var dataURL = canvas.toDataURL(); var canvasHash = MurmurHash3(dataURL); console.log(canvasHash);


  • RAM y procesador:
 function getCPUInfo() { return navigator.hardwareConcurrency || 0; } function getDeviceMemory() { return navigator.deviceMemory || 0; } var cpuInfo = getCPUInfo(); var deviceMemory = getDeviceMemory(); console.log(`CPU Cores: ${cpuInfo}`); console.log(`Device Memory (GB): ${deviceMemory}`);

Sistemas de detección de bots: defensa contra la automatización

Un par de ejemplos de tales sistemas:

  • Distil Networks: Es líder mundial en detección y mitigación de bots. Proporciona una forma proactiva y precisa de verificar que usuarios humanos legítimos accedan a su sitio web, aplicación móvil y API. Detección de bots: Distil Networks utiliza una combinación de técnicas para detectar bots. Estudia una variedad de variables, como el movimiento del cursor, los patrones de clics y los patrones de navegación web en otros sitios web. Utiliza huellas digitales del dispositivo y tecnología Are You a Human , que compara a todos los visitantes con cientos de características diferentes, enfocándose en su comportamiento. Extrae activamente datos adicionales del navegador para identificar dispositivos con precisión. Cuando llega una solicitud del navegador, Distil interroga los encabezados para ver si el visitante miente sobre su identidad. Este identificador único se puede utilizar para identificar total o parcialmente dispositivos individuales incluso cuando las cookies no se pueden leer ni almacenar en el navegador, la dirección IP del cliente está oculta o uno cambia a otro navegador en el mismo dispositivo. Utiliza el aprendizaje automático para detectar patrones biométricos en la actividad del mouse y el desplazamiento, además de buscar pistas en navegadores, dispositivos y otros factores. Puede detectar muchos bots simples o de complejidad media que ejecutan JS desde una página web. Protección de recursos: Distil Networks defiende contra el web scraping, la minería de datos competitiva, la apropiación de cuentas, el fraude de transacciones, los análisis de vulnerabilidades no autorizados, el spam, el fraude de clics, la denegación de servicio y el abuso de API. Puede bloquear automáticamente el 99,9% del tráfico malicioso sin afectar a los usuarios legítimos. También ofrece Distil Bot Defense para web y API, que protegen su sitio web y los servidores API respectivamente.
  • Imperva: es una plataforma integral de ciberseguridad que integra identificación basada en huellas dactilares para distinguir a los usuarios legítimos de las amenazas potenciales. Utilizando análisis de comportamiento avanzado y detección de anomalías, Imperva crea perfiles basados en una combinación de factores, incluida la reputación de IP, el agente de usuario, diferentes parámetros de huellas dactilares y características de comportamiento. Esto permite que el sistema detecte actividades sospechosas que indiquen tráfico de bots y mitigue posibles amenazas de manera efectiva.
  • Akamai: es un destacado proveedor de servicios en la nube y entrega de contenido que incorpora sólidos mecanismos de detección de bots dentro de sus ofertas de seguridad. Aprovechando una combinación de detección basada en huellas dactilares, análisis de comportamiento y aprendizaje automático, Akamai identifica y mitiga varios bots. La red global de Akamai permite obtener inteligencia sobre amenazas en tiempo real, lo que permite una defensa proactiva contra las tácticas de los robots en evolución.
  • Cloudflare: es una red de entrega de contenido y un servicio de seguridad ampliamente utilizado que emplea un enfoque multifacético para la detección de bots. Cloudflare distingue entre usuarios humanos y bots analizando parámetros como la reputación de IP, las características del agente de usuario y los patrones de comportamiento. La plataforma también utiliza inteligencia sobre amenazas e información impulsada por la comunidad para mantenerse a la vanguardia en la batalla contra las amenazas de bots emergentes. Cloudflare utiliza JA3 Fingerprinting para perfilar clientes SSL/TLS y bloquear posibles solicitudes de bot. También utiliza el filtrado HTTP para aplicar reglas y enrutar el tráfico según la información de la solicitud HTTP. La huella digital de datos se utiliza para identificar archivos específicos y evitar la pérdida de datos. Estas técnicas ayudan a detectar usuarios no reales.

Papel de los sistemas de detección de bots:

Desempeñan un papel fundamental en la mejora de las capacidades de detección de bots. Con servidores ubicados estratégicamente en todo el mundo, pueden aprovechar la información geográfica y la inteligencia sobre amenazas en tiempo real para identificar y mitigar el tráfico de bots de manera efectiva. El WAF y los administradores de bots de la plataforma contribuyen a una defensa integral contra los "usuarios" automatizados.


En este juego del gato y el ratón, los sistemas de detección de bots continúan evolucionando, aprovechando tecnologías avanzadas para mantenerse a la vanguardia de la tecnología de suplantación de huellas dactilares. La colaboración entre los proveedores de seguridad, las empresas y la comunidad en línea en general sigue siendo crucial en la defensa contra las tácticas de las amenazas automatizadas, pero también, en cierto modo, se utiliza contra la privacidad, el anonimato y la experiencia en línea de los usuarios, generando anuncios intrusivos y sofisticadas herramientas de seguimiento de usuarios. que sólo son beneficiosos para las empresas, no para los usuarios. Sin embargo, también se están desarrollando herramientas de protección de la privacidad, ocultación y suplantación de huellas dactilares y herramientas de bloqueo de anuncios y rastreadores para evadir incluso los sistemas de seguimiento de usuarios más sofisticados.


Pasos de verificación adicionales de los sitios web

  • Comportamiento sospechoso: si una huella digital parece sospechosa, como cambios frecuentes o combinaciones inusuales de puntos de datos, el sitio web puede activar pasos de verificación adicionales.
  • Captcha: los sitios web pueden presentar a los usuarios desafíos de captcha para verificar su identidad. Esto implica resolver acertijos o identificar texto distorsionado, tareas que son difíciles de realizar para robots primitivos.
  • Verificación móvil: los sitios web pueden solicitar a los usuarios que verifiquen sus números de teléfono móvil para establecer una conexión más sólida entre una identidad única y una entidad del mundo real. Esto puede ayudar a prevenir actividades fraudulentas.
  • Verificación de identidad : la idea es la misma que con los teléfonos móviles, pero debes enviar tu identificación


Ejemplos:

Google no requiere verificación adicional para nuevos usuarios con huellas digitales claras y consistentes. Si la huella digital de un usuario cambia con frecuencia o se parece a las utilizadas por bots conocidos (o simplemente conocidos por Google), Google puede solicitar un número de teléfono móvil o solicitar lidiar con un captcha.


Los sitios web financieros suelen imponer medidas de verificación más estrictas debido a la naturaleza sensible de las transacciones. Es posible que soliciten a los usuarios que proporcionen información personal adicional, verifiquen su identidad a través de canales seguros o superen desafíos de captcha más complejos.

Opinión: suplantar es mejor que ocultar

Ocultar las huellas dactilares puede mejorar la privacidad, la seguridad y el anonimato en línea, pero falsificarlas para que parezcan un usuario único y legítimo ofrece ventajas aún mayores. Al mezclarse con la multitud y evitar las sospechas de los sistemas que detectan herramientas antidetección, puede mantener la credibilidad y la confianza. Este enfoque le permite disfrutar de los beneficios de ser percibido como un usuario único y legítimo, minimizando la posibilidad de enfrentar medidas u obstáculos de protección adicionales. y, obviamente, ayuda a prevenir la filtración de su identidad y datos reales.


También publicado aquí .