AliExpress usa WebAudio para fingerprinting silencioso e derruba o Bluetooth multipoint
Dois scripts ofuscados da Alibaba criam contextos de áudio invisíveis para montar impressão digital do dispositivo, e o efeito colateral prende o caminho de áudio Bluetooth do usuário.

Um desenvolvedor que assina como m-c-tech documentou no blog laserphile um comportamento incomum: abrir a home do AliExpress no Firefox ou no Chrome interrompia o áudio que tocava no celular, mesmo sem nenhum vídeo ou música visível na página. A investigação levou a dois scripts de segurança da Alibaba que executam fingerprinting via WebAudio de forma completamente silenciosa, com um efeito colateral concreto no hardware: o caminho de áudio Bluetooth do PC fica ativo e impede fones multipoint de voltarem para o telefone.
O caso interessa a quem trabalha com privacidade, antifraude e segurança de front-end↳Front-end60 conteúdosFront-end em larga escala: quando seu projeto vira um Frankenstein (e como evitar)Dev (Back & Front) · mar 2026Build e bundling no front-end: 7 decisões que impactam performance de verdadeDev (Back & Front) · abr 2026Como modelar APIs pensando no front-end: 8 práticas para evitar retrabalho entre timesDev (Back & Front) · abr 2026Ver tudo em Dev (Back & Front) → porque mostra, com código, uma técnica de rastreamento que passa por baixo dos controles clássicos do navegador, incluindo o botão de mudo da aba.
O sintoma que abriu a caça
O autor usa fones multipoint conectados ao PC e ao celular ao mesmo tempo. O padrão é o PC ter prioridade e o celular tocar quando o PC está em silêncio. Isso funcionava até ele abrir uma aba do AliExpress: segundos depois de a home carregar, o áudio do celular parava. Fechar a aba resolvia na hora. Mutar a aba, o navegador ou o Windows não adiantava, e não havia mídia visível tocando.
A primeira suspeita foi um vídeo de produto em autoplay. Ele checou os suspeitos de sempre, sem achar nada:
- elementos
e - chamadas a
HTMLMediaElement.play() - metadados ativos de Media Session
- requisições de mídia
- iframes com mídia embutida
O navigator.mediaSession.playbackState continuava em none. Um detalhe importante: o problema não aparecia na hora, e sim depois que a página ficava ociosa por alguns segundos.
Instrumentando a Web Audio API
Em vez de procurar elementos de mídia convencionais, o autor passou a monitorar a própria Web Audio API, envolvendo o construtor do AudioContext para registrar toda vez que a página criasse um contexto de áudio:
const OriginalAudioContext = window.AudioContext;
window.AudioContext = class extends OriginalAudioContext {
constructor(...args) {
super(...args);
console.log("AudioContext created", { state: this.state, stack: new Error().stack });
}
};Ele também interceptou AudioNode.prototype.connect() para ver se algo era ligado ao destino de áudio do contexto. O resultado: durante uma captura ociosa da home, a página criou dois objetos AudioContext, ambos entrando no estado running e ambos conectando nós ao AudioContext.destination. Ao mesmo tempo, seguia havendo zero elementos de mídia, zero chamadas play(), nenhuma Media Session ativa e nenhum som audível.
Os stack traces apontaram para dois scripts sob um diretório AWSC, que aparenta ser parte do ferramental de segurança e antiabuso da Alibaba:
https://assets.aliexpress-media.com/g/AWSC/uab/1.140.0/collina.jshttps://assets.aliexpress-media.com/g/AWSC/fireyejs/1.231.67/fireyejs.js
Como o truque de áudio funciona
Segundo a análise (os scripts são fortemente ofuscados, mas nomes e operações suficientes sobreviveram), ambos montam um grafo WebAudio parecido com:
Sawtooth oscillator
-> AnalyserNode
-> ScriptProcessorNode
-> GainNode set to zero
-> AudioContext.destinationO oscilador gera uma forma de onda conhecida, o analisador mede o resultado depois de ele passar pela implementação de áudio do navegador, e o script lê os dados de frequência. O ganho é zerado, então o usuário não ouve nada. Mas o grafo continua conectado ao destino de áudio do sistema, e é justamente essa conexão que faz o navegador processar o grafo ativamente, mesmo com volume final zero.
A diferença para um vídeo em autoplay é crucial: não existe elemento de mídia para o controle de mudo da aba parar. Do ponto de vista da página, ela está fazendo processamento de áudio ao vivo. No setup do autor, isso foi suficiente para o Firefox ou o Windows manterem o caminho de áudio Bluetooth ativo, impedindo a troca limpa do multipoint de volta para o celular.
Um fingerprint bem completo
O teste de WebAudio é só uma medição entre muitas. A inspeção dos bundles encontrou código que consulta ou mede, entre outros:
- renderização de canvas e
toDataURL() - informações do renderer WebGL, extensões e precisão de shader
- dimensões de tela e viewport, device pixel ratio
hardwareConcurrencyedeviceMemory- plugins instalados, formatos de áudio e vídeo suportados
- comportamento de WebRTC e timing de performance
- eventos de mouse, toque, foco e scroll
- movimento e orientação do dispositivo
- propriedades associadas a automação de navegador
Há ainda código para serializar e criptografar os resultados e enviá-los a serviços de telemetria da Alibaba via fetch() ou sendBeacon(). O fingerprint de áudio funciona porque pequenas diferenças entre versões de navegador, sistemas, bibliotecas de áudio e hardware produzem resultados ligeiramente distintos para o mesmo sinal gerado, e fica muito mais útil combinado com canvas, WebGL, hardware, timing e dados de interação.
O autor ressalta o limite da própria análise: o código do cliente prova que as medições são coletadas e transmitidas, mas não é possível ver, do navegador, o que os servidores do AliExpress fazem com o dado, quanto tempo ele é retido ou se é usado como identificador persistente entre propriedades da Alibaba. Pode ser um identificador de dispositivo, pode ser apenas um insumo num score de fraude ou detecção de bots.
Por que isso importa para o dev brasileiro
O AliExpress é uma das plataformas de compra mais usadas no Brasil, o que coloca milhões de usuários locais expostos a essa coleta. Para quem constrói software, o caso vale como estudo por três motivos.
Primeiro, mostra uma técnica de rastreamento resistente a cookies. Como o próprio texto aponta, cookies podem ser limpos, copiados ou trocados, enquanto um fingerprint montado de muitas medições independentes é mais difícil de manipular de forma consistente. É exatamente o tipo de sinal que times antifraude gostam.
Segundo, é um lembrete de que APIs legítimas de navegador têm efeitos colaterais fora do sandbox. Um teste de fingerprinting silencioso conseguiu interferir no comportamento de hardware externo (o Bluetooth), e o controle de mudo do navegador não fez nada. Quem desenvolve com Web Audio ou avalia superfícies de privacidade precisa considerar esse tipo de vazamento de comportamento.
Terceiro, levanta a questão de transparência e consentimento: o script roda na home de compras, antes de qualquer ação sensível de login ou pagamento, sem indicação visível de que um grafo de áudio ao vivo foi iniciado.
Como bloquear com uBlock Origin
O autor testou bloquear as duas famílias de script. Com ambas barradas, a home continuou renderizando e nenhum AudioContext ou conexão ao destino apareceu na captura de controle. As regras, para adicionar em My filters no dashboard do uBlock Origin, são:
! 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.comDepois de aplicar, é preciso fechar as abas do AliExpress já abertas, porque bloquear um script não encerra um contexto de áudio que ele já criou. As regras são propositalmente estreitas: barram só as duas famílias observadas e só quando requisitadas pelo AliExpress.
O próprio autor faz a ressalva: como os scripts aparentam estar ligados a sistemas antifraude, bloqueá-los pode gerar mais CAPTCHAs ou problemas em login e checkout. Até o momento, home e navegação comum de produtos seguiam funcionando, mas ele recomenda desabilitar as regras temporariamente caso o site recuse um login ou pagamento legítimo. Ele também alerta que as regras podem parar de funcionar quando a Alibaba atualizar os caminhos dos scripts.
Fonte: Hacker News
Este artigo foi escrito por Redação iMasters, um agente de inteligência artificial com revisão editorial humana.









Comentários (2)
Curiosidade: ele conseguiu identificar qual é o dado exato que o fingerprinting extrai? Tipo, é só a presença de áudio, latência, capacidade de processamento ou a combinação de tudo isso que monta o ID do dispositivo? Porque se for só presença de áudio funcionando, é tipo detectar se o hardware existe, o que é meio trivial.
O lado chato é que mesmo sabendo disso, maioria das pessoas não consegue bloqueá-lo no navegador porque Web Audio não tem permissão granular igual a câmera ou microfone. Firefox tem um controle genérico, mas Chrome não oferece nada. E pra quem usa o site (que precisa do site), não tem jeito mesmo de parar o fingerprinting sem bloquear tudo.