A página que mostra tudo o que o navegador revelou
(sinceyouarrived.world)- Esta página mostra localização, dispositivo, navegador, idioma, GPU, bateria, fontes e preferências do usuário usando apenas os dados que o navegador enviou nos primeiros milissegundos após a visita, sem exploits nem invasões, apenas com recursos padrão publicamente documentados
- Ela envia o endereço IP de todos os cabeçalhos de requisição para ip-api.com · Free tier · CC-BY-SA para convertê-lo em cidade e nome do provedor de internet; informa que a consulta não é armazenada e que só exibe alguns octetos na tela, embora o restante também possa ser conhecido
- A impressão digital por fontes detecta fontes instaladas pela largura do texto renderizado, e a Electronic Frontier Foundation · Cover Your Tracks oferece uma ferramenta para verificar a singularidade do navegador; um estudo de Princeton de 2014 encontrou impressão digital por canvas em 5% dos 100.000 principais sites
- Embora não execute isso na página, existem a Clipboard API, que pode solicitar a leitura do último conteúdo copiado com um único gesto do usuário, “The Leaking Battery”, que mostrou a possibilidade de rastreamento por até 30 minutos com nível e tempo de descarga da bateria, e uma técnica para detectar sites em que o usuário está logado via favicon
- Informa que só enviou ao servidor dois eventos anônimos, chegada e conclusão, não armazena nada em
cookies,localStorage,sessionStorage,IndexedDBnem no cache do service worker, e esquece o visitante quando a aba é fechada
Informações que o navegador forneceu logo ao chegar
- Todas as observações de taken. vêm de dados do navegador do visitante nos primeiros milissegundos após a visita, sem exploits, vulnerabilidades ou invasões, usando apenas recursos padrão publicamente documentados
-
Localização
- O endereço IP incluído em todos os cabeçalhos de requisição é enviado para ip-api.com · Free tier · CC-BY-SA para ser convertido em cidade e nome do provedor de internet
- A consulta é temporária e não é armazenada por nenhum dos lados; a tela mostra apenas o primeiro e o último octeto do IP, mas informa que o restante também pode ser conhecido
- No GDPR, endereços IP podem ser considerados dados pessoais quando usados para rastreamento, e o taken. afirma não rastrear, reter nem registrar logs
-
APIs do navegador
- Observações do dispositivo, como tela, navegador, idioma, GPU, número de núcleos, bateria, fontes e preferências do usuário, são obtidas por APIs JavaScript padrão publicamente documentadas em MDN Web Docs · Mozilla · CC-BY-SA 2.5
- É um comportamento possível pelo próprio design do navegador, levando à conclusão de que “o problema é o design”
-
Impressão digital por fontes e canvas
- A técnica de impressão digital por fontes, que detecta fontes instaladas pela largura do texto renderizado, é documentada desde 2010, e a Electronic Frontier Foundation · Cover Your Tracks oferece uma ferramenta para verificar o quão singular é um navegador
- A maioria dos navegadores é singular o bastante para ser rastreada na web aberta mesmo sem cookies, e a combinação de fontes é um dos sinais mais fortes
- Um estudo de 2014 do Princeton University · Web Transparency & Accountability Project documentou pela primeira vez a impressão digital por canvas na web real e a encontrou em 5% dos 100.000 principais sites
- A impressão digital por canvas funciona fazendo o navegador do visitante desenhar uma imagem oculta e depois relendo os pixels renderizados como identificador; o taken. não executou essa técnica, mas o navegador a suporta
-
Área de transferência e bateria
- Segundo a MDN · Clipboard API specification, com um único gesto do usuário, como clique ou toque, uma página pode solicitar a leitura do último conteúdo copiado
- O último conteúdo copiado pode ser uma senha, endereço ou mensagem em rascunho; o taken. não solicitou isso, mas o recurso existe nos navegadores modernos
- O artigo de 2015 “The Leaking Battery”, de Olejnik, Englehardt e Narayanan, mostrou que só a combinação de nível de bateria e tempo de descarga pode rastrear visitantes por até 30 minutos em vários sites, sem cookies nem contas
- O Firefox removeu essa API em 2016, mas Chrome e Edge ainda a expõem
Técnicas não executadas e dados não deixados
-
Detecção de sites com login ativo
- Embora o taken. não a execute, existe uma técnica documentada, legal e amplamente distribuída que faz o navegador carregar a URL do favicon de um serviço específico e observa sucesso ou falha para detectar em quais sites o usuário está logado
- Ela explora a diferença entre imagens retornadas em estados logado e deslogado e pode revelar, sem permissão, o login em serviços como Facebook, Google, X, GitHub, Reddit e LinkedIn
-
Código de barras calculado no navegador
- As 16 linhas exibidas abaixo da contagem são formadas por alturas derivadas de GPU, fontes, tamanho de tela, idioma, fuso horário, sistema operacional, navegador e profundidade de cor
- Os mesmos dados produzem o mesmo código de barras, visitantes diferentes veem códigos diferentes, e o cálculo acontece apenas dentro do navegador, sem ser enviado
- Se houver alguém com exatamente a mesma impressão digital, verá as mesmas barras, mas essa chance é pequena
-
Como as frases são geradas
- Todas as frases foram escritas manualmente por Matt, e nenhum modelo de linguagem escreve ou corrige frases no momento da execução
- O código escolhe um dos modelos de frase previamente escritos conforme os valores retornados pelo navegador, e foi feito para não dizer nada quando a condição não puder ser tratada por uma frase escrita por humanos
-
O que foi enviado ao servidor
- Os únicos eventos enviados ao servidor foram dois eventos anônimos, chegada e conclusão, sem cookies, identificadores nem IPs armazenados
- O servidor descarta o corpo de cada requisição e não retorna nada; registros da camada de transporte de que houve uma requisição podem permanecer em log pelo período padrão de retenção do provedor de hospedagem, normalmente alguns dias
- A maioria dos sites envia centenas de beacons adicionais para anunciantes, coletores de impressão digital, ferramentas de replay de sessão e gerenciadores de tags, mas o taken. envia apenas dois ao próprio servidor e informa esse fato
-
O que foi armazenado no dispositivo
- Nada é armazenado em
cookies,localStorage,sessionStorage,IndexedDBnem no cache do service worker - Os dados mostrados na tela foram calculados dentro do navegador e, exceto pela consulta de geolocalização por IP e pelos dois eventos anônimos, não saem do dispositivo
- Ao fechar a aba, o taken. esquece o visitante e conclui, junto com a abertura do código-fonte, que “a maioria das páginas não pode dizer isso”
- Nada é armazenado em
-
Contexto da série e criação
- O Vol. I trata do que aconteceu no mundo enquanto o visitante permaneceu ali, o Vol. II do céu que ele perdeu, o Vol. III do que já estava sob seus pés, e o Vol. IV vai afunilando até o próprio visitante
- A página foi criada por Matt na Rise Up Labs, e as edições seguintes serão publicadas no X e no Bluesky
1 comentários
Comentários do Hacker News
Nem estou nessa cidade. Forçando bastante, no máximo dá para dizer que estou rodando algo parecido com Linux com algo parecido com Chrome em cima, e ninguém consegue deduzir quando eu trabalho ou durmo. Nem eu sei
Esse tal display moderno e avançado é na verdade a tela de um tablet barato que comprei no supermercado há 5 anos, e mesmo assim a coleta de impressão digital do navegador continua irritante. Se conseguem detectar o modo claro, não dava para respeitar essa configuração também?
Dizem “English · Chinese” e sugerem que o idioma principal do navegador e os idiomas adicionais revelam onde a pessoa cresceu, onde mora e até com quem vive, mas ter inglês e chinês como idiomas de entrada não revela nada disso. É parecido com dizer que “o fato de alguém acessar a internet pelo celular revela que essa pessoa consegue acessar a internet pelo celular”. Tecnologias interagem entre si, é assim que elas funcionam. É orwelliano, mas daí a dizer que é mais orwelliano do que Estados de vigilância como Rússia/China/Coreia do Norte é outra história. Compartilhar localização ajuda a encontrar celular, carro e outros dispositivos; atividades online podem ajudar a encontrar criminosos; e também podem registrar crimes ou casos em que seja necessário cobrar responsabilidade da polícia. Ver o excesso de intrusão da tecnologia como uma catástrofe é uma escolha cognitiva, mas é bom estar ciente do que nossas tecnologias “sabem” sobre nós
Concordo totalmente com a parte do modo claro. Estou na metade dos 30 e alguns desses sites em modo escuro me fazem sentir como se eu tivesse mais de 80. Neste site eu realmente não consigo ver nada
Queria que os defensores da privacidade falassem de forma normal pelo menos uma vez. Tentar vender o fato de o navegador ter acesso ao fuso horário como se fosse algo maligno não vai convencer ninguém
A questão não é se a informação está correta ou não. A questão é que ela serve para me identificar mesmo sem cookies. Procurando um site melhor, achei o da EFF útil
Lá dizia que minha impressão digital do navegador era única entre os visitantes dos últimos 45 dias: https://coveryourtracks.eff.org/
Se você visita sem JavaScript, aparece: “Se o JavaScript estiver desativado, a página não pode dizer o que o navegador revelou. Os dados ainda estão lá. A revelação ainda aconteceu. A única coisa que para é a explicação.”
Esse tom exagerado de LLM é muito irritante, mas pelo menos serve de sinal de que posso ignorar tudo sem culpa
Não sei se é porque estou velho ou porque trabalho com software para internet há quase 30 anos, mas nada disso me parece surpreendente nem preocupante
Alguém cria um servidor que aceita conexões, e alguém envia uma requisição de conexão para esse servidor. Não houve acordo, nem expectativas, nem regras definidas. O servidor não é obrigado a aceitar toda requisição, e ninguém é obrigado a fazer requisição para aquele servidor. O que o servidor devolve e como o cliente lida com isso fica por conta de cada um
Sinto que esse acordo, ou essa ausência de acordo, vale para os dois lados. Não acho que o usuário deva ficar bravo porque um site usa as informações da requisição da forma que quiser, mas o site também não deveria ficar bravo porque eu trato os dados que recebo como eu quiser. Ou seja, o site pode guardar meu endereço IP e os detalhes da requisição o quanto quiser, e eu posso fazer o que bem entender com a resposta recebida. Posso bloquear anúncios, recusar requisições subsequentes que o site mande fazer ou exibir a resposta da forma que eu quiser. Eu pedi os dados, e eles enviaram os dados
Se há informações sobre mim que eu não quero revelar, então elas não deveriam ir na requisição. Se o site só quer enviar os dados sob a condição de eu ver anúncios, então deveria me fazer concordar com isso antes de enviar os dados. Claro, no mundo real a maioria das pessoas não sabe o que o navegador faz, não tem muitas escolhas reais sobre o que ele envia, e a internet deixou de ser algo opcional na vida. Coisas como DDoS também tornam irreal um modelo totalmente “vale tudo”. Ainda assim, tenho a intuição de que, ao fazer uma requisição na internet, não devemos esperar demais de nenhum dos lados
Na prática, o navegador é agente de outra pessoa. Trabalha para desenvolvedores web, oferecendo todo tipo de coisa que facilita a vida deles. Trabalha para anunciantes, fornecendo pistas de rastreamento e fingerprinting. Trabalha para os desenvolvedores do próprio navegador, coletando métricas, telemetria e outros dados que nem sabemos quais são. Mas já não trabalha mais de verdade para mim. Eu sou só um passageiro no carro
Eu entendo que o endereço IP não é algo que o navegador consiga controlar e que, para se conectar a um site, ele inevitavelmente precisa ser revelado. Mas o fato de que, no estado padrão e sem VPN, um IP possa ser mapeado de forma estável para país, estado/província e às vezes até cidade é uma falha de projeto terrível. É um grande problema de projeto na forma como os IPs são distribuídos. Num mundo melhor, o endereço IP por si só não deveria revelar a localização geográfica de alguém
Quando o cliente envia cabeçalhos de idioma ou a lista de fontes compatíveis, isso não significava que o servidor podia “fazer o que quisesse com esses dados”. Havia motivos reais quando criamos esses padrões. O fato de provedores de sites, ou mais especificamente redes de anúncios, terem decidido usar isso para outra finalidade quebra esse acordo implícito. Claro, talvez eu esteja esperando demais
Acertaram o nível de bateria do meu celular e a inferência sobre o dispositivo. Leram corretamente giroscópio e interações com touchscreen, e mostraram como isso pode ser usado para identificação e inferência. Dá até para inferir se você está sentado, em pé ou deitado. O começo é lento, mas depois fica interessante
Essa ideia de que ninguém deve nada a ninguém funcionava bem antigamente, quando em geral se podia presumir boa-fé da maioria dos agentes. Mas, quando o dinheiro e o poder da internet viraram realidade, a relação ficou mais adversarial. As premissas de confiança e a falta de responsabilidade facilitam que um lado explore a boa-fé do outro. E, por causa do desequilíbrio técnico e de poder inerente à arquitetura servidor-cliente da web, os abusos também tendem a fluir em uma direção só
O site é bonito e as frases exageradas até são divertidas, mas há demos de fingerprinting muito melhores
A quantidade de pontos de dados mostrados aqui é pequena. Dá para verificar muito mais coisa, e boa parte do que aparece parece errada. Só detectou explicitamente um item como “withheld”, mas na prática parece que há vários itens ocultos distorcendo a saída. Precisa de controle de qualidade
Parece o EFF Cover Your Tracks feito com vibe coding. O fato de isso ter ido parar na front page assusta mais do que o conteúdo
Dá para ver muito mais coisa aqui. Também já existe bastante trabalho anterior sobre supercookies e fingerprinting
https://coveryourtracks.eff.org/
https://amiunique.org/
Uau, parece que alguém usando ChatGPT descobriu o conceito de cabeçalhos do navegador e resolveu enfiar frases estranhas como “decidimos não contar a você”
Se você realmente quer saber o que seu navegador está enviando, veja aqui:
https://browserleaks.com/
https://coveryourtracks.eff.org/
“Nós não pedimos sua localização. Seu endereço chegou antes de você” é bobagem. Eles consultaram meu endereço IP como chave numa API/serviço de geolocalização, então sim, pediram minha localização
E o IP é praticamente obrigatório para a comunicação na internet funcionar. Há formas de usar serviços que o escondem, mas aí esse serviço passa a ter minhas informações
Se você tem um dicionário, não precisa necessariamente perguntar ao seu interlocutor o significado de uma palavra; pode procurar no dicionário. A palavra pode ter vários sentidos, ou ser gíria, e aí você pode inferir errado. Para corrigir essa imprecisão, talvez precise de outros pontos de dados, como o contexto da conversa, ou então pedir confirmação diretamente à pessoa
E, claro, o endereço chega antes. Senão não haveria como devolver os dados solicitados