
AliExpress: fingerprinting mediante la API Web Audio
Security NetworkTabla de contenidos
Abres una tienda online y, de repente, la música del smartphone se queda en silencio. No hay ningún vídeo reproduciéndose en el navegador, no se oye ningún anuncio y ni siquiera silenciar la pestaña cambia nada. Solo cuando se cierra la pestaña de AliExpress, los auriculares Bluetooth vuelven a conectarse correctamente al teléfono.
Lo que parecía un fallo de Bluetooth Multipoint llevó al desarrollador Matt Callaghan hasta dos archivos JavaScript muy ofuscados en la página principal de AliExpress. Ambos creaban en segundo plano un grafo de Web Audio que permanecía activo. El nivel de salida era cero, por lo que no se oía nada. Sin embargo, para el navegador, el sistema operativo y los auriculares, la ruta de audio seguía activa.
El hallazgo es técnicamente fascinante porque un efecto secundario involuntario del hardware delató una medición invisible del navegador. Desde el punto de vista de la seguridad resulta aún más interesante porque Web Audio era solo una pieza. Los scripts también examinaban Canvas, WebGL, pantalla, hardware, formatos multimedia compatibles, WebRTC e interacciones del usuario. El resultado parece una huella completa del navegador y del dispositivo.
Lo inquietante de este caso no es un truco de audio especialmente secreto, sino la amplitud de la medición y la invisibilidad con la que comenzaba ya en la página principal de la tienda.
El fallo de Bluetooth que no lo era
Callaghan utiliza auriculares Multipoint conectados simultáneamente al PC y al smartphone. Normalmente escucha música desde el teléfono. Cuando el PC reproduce audio de verdad, este asume la reproducción. Ese cambio de prioridad empezó a quedarse bloqueado cada vez que AliExpress estaba abierto en Firefox o Chrome. No probó otros navegadores.
Los sospechosos habituales quedaron descartados. No había elementos de audio o vídeo, ninguna llamada a HTMLMediaElement.play(), ninguna Media Session activa y ningún archivo multimedia reconocible en el tráfico de red. Lo único llamativo era que la interferencia comenzaba unos segundos después de cargar la página.
Callaghan instrumentó entonces la API Web Audio. Sustituyó el constructor de AudioContext por un envoltorio, registró los nuevos contextos de audio y supervisó las conexiones realizadas mediante AudioNode.connect(). Aparecieron dos contextos activos cuyas trazas de pila apuntaban a estos scripts:
assets.aliexpress-media.com/g/AWSC/uab/1.140.0/collina.js
assets.aliexpress-media.com/g/AWSC/fireyejs/1.231.67/fireyejs.js
Ambos se encontraban bajo una ruta AWSC y, por sus funciones, parecían formar parte de una infraestructura de Alibaba para la seguridad del navegador y la detección de abusos. La atribución es plausible, pero los nombres de archivo por sí solos no la demuestran de manera concluyente. No obstante, Alibaba Cloud documenta expresamente para su Anti-Bot Web SDK un recopilador web que trabaja junto con una evaluación del lado del servidor.
El comportamiento pudo acotarse mejor: después de bloquear ambas familias de scripts, en la medición de control de Callaghan no se crearon ni los contextos de audio ni las conexiones hacia la salida. La página principal y la búsqueda normal de productos siguieron funcionando en su prueba.
Qué hace exactamente el grafo de Web Audio
Web Audio no es una función secreta de escucha, sino una potente interfaz del navegador para juegos, sintetizadores, videoconferencias y otras aplicaciones interactivas. En lugar de limitarse a reproducir un archivo, un sitio puede conectar nodos de procesamiento individuales para formar un grafo.
De forma simplificada, los scripts de AliExpress examinados construían esta cadena:
OscillatorNode con onda de diente de sierra
-> AnalyserNode
-> ScriptProcessorNode
-> GainNode con ganancia 0
-> AudioContext.destination
El oscilador genera una señal conocida. El AnalyserNode proporciona datos de medición del procesamiento y JavaScript lee los valores de frecuencia. Después, el GainNode establece el nivel en cero. La señal deja de ser audible, pero el grafo permanece conectado a AudioContext.destination y, por tanto, a la salida en tiempo real.
Esa conexión explica el efecto secundario. Volumen cero no significa procesamiento cero. El navegador continúa calculando el grafo y, en el sistema Windows de Callaghan, eso bastó aparentemente para mantener activa la ruta de audio del PC. El cambio automático Multipoint interpretaba por ello que el PC seguía siendo una fuente activa.
Para una medición puramente computacional, un OfflineAudioContext habría sido más lógico. Renderiza el grafo directamente en un búfer de memoria sin enviarlo a los altavoces ni al dispositivo de audio del sistema operativo. En el grafo de AliExpress, el oscilador y el análisis están además antes de la salida puesta a cero. La conexión con la salida en vivo no aportaba ninguna utilidad reconocible a los datos de frecuencia ya leídos, pero sí causaba el efecto visible.
Mozilla ya había registrado el mismo efecto en 2023
En 2026, los auriculares de Callaghan proporcionaron la pista que atrajo la atención pública. Sin embargo, Mozilla ya había registrado el efecto subyacente del navegador en noviembre de 2023 como Bug 1863193. El informe original sobre Firefox 119 describía páginas de AliExpress que provocaban en Windows 11 una solicitud permanente de energía para audio. powercfg /requests indicaba un flujo de audio activo aunque la pestaña no mostraba ninguna reproducción. El ordenador dejaba de entrar automáticamente en suspensión. Al cerrar la pestaña, la solicitud desaparecía.
El desarrollador de Mozilla Karl Tomlinson activó entonces el registro de Web Audio. El protocolo mostró dos veces exactamente la cadena que Callaghan describiría más tarde: OscillatorNode, AnalyserNode, ScriptProcessorNode, un GainNode silenciado y AudioDestinationNode. Tomlinson observó un uso permanente similar del dispositivo en Chrome y señaló que AliExpress podría detenerlo mediante AudioContext.suspend().
Es una confirmación independiente importante. El efecto secundario del hardware no se basa únicamente en la interpretación de Callaghan de un script ofuscado. Años antes, Mozilla había registrado directamente en el navegador el grafo activo y su efecto sobre la gestión de energía de Windows. El fallo continúa abierto. También muestra que la responsabilidad es compartida: AliExpress podría haber suspendido el contexto después de medir, mientras que el navegador podría desconectar antes del dispositivo un grafo que, de hecho, está silenciado y ya no es necesario.
Ni micrófono ni ultrasonidos en la habitación
Aquí importa la precisión del lenguaje. En esta prueba, AliExpress no grabó el micrófono ni escuchó sonidos de la habitación. El acceso al micrófono se realizaría mediante getUserMedia() y requeriría el permiso del usuario.
También es engañosa la idea de que la tienda emitiera una señal ultrasónica por los altavoces y luego volviera a captarla físicamente. La medición se produjo dentro del procesamiento de audio del navegador. La onda de diente de sierra se calculó, se analizó y se puso a cero antes de la salida. El efecto en los auriculares apareció porque el grafo virtual seguía conectado a la salida real.
Por qué cálculos idénticos pueden producir resultados distintos
El procesamiento digital de señales implica muchas operaciones de coma flotante. La arquitectura de la CPU, las bibliotecas matemáticas, las decisiones del compilador, la implementación del navegador y el redondeo pueden generar pequeñas diferencias. El estándar Web Audio menciona expresamente OscillatorNode, DynamicsCompressorNode, la frecuencia de muestreo, la latencia y las mediciones temporales como posibles superficies de fingerprinting. Por ello, los navegadores deben limitar esas diferencias.
Pero un resultado de Web Audio no es un número de serie mágico del hardware. Varios dispositivos pueden generar el mismo valor y el navegador puede uniformar o modificar los resultados. La capacidad de reconocimiento aumenta cuando se combina con otras características.
La técnica se utiliza al menos desde 2016
El fingerprinting de audio no es un descubrimiento nuevo de 2026. Steven Englehardt y Arvind Narayanan estudiaron un millón de sitios para su investigación OpenWPM, publicada en ACM CCS en 2016. Encontraron fingerprinting mediante AudioContext en tres scripts de un total de 67 sitios. Según su análisis manual, dos de los scripts utilizaban realmente la técnica de forma activa.
También allí un oscilador generaba una señal conocida que se procesaba, leía y convertía en hash. Una de las variantes documentadas conducía el grafo por un AnalyserNode, un ScriptProcessorNode y un GainNode silenciado hasta la salida. Su estructura es sorprendentemente similar al patrón de AliExpress. Los investigadores de Princeton ya subrayaron que no se necesita micrófono y que las técnicas de fingerprinting suelen combinarse.
Lo nuevo del caso AliExpress no es, por tanto, la idea básica. Lo nuevo es el hallazgo concreto en uno de los mayores mercados online, la amplia combinación de otros atributos y, sobre todo, el canal lateral que hizo visible la medición.
El valor de audio era solo una pieza del rompecabezas
En los paquetes examinados, Callaghan encontró consultas y mediciones de muchas otras características:
- renderizado Canvas y
toDataURL() - renderizador WebGL, extensiones y precisión de shaders
- dimensiones de pantalla y viewport, así como Device Pixel Ratio
hardwareConcurrencyydeviceMemory- plugins instalados y formatos multimedia compatibles
- comportamiento WebRTC y tiempos de rendimiento
- eventos de ratón, tacto, foco y desplazamiento
- movimiento y orientación del dispositivo
- propiedades que pueden indicar automatización del navegador o bots
El código también contenía rutinas para serializar y cifrar resultados, además de transmitirlos mediante fetch() o sendBeacon(). Del lado del cliente queda demostrado que se puede recopilar y enviar a servicios de Alibaba un conjunto amplio de datos aptos para fingerprinting.
Lo que ocurre en el servidor no está demostrado. Desde el navegador no pueden conocerse ni el periodo de conservación ni una posible vinculación posterior con cuentas, pedidos, otros servicios de Alibaba o perfiles publicitarios. El propio Callaghan señala expresamente este límite.
AliExpress menciona en su política de privacidad, entre otros datos, el navegador y el sistema operativo, características de hardware y software, identificadores únicos del dispositivo, patrones de uso e interacciones. Como finalidades cita, además del funcionamiento y la personalización, la detección de fraude, blanqueo de dinero e incidentes de seguridad. La política no hace transparente la implementación técnica observada, pero muestra que los datos extensos sobre dispositivos y uso forman parte del modelo descrito.
Fingerprinting no equivale automáticamente a seguimiento publicitario
Las huellas del navegador se utilizan en contextos muy distintos. Las redes publicitarias pueden reconocer un navegador incluso después de borrar las cookies. Las tiendas online y los servicios de pago emplean señales similares para evaluar riesgos, detectar secuestros de cuenta, abuso de cupones, scraping, bots o compras automatizadas.
Ambas finalidades no se excluyen. Un mismo identificador de dispositivo puede servir simultáneamente a intereses de seguridad y marketing. Sin embargo, el JavaScript encontrado no demuestra una campaña concreta de publicidad entre sitios. Afirmar directamente que «AliExpress rastrea a todos los usuarios por todas las webs» va más allá de las pruebas disponibles.
Aun así, el caso sigue siendo problemático desde el punto de vista de la seguridad:
- La medición empezaba ya en la página principal general, no solo durante el inicio de sesión o el pago.
- Los scripts estaban muy ofuscados y eran prácticamente incomprensibles para los usuarios.
- La recopilación incluía mucho más que una única señal antibot.
- El grafo de audio activo no resultaba visible de forma útil en la interfaz y no se detenía al silenciar la pestaña.
- Una función en segundo plano penetraba tanto en la ruta local de audio que cambiaba el comportamiento de hardware externo.
Una defensa comprensible contra el fraude no necesita publicar necesariamente instrucciones de implementación. Sí necesita minimización de datos, una finalidad claramente delimitada y una interfaz cuyo comportamiento no contradiga las expectativas del usuario. Una pestaña silenciosa de una tienda no debería ocupar una ruta de audio en tiempo real.
¿Hasta qué punto era único este fingerprint de audio?
El desarrollador de Firefox Tom Ritter extrajo el cálculo de Web Audio en cuestión y lo comparó con datos de telemetría de Firefox. El resultado matiza considerablemente las presentaciones alarmistas.
Desde Firefox 118, Web Audio utiliza en todas las plataformas la biblioteca matemática FDLIBM para reducir diferencias dependientes del sistema. En la evaluación de Ritter, el 99,24 por ciento de los usuarios se concentraba en solo tres valores de resultado. En otro 0,76 por ciento fallaba el punto de medición y devolvía cero. Los tres grandes grupos correspondían básicamente a clases de CPU: x86 o x64 sin FMA, x64 con FMA y ARM con NEON.
Para el método concreto de AliExpress esto significa que, en Firefox, el valor de audio no era individual para casi todos los usuarios estudiados. Revelaba más bien una clase general de procesador que un dispositivo concreto. No obstante, persistía una pequeña cola larga con valores adicionales, y precisamente los valores raros pueden hacer destacar más a esos sistemas.
Un valor individual débil no se vuelve inofensivo cuando forma parte de un perfil sólido compuesto por gráficos, hardware, comportamiento e información de cuenta existente.
El fingerprinting trabaja con combinaciones. El tamaño de pantalla, la zona horaria o la clase de CPU suelen ser triviales por separado. Canvas, WebGL, fuentes, datos de hardware, rasgos del navegador, patrones de interacción y una sesión iniciada pueden crear juntos una separación mucho mayor. Por tanto, el valor de Web Audio no tiene que ser único para seguir siendo útil dentro de la puntuación global.
La protección del navegador es una carrera armamentística con efectos secundarios
Los navegadores siguen estrategias distintas. Firefox uniforma determinados cálculos y bloquea servicios conocidos de fingerprinting. Desde Firefox 145, medidas de protección más amplias están activas inicialmente en el modo privado y con la protección mejorada contra el rastreo en nivel estricto. Mozilla reconoce que una uniformización más agresiva puede romper funciones legítimas.
Brave modifica ligeramente resultados útiles para fingerprinting, como los valores de Canvas y Web Audio. Este método, denominado Farbling, se mantiene estable dentro de una sesión y un sitio, pero busca producir resultados distintos entre sitios y sesiones. Así, una aplicación sigue recibiendo valores plausibles, aunque le cuesta más utilizarlos como identificador global duradero.
WebKit limita en Safari diferentes superficies de fingerprinting, como las fuentes instaladas localmente y cierta información del dispositivo. En interfaces especialmente arriesgadas, WebKit a veces renuncia por completo a implementarlas mientras no exista, en su opinión, una vía segura. Esto revela el conflicto básico: las mismas interfaces que permiten aplicaciones web complejas también amplían la superficie de medición del navegador.
Ningún navegador normal puede garantizar la desaparición de toda forma de fingerprinting. Cuando se uniforma un atributo, los proveedores recurren a otros o a señales de comportamiento. Y una combinación especialmente exótica de extensiones, fuentes y protecciones manuales puede incluso hacer que el propio navegador sea más raro.
Qué pueden hacer los usuarios
La base más sensata es un navegador actualizado con protección contra fingerprinting activa. En Firefox, el nivel de protección más amplio requiere la protección mejorada contra el rastreo en modo estricto o una ventana privada. Brave activa de forma predeterminada Shields y su defensa contra fingerprinting. En Safari conviene usar las versiones actuales del sistema operativo y del navegador. Tor Browser y Mullvad Browser van más lejos para sesiones sensibles: intentan que el mayor número posible de usuarios aparezca dentro del mismo grupo con una huella similar. Precisamente allí no deberían añadirse cambios propios ni extensiones adicionales.
Las ventanas privadas por sí solas no son una respuesta completa. Limitan el estado almacenado, pero no ocultan automáticamente las propiedades del hardware y el navegador. Borrar cookies tampoco restablece una huella de la misma manera que elimina un identificador de cookie.
Una VPN resuelve otro problema. Sustituye la dirección IP pública visible y, según el uso, protege el transporte hasta el proveedor de la VPN. Pero no modifica automáticamente Canvas, WebGL, cálculos de audio, fuentes o características del hardware. Por tanto, una VPN puede ser útil, pero por sí sola no protege contra el fingerprinting del navegador.
Bloquear específicamente los dos scripts con uBlock Origin
Callaghan publicó dos filtros deliberadamente estrechos para uBlock Origin:
! AliExpress AWSC fingerprinting scripts
||assets.aliexpress-media.com/g/AWSC/uab/*/collina.js$script,domain=aliexpress.com
||assets.aliexpress-media.com/g/AWSC/fireyejs/*/fireyejs.js$script,domain=aliexpress.com
Después de añadirlos en Mis filtros, hay que cerrar las pestañas de AliExpress que ya estén abiertas. Bloquear un script a posteriori no detiene un contexto de audio que ya haya creado.
Estas reglas son una instantánea. Las rutas, versiones y nombres de archivo pueden cambiar. Como los scripts probablemente pertenecen a la infraestructura antibot y de evaluación de riesgos, también pueden aparecer CAPTCHA adicionales o problemas al iniciar sesión y pagar. Quien no pueda completar una transacción legítima puede desactivar temporalmente la regla solo para ese proceso y cerrar después la pestaña.
Bloquear todo el host assets.aliexpress-media.com en el nivel DNS sería mucho más brusco. Allí pueden alojarse otros recursos de la tienda. Una regla de URL estrecha resulta más controlable que un bloqueo general del dominio.
Desactivar por completo JavaScript rara vez es práctico
Sin JavaScript, esta medición no puede ejecutarse. Pero las tiendas modernas apenas funcionan en esas condiciones. Una desactivación global también crea un estado de navegador inusual y no sustituye una separación adecuada entre cuentas, perfiles y actividades sensibles.
Para investigaciones especialmente delicadas puede resultar útil un navegador separado y con pocas modificaciones. Limita la vinculación con el perfil cotidiano, pero no garantiza el anonimato. La dirección IP, el inicio de sesión, los datos de pago y las señales del servidor no cambian por ello.
La cuestión jurídica va más allá de las cookies
En Europa, «sin cookies» no significa «sin consentimiento». Las directrices definitivas 2/2023 del Comité Europeo de Protección de Datos interpretan deliberadamente el ámbito técnico del artículo 5, apartado 3, de la Directiva ePrivacy de forma más amplia que las cookies clásicas. También puede ser determinante el acceso a información almacenada en el terminal o generada allí por software y hardware.
Que la implementación concreta de AliExpress sea lícita en un caso determinado depende, entre otras cosas, de la finalidad real, la necesidad, la aplicación regional de las normas ePrivacy, la transparencia y el tratamiento posterior. La lucha contra el fraude puede ser una finalidad legítima. Pero eso no responde automáticamente si cada característica recopilada en la página principal es necesaria para ese fin o si haría falta consentimiento.
Este artículo no sustituye un análisis jurídico. Técnicamente, el caso muestra por qué los banners de cookies no reflejan por completo la realidad de la identificación moderna. Un usuario puede rechazar todas las cookies de marketing visibles y seguir siendo medido mediante JavaScript propio del sitio.
Base de la prueba y limitaciones
Revisé por última vez el análisis técnico, la información de los navegadores y las políticas públicas el 31 de agosto de 2026. El hallazgo concreto en AliExpress se basa en la prueba documentada por Callaghan en Windows con Firefox y Chrome, así como en su instrumentación de la API Web Audio. Se añaden el informe independiente de Mozilla, la evaluación de Ritter del procedimiento de audio extraído, la investigación OpenWPM y la documentación primaria de W3C, Mozilla, Brave, WebKit, Alibaba Cloud, AliExpress y el EDPB.
Las dos URL versionadas de scripts indicadas por Callaghan seguían respondiendo en mi comprobación con HTTP 200 y el tipo de contenido application/javascript. Sin embargo, no ejecuté personalmente los scripts en una cuenta controlada de AliExpress ni reproduje el efecto secundario de Bluetooth con mis propios auriculares. Otros sistemas operativos, navegadores, regiones, pruebas A/B o versiones modificadas de los scripts pueden comportarse de otra forma. El almacenamiento en el servidor, la puntuación, la vinculación de identidades y el uso de los valores transmitidos no eran visibles y, por ello, no son conclusiones propias de este artículo.
Mi conclusión
El caso no demuestra una vigilancia ultrasónica secreta ni que un único valor de audio identifique de manera inequívoca cada ordenador. Sí demuestra muy bien hasta qué punto los sitios modernos pueden utilizar el navegador como instrumento de medición sin que el usuario vea nada.
La explicación antibot es técnicamente creíble. Un gran mercado debe combatir bots, secuestros de cuentas, fraude en pagos y abuso de cupones. Pero eso no justifica automáticamente cualquier medición en cualquier punto del recorrido del cliente. Quien recopile desde la página principal características de audio, gráficos, hardware, WebRTC y comportamiento debe responder preguntas sobre necesidad, transparencia y efectos secundarios.
Al final, no fue un panel de privacidad el que hizo visible la medición. Fue un par de auriculares Bluetooth que se negó a fingir que el navegador estaba en silencio.
Hasta la próxima,
Joe
Fuentes
- Matt Callaghan: análisis original de los scripts de AliExpress y filtros de uBlock
- Tom Ritter: valores y clases de CPU del fingerprint de Web Audio de AliExpress en Firefox
- Mozilla Bug 1863193: AliExpress mantiene activa la ruta de audio de Windows
- Princeton Web Census: fingerprinting con AudioContext en 67 sitios
- W3C: Web Audio API, consideraciones de seguridad y privacidad
- AliExpress: política de privacidad sobre datos del dispositivo, uso y seguridad
- EDPB: Directrices 2/2023 sobre el ámbito técnico del artículo 5(3) de la Directiva ePrivacy


