PowerScan
ES

Cómo funcionan los navegadores antidetect: la explicación técnica completa

Navegadores antidetect · 11 min de lectura · por PowerOps

Foto: Unsplash

Superficies de la huella digital, generación de identidades coherentes, aislamiento del almacenamiento en disco, enrutamiento por perfil y los límites reales del enfoque.

Un navegador antidetect hace cuatro trabajos. Guarda por separado los datos de navegación de cada perfil, controla la identidad de dispositivo que informa cada perfil, enruta de forma independiente el tráfico de cada perfil y mantiene las tres cosas coherentes en el tiempo. Este artículo recorre cómo se hace cada uno, al nivel del mecanismo, y termina con lo que el enfoque no puede hacer.

Las superficies de la huella digital

Empecemos por lo que una página puede leer, porque todo lo demás es una respuesta a eso. Un script en cualquier sitio web puede hacerle preguntas al navegador, y las respuestas describen el equipo. Las superficies se agrupan de forma natural.

SuperficieQué lee una página
NavigatorNombre y versión del navegador, plataforma, lista de idiomas, número de procesadores y memoria informados, compatibilidad táctil
PantallaAncho, alto, área de trabajo disponible, profundidad de color, relación de píxeles del dispositivo
CanvasLos píxeles exactos que produce dibujar texto y formas fuera de pantalla, convertidos en un valor estable mediante un hash
WebGLLas cadenas de fabricante y renderizador de la gráfica, además de hashes de escenas renderizadas
AudioLa salida de un oscilador que pasa por el grafo de procesamiento de audio, que varía según la pila
FuentesQué tipografías están instaladas, deducido a partir de mediciones de texto
Zona horaria y relojLa zona y el desfase informados, comparados con el lugar desde el que llega el tráfico
RedLa propia dirección, la visión de WebRTC sobre los candidatos de conexión y la forma del handshake TLS

Ninguna fila identifica por sí sola un equipo. Lo hace la combinación, y la combinación es también donde se descubren las mentiras: unos valores que no podrían pertenecer a una misma máquina real son una señal más fuerte que cualquier valor aislado.

La recopilación es barata y silenciosa. Todos los valores de la tabla están disponibles para cualquier página mediante API documentadas, sin ningún aviso de permiso, y la mayoría llega en el primer segundo de la visita. Sea cual sea tu postura sobre esta práctica, es un hecho permanente de la web actual y la base frente a la que se diseña un navegador antidetect.

Cómo se genera una identidad coherente

El enfoque ingenuo es interceptar cada pregunta y aleatorizar la respuesta. Falla por una razón estructural. Las respuestas describen una sola máquina, así que están correlacionadas, y las respuestas aleatorias independientes rompen las correlaciones. Un user agent de Windows junto a fuentes que solo vienen con macOS, un tamaño de pantalla que ningún portátil ha traído jamás, una cadena gráfica que nunca coexistió con la plataforma declarada: cada una es una contradicción que un verificador puede comprobar a bajo coste.

Por eso un navegador antidetect que funciona genera la identidad como un conjunto. Parte de una clase de máquina real y común y deriva cada valor de esa elección. La plataforma decide la lista de fuentes plausible, las cadenas gráficas y la compatibilidad táctil. La pantalla sale de los tamaños con los que esa clase de máquina se vende realmente. El idioma y la zona horaria vienen de la región prevista del perfil. Los valores concuerdan entre sí porque se eligieron juntos, a partir de una sola descripción de una sola máquina.

La segunda propiedad importa igual: el conjunto se almacena. Se escribe en el perfil cuando este se crea, y cada sesión informa los mismos valores, porque un dispositivo que cambia entre visitas describe un hardware que nadie tiene. La estabilidad es la mayor parte de lo que significa plausible.

Aislamiento del almacenamiento en disco

El trabajo de almacenamiento es el menos vistoso y el más absoluto. Cada perfil tiene su directorio, y todo lo que un navegador persiste vive dentro: la base de cookies, Local Storage, IndexedDB, la caché HTTP, los registros de service workers, el estado de las extensiones, el historial y las credenciales guardadas. Dos perfiles son dos directorios disjuntos, y cada navegador en ejecución apunta al suyo.

