Técnica sigilosa de rastreamento web-app com localhost no Android é revelada
(localmess.github.io)- Foi revelado que grandes apps como Meta (Facebook) e Yandex usaram portas locais (127.0.0.1) no Android para compartilhar secretamente identificadores e cookies entre o navegador web e apps nativos
- Scripts do Facebook Pixel e Yandex Metrica embutidos em sites enviavam diretamente sessões de navegação e identificadores do navegador Android para apps nativos (Facebook, Instagram e apps da Yandex), tornando possível a identificação do usuário e a desanonimização
- Esse método contorna todas as proteções de privacidade existentes, como exclusão de cookies, modo anônimo, configurações de permissão e reset do ID de publicidade, e, se um app malicioso estiver apenas escutando a porta correta, também pode coletar o histórico de visitas do navegador
- Após a divulgação em 3 de junho de 2025, o Facebook removeu a maior parte do código relacionado, mas a técnica foi usada por anos em centenas de milhões de dispositivos Android no mundo. A Yandex vem usando um método semelhante continuamente desde 2017
- Navegadores como Chrome, Firefox e Brave adotaram medidas emergenciais de bloqueio, mas, devido a limitações estruturais da plataforma, ainda faltam contramedidas realmente definitivas, reforçando a necessidade de fortalecer a segurança do IPC do Android e da rede local
Disclosure: técnica sigilosa de rastreamento web-app via localhost
- Os pesquisadores descobriram que Meta e Yandex, contra bilhões de usuários Android, mantinham apps nativos escutando em segundo plano em portas locais pré-definidas (ex.: 12580~12585, 29009~30103) e se comunicando com JavaScript executado na web
- Com isso, cookies, metadados e histórico de uso do navegador web eram enviados aos apps nativos e combinados com dados de conta do app e o Android Advertising ID, entre outros, ligando a identidade do usuário às visitas na web
How does this work?
Abuso de portas locais no Android
- No Android, qualquer app com a permissão INTERNET pode abrir um socket em 127.0.0.1 (loopback)
- O navegador também pode acessar essa interface sem consentimento adicional do usuário
- JavaScript embutido em sites consegue enviar e receber dados entre o navegador e apps nativos usando Web APIs padrão
Como funciona a integração web-app do Meta/Facebook Pixel
- Quando o JavaScript do Meta Pixel é carregado no navegador Android, ele envia o valor do cookie _fbp ao app nativo por meio de pacotes STUN do WebRTC (UDP nas portas 12580–12585)
- Apps do Facebook e Instagram no dispositivo (dependendo da versão, como 515.0.0.23.90/382.0.0.43.84) ficam escutando nessas portas, recebem o valor de _fbp vindo do navegador e o enviam aos próprios servidores via GraphQL
- O _fbp é um cookie importante presente em cerca de 25% do milhão de sites mais populares. Antes, por ser separado por site, o rastreamento cruzado era difícil, mas com esse método é possível associar múltiplos _fbp de um usuário a uma única conta
- A partir de maio de 2025, foi adicionado o método TURN do WebRTC, e o script foi alterado para evitar a técnica de SDP Munging
- O cookie _fbp dura 90 dias e é extremamente comum, sendo usado em cerca de 25% dos principais sites
- Depois da reação de navegadores como o Chrome, o código foi removido em 3 de junho
Como funciona a integração web-app do Yandex Metrica
- O script Yandex Metrica envia requisições desde 2017, via HTTP(S), para portas locais (29009, 29010, 30102, 30103 etc.)
- Apps da Yandex (Yandex Maps, Navigator, Browser, Search etc.) deixam essas portas abertas e respondem com dados contendo o Android Advertising ID (AAID) codificado em Base64, além de outros identificadores de dispositivo, UUIDs etc.
- O script no navegador coleta essas informações e as envia de volta aos servidores da Yandex, completando o vínculo de identificadores entre navegador, app e servidor
- O domínio yandexmetrica.com era resolvido para 127.0.0.1, ajudando a evitar detecção e a ocultar o fluxo de coleta
- Como usa HTTP no localhost, se outro app estiver escutando a mesma porta, existe até o risco de exposição do histórico de sites visitados pelo usuário
Risco real: vazamento do histórico de navegação
- Ao usar comunicação local baseada em HTTP, qualquer app Android que apenas escute a porta correspondente pode obter o histórico, incluindo URLs visitadas no navegador
- Um app de Proof-of-Concept foi desenvolvido e testado em Chrome, Firefox e Edge, demonstrando que navegação privada e modo anônimo também são vulneráveis
- Apenas alguns navegadores, como Brave e DuckDuckGo, se defendiam com bloqueios próprios por lista e exigência de consentimento do usuário
Affected Sites
- Meta Pixel: usado em 5,8 milhões de sites; em rastreamento real, o compartilhamento local de ID foi observado em 15 mil sites da UE e 17 mil dos EUA entre os 100 mil sites mais populares
- Yandex Metrica: usado em 3 milhões de sites; pelo mesmo método, foi confirmada comunicação por porta local em 1.260 sites da UE e 1.312 dos EUA
- Em muitos desses sites, o rastreamento era executado automaticamente mesmo sem procedimento de consentimento para cookies
History
- Yandex: começou a usar portas HTTP/HTTPS em 2017
- Meta: migrou gradualmente de HTTP em setembro de 2024 para WebSocket em novembro de 2024, WebRTC STUN em 2025 e TURN em maio
Abuse Vectors
- A principal causa é a ausência de restrições ao acesso a sockets de localhost no Android e políticas de sandbox insuficientes
- Configurações de permissão, modo anônimo do navegador, reset do ID de publicidade e todas as demais proteções eram contornadas
- Embora seja difícil diferenciar isso de usos legítimos para desenvolvimento web, o caso permanece como uma comprovação prática de rastreamento em larga escala
- Navegadores como Chrome, Firefox, DuckDuckGo e Brave estão aplicando correções emergenciais, mas, no nível estrutural, será necessário reforçar permissões e avisos da plataforma, sandbox e políticas de IPC
Disclosure
- Foi solicitada divulgação responsável e cooperação aos fornecedores de navegadores como Chrome, Firefox, DuckDuckGo e Brave
- Chrome (versão 137), Firefox (versão 138) e Brave, entre outros, adotaram medidas de curto prazo como bloqueio de portas vulneráveis e bloqueio de SDP Munging
- No longo prazo, destaca-se a necessidade de melhorias estruturais, como controle de acesso à rede local, reforço do sandbox e orientação ao usuário
| Navegador | Versão | Yandex | Situação de resposta/bloqueio | |
|---|---|---|---|---|
| Chrome | 136.0+ | Afetado | Afetado | A partir da 137, bloqueio de portas e de SDP munging; implementação gradual |
| Edge | 136.0+ | Afetado | Afetado | Incerto (baseado em Chromium) |
| Firefox | 138.0.2 | Afetado | Não afetado(1) | Bloqueio de SDP munging; bloqueio de UDP previsto para depois |
| DuckDuckGo | 5.233.0 | Parcialmente afetado(2,3 | Não afetado(2,3) | Bloqueio com base em lista |
| Brave | 1.78.102 | Não afetado(3,4) | Não afetado(3,4) | Desde 2022, exige consentimento do usuário para requisições a localhost; lista de bloqueio aplicada |
- 1: SDP Munging bloqueado; portas TURN ainda não bloqueadas (previsto para depois)
- 2,3,4: Diversas defesas, como lista de bloqueio, bloqueio de portas e consentimento do usuário
Situação de conscientização de usuários e operadores
Operadores de sites
- A documentação oficial da Meta e da Yandex nunca divulgou esse método
- Desde setembro de 2024, fóruns de desenvolvedores do Facebook receberam perguntas como "por que o script do Pixel acessa localhost?", mas sem qualquer resposta oficial
- A maioria dos operadores de sites e usuários finais não tinha conhecimento disso. O rastreamento era possível mesmo quando o usuário não estava logado, estava em modo anônimo ou havia apagado os cookies
Usuários comuns
- O rastreamento funciona independentemente do estado de login
- Modo anônimo, exclusão de cookies e outras proteções são neutralizados
- Há muitos casos em que ele funciona até em sites sem procedimento de consentimento para cookies
Resumo do FAQ
- Q: Por que a Meta interrompeu esse método logo após a divulgação?
A: Não houve resposta oficial, mas foi confirmado que, após a divulgação, o envio de pacotes para usuários Android foi interrompido - Q: A pesquisa passou por peer review?
A: Foi verificada por algumas instituições, mas, antes da revisão formal do artigo, decidiu-se divulgar rapidamente por causa da escala do abuso - Q: Isso está documentado oficialmente pela Meta/Yandex?
A: Não há documentação técnica oficial; existem apenas perguntas em fóruns de desenvolvedores - Q: iOS ou outras plataformas também são afetados?
A: Até agora, isso só foi confirmado no Android, mas tecnicamente há risco potencial também em iOS, desktop e smart TVs
11 comentários
Achei estranho o consumo alto de bateria, então tinha apagado todos os apps da Meta, mas pelo visto isso estava acontecendo mesmo... Acho que vou ter que remover via adb também o resto dos apps de sistema embutidos no Galaxy.
Eu também não consigo confiar nos apps da Meta, então não uso; em vez disso, só acesso pelo Chrome dentro da Pasta Segura.
A maioria dos frameworks chamados de aplicativos web híbridos levanta um servidor web em
localhost(embora com objetivos diferentes). A ideia é resolver, no servidor web rodando emlocalhost(parte nativa), coisas da configuração da biblioteca de navegador embutida (WebKit...) ou outras que não podem ser resolvidas nem com personalização (parte web). Dava para usar isso desse jeito também... que pena.Na minha opinião, em apps híbridos, a forma comum de comunicação entre web e app é por meio de APIs fornecidas pelo sistema operacional e pelo navegador, também chamadas de bridge. Não considero um servidor web local algo obrigatório.
Acho que o motivo de o uso de um servidor web local aí ter se tornado um problema é que ele pode permitir vulnerabilidades como, por exemplo, acessar uma porta de localhost pelo Chrome em modo anônimo e quebrar o anonimato do usuário. Se esse tipo de tecnologia for indispensável em apps híbridos... então os apps híbridos é que deveriam desaparecer.
É comum abrir e usar um servidor web dentro do app para lidar com recursos que exigem um nome de domínio, como
localStorage.Se você não paga pelo serviço, então eu sou o produto. As tentativas de rastrear pessoas cada vez mais por meio de dados vão aumentar, e não parece possível reverter essa tendência. Precisamos de alternativas melhores, mas sob o capitalismo não consigo imaginar muito bem quais seriam essas alternativas.
Fiquei curioso se o acesso ao
localhostde dentro e de fora da Pasta Segura da Galaxy é isolado.Não há isolamento. Se eu executar o
http.serverdo Python com o Termux fora da Pasta Segura e acessar por dentro com o Chrome, a conexão funciona.Isso não é uma brecha de segurança, não? -_-??
Acho que a resposta certa é não usar redes sociais..
Comentários do Hacker News
Pelo que entendi do processo geral de rastreamento usado pela Meta, com base no blog Localmess
Mesmo no modo anônimo, ainda é possível rastrear
_fbp(com informações de navegação) para o app do Instagram ou Facebook usando a técnica de SDP munging do WebRTC (STUN)Essa parte do processo não aparece nem nas ferramentas de desenvolvedor do navegador
O app envia as informações do
_fbpe o ID do usuário aos servidores da MetaOutros pontos que chamam atenção:
Essa forma de compartilhar ID da web para o app contorna proteções de privacidade comuns, como apagar cookies, modo anônimo e controle de permissões do Android
Abre até a possibilidade de apps maliciosos espionarem a atividade web do usuário
Desde meados de maio, o script do Meta Pixel também passou a enviar o cookie
_fbpvia WebRTC TURN; esse método foi adotado depois que a equipe do Chrome bloqueou o SDP mungingEm 2 de junho de 2025, ainda não foi observado o app do Facebook/Instagram realmente recebendo dados por essa nova porta
Se o principal uso do WebRTC é obter coisas como o IP local do usuário e, assim, desanonimizá-lo, não entendo por que isso pode ser executado sem pedir permissão separada
Dependendo do país, visitar um site como something-embarassing.com pode levar a consequências muito mais graves do que mero constrangimento
Não entendi completamente, mas fico me perguntando se isso inclui explorar avisos obrigatórios de consentimento de cookies da GDPR para rastrear pessoas secretamente
Eu queria simplesmente proibir publicidade e rastreamento na internet
Essas coisas geram um monte de lixo sem sentido
Na minha visão, tudo isso existe para CEOs comprarem mais um iate
O Reddit também coleta bastante fingerprinting de dispositivo
E está vendendo esses dados para treinamento de modelos de IA
Aposto que logo chegará o dia em que vão vender agressivamente até dados privados acessíveis só em apps premium
Ainda fica a dúvida de como isso poderia ser proibido, e como provar que alguém violou essa lei
A iniciativa de expulsar cookies de terceiros do navegador era, na prática, o primeiro passo mais realista
Mas o Google usou o domínio do Chrome para sabotar isso no ano passado
Pode não ser ilegal, mas foi uma manipulação de mercado antiética que deveria ter provocado indignação dos consumidores
Parece que os executivos do Google no começo acreditavam que conseguiriam manter a receita sem cookies; na prática, talvez nunca tenham entendido o papel deles, ou talvez nunca tenham pretendido removê-los
Esse tipo de comportamento é pura ganância
Gestores tradicionais bem-sucedidos ao longo de séculos se mantiveram longe desse tipo de obsessão excessiva por benefício próprio
Mesmo líderes apenas razoáveis normalmente conseguem ir além desse nível baixo de conduta e administrar melhor suas empresas
Mas, num mundo em que só resta a ganância, só dá para rir da situação
Seria bom se existissem CEOs mais honestos e competentes
Complementando a piada do “iate do CEO”, a verdade é que a maioria dos consumidores prefere serviços/produtos que não precisam ser pagos, então escolhem o modelo com anúncios
Na prática, quando há versões paga e com publicidade, a com anúncios costuma ganhar de 10 para 1
O bloqueio de anúncios piora ainda mais a situação — a resistência de verdade deveria ser boicotar o serviço ou pagar diretamente por alternativas
Uma estrutura como o BAT (Brave Attention Token), que distribui micropagamentos diretamente aos sites, me parece mais sensata
A teoria é: eu pago pelo que uso, e eu viro o cliente de verdade, não o anunciante
Relatório técnico real: blog Localmess
O Google diz que está investigando casos de abuso, mas, ironicamente, o próprio Google rastreia todo mundo usando vários canais laterais, como nomes de APs Wi‑Fi
Grandes empresas de apps continuam coletando dados de formas parecidas para escapar das limitações do sistema operacional
Mais um motivo para evitar instalar apps de big tech e usar o site só quando for realmente necessário
O site é mais lento e menos conveniente, mas por estar em sandbox é muito mais seguro
Por exemplo, em celulares Samsung vários apps da Meta vêm pré-instalados, e mesmo apagando o app do Facebook às vezes ficam serviços ocultos como
com.facebook.servicesEsses serviços só podem ser removidos com ferramentas de desenvolvedor (ADB/UAD)
Ou então recomendo um iPhone ou um Pixel
Informações técnicas sobre o script do Meta Pixel:
Até outubro de 2024, o Meta Pixel enviava por HTTP, e os apps do Facebook/Instagram continuam escutando nessa porta até hoje
Também estão escutando na nova porta 12388, mas ainda não foi encontrado nenhum script que envie dados para essa porta
Dito isso, existe uma curiosidade “científica” sobre se outro app poderia mandar mensagens falsas para essa porta
Uma é não enviar nada; a outra é enviar uma tonelada de dados falsos
Seria legal até existir um dispositivo que compartilhasse cookies de rastreamento de anunciantes via P2P
Fico me perguntando se esse rastreamento pode atravessar perfis
Se puder, do ponto de vista corporativo isso é um enorme problema de segurança
Testei subindo um servidor na porta 8080 em um app de userland, e ambos os perfis conseguiam acessá-lo
Isso significaria que um app infectado em um perfil pode trocar dados com sites acessados em outro perfil
Fico pensando se, quando uma pessoa coleta informações do computador de outra dessa forma, ela poderia ser punida pela CFAA (Computer Fraud and Abuse Act)
Esse método exige controle de código dos dois lados: de um lado o site visitado e, do outro, o app rodando no celular
Não é uma técnica de hacking mágica para roubar qualquer histórico do navegador de forma arbitrária
Por isso é difícil chamar isso claramente de hacking, e mesmo que Google/Meta façam rastreamento sem consentimento, isso provavelmente não se enquadraria na CFAA
Na verdade, já houve pessoas processadas pela CFAA por coisas tão simples quanto usar “ver código-fonte da página” no navegador
Parece que importa menos o ato em si e mais em quem você mexeu, a rede e o relacionamento envolvido
Há possibilidade de punição
Esse sistema de ID era fácil demais de abusar, e imagino que o Google soubesse disso e também soubesse que teria de criar regras de prevenção obrigatórias
É o tipo de problema que poderia levar a penalidades como banimento permanente da Play Store, ação judicial ou até denúncia criminal
Mas, na prática, quando a empresa é grande demais, como a Meta, sanções reais se tornam quase impossíveis
(E, mesmo que não fosse a Meta, esse tipo de comportamento suspeito pode até contar com aprovação tácita de agências de inteligência ou de aplicação da lei — é muito difícil fazer isso parar, e até falar sobre o assunto já não é simples)
Eles têm mais de 50 jeitos próprios de rastrear
Outras empresas também ganham muito dinheiro renegociando cláusulas de compartilhamento de dados com as gigantes
Os acordos já foram fechados, as permissões já foram concedidas, e só alguns usuários estão fazendo barulho por causa disso
No Firefox, dá para bloquear o WebRTC mudando
media.peerconnection.enabledparafalseemabout:configCombinando Netguard e Nebulo em modo non-VPN, dá para bloquear conexões desnecessárias com os servidores da Meta
Acho que a União Europeia (UE) deveria impor multas em nível recorde para esse tipo de problema
Também seria bom adotar um imposto progressivo de 1~X% cada vez que reincidissem
E talvez criar junto um site onde fosse possível ver de relance as violações de cada empresa
A Meta paga multas todo ano e mesmo assim registra algo como US$ 70 bilhões de lucro líquido anual
Não bastam multas; em alguns casos seriam necessárias medidas ainda mais duras, já que indivíduos já foram presos por infrações muito menores