La disyunción total es la propiedad que hay que comprobar, porque el aislamiento parcial falla en silencio. Las cookies son fáciles de separar. La caché puede identificar a un navegador que vuelve a través de los recursos que conservó. Los service workers pueden guardar identificadores y seguir ejecutándose entre visitas. IndexedDB es donde las aplicaciones modernas guardan los registros en los que realmente confían. Un aislamiento que cubre los almacenes famosos y comparte cualquiera de los otros ha aislado solo la parte visible del problema.

La persistencia es la otra mitad. Las sesiones acumulan valor: verificaciones de seguridad completadas, historial de acceso establecido, la forma de un visitante recurrente. Un perfil conserva su directorio entre sesiones, y eso es lo que hace posible el trabajo con cuentas. La escritura al cerrar es lo que hace duradero el directorio, y por eso matar el proceso de un perfil a mitad de sesión puede costarle la sesión que acababa de establecer.

Enrutamiento de red

Cada perfil lleva su propia ruta, aplicada al arrancar su navegador, de modo que el tráfico sale por el proxy de ese perfil sin tocar la configuración del sistema ni la ruta de ningún otro perfil.

La ruta es también el componente que más conviene verificar de forma independiente, porque se compra a un tercero. Probar un endpoint antes de asignarlo y leer la dirección observada en lugar de la anunciada detecta un fallo cuando todavía es un problema de configuración y no de cuenta.

Qué cambia el propio navegador

Hay dos lugares donde una herramienta puede cambiar las respuestas que recibe una página, y la diferencia entre ellos es la bifurcación más técnica de este tema.

EnfoqueCómo funcionaLa debilidad
Inyección de scriptsUna extensión o un script inyectado sobrescribe las funciones que llama la página, de modo que las lecturas de canvas y las consultas a navigator devuelven valores sustituidosLas sobrescrituras son visibles en sí mismas. Las funciones parcheadas pueden reconocerse como parcheadas, y cualquier superficie que el inyector olvidó sigue respondiendo con el valor real
Dentro del propio código del navegadorLa implementación del navegador responde con los valores guardados del perfil, en las rutas de código donde se producen los valores realesMucho más trabajo de construir y mantener, y por eso distingue a las herramientas diseñadas para este fin de las extensiones

La inyección es donde empezó esta categoría, y su techo es bien conocido: una página puede comprobar si las funciones nativas siguen pareciendo nativas, y puede llegar a la misma superficie por un camino que la inyección no cubrió. Por eso los navegadores antidetect diseñados para este fin hacen los cambios dentro del propio navegador, de modo que la identidad almacenada es lo que informa la implementación por cada camino que la lee.

Qué hace realmente abrir un perfil

  1. Se carga la identidad almacenada: un conjunto coherente de valores de dispositivo, el mismo que la vez anterior.
  2. El navegador arranca contra el directorio propio del perfil, de modo que cada almacén persistente es del propio perfil.
  3. Se aplica la ruta: el proxy, la resolución de nombres a través de él y WebRTC restringido a él.
  4. La sesión se ejecuta y acumula estado dentro del directorio.
  5. Al cerrar, el estado se escribe, de modo que la siguiente apertura retoma el mismo dispositivo, el mismo almacenamiento y la misma ruta.

Cada parte de esa lista se puede comprobar desde fuera. Abre una página de prueba de huella digital dos veces y compara los valores entre aperturas. Mira el directorio del perfil en el disco. Lee la dirección observada. Una herramienta de esta categoría debería invitar a esa comprobación, porque el mecanismo es el producto.

Los límites reales

El enfoque tiene bordes, y conocerlos forma parte de usarlo con competencia.

Lee los límites como una definición y no como una decepción. Un navegador antidetect es un instrumento de coherencia: almacenamiento separado, una identidad estable y plausible, una ruta que concuerda, todo mantenido por perfil y repetido de forma idéntica en cada apertura. Ese es todo el mecanismo, y todo lo demás que se escribe sobre la categoría es una variación de él.

Todos los artículos · Ejecutar el análisis