Impressão digital do navegador

HEISENBERG

ADMIN
ADMIN
Joined
Jun 24, 2021
Messages
1,644
Solutions
2
Reaction score
1,709
Points
113
Deals
666
Muitas pessoas utilizam as Redes de Anonimato para ocultar o seu endereço IP e a sua localização - mas existe outra forma de ser identificado e rastreado: através da impressão digital do browser.

Sempre que está online, o seu computador ou dispositivo fornece aos sites que visita informações altamente específicas sobre o seu sistema operativo, definições e até hardware. A utilização destas informações para o identificar e localizar online é conhecida como impressão digital do dispositivo ou do browser.

À medida que os navegadores se tornam cada vez mais interligados com o sistema operativo, muitos detalhes e preferências únicos podem ser expostos através do seu navegador. A soma total destes resultados pode ser utilizada para criar uma "impressão digital" única para efeitos de rastreio e identificação.
A impressão digital do browser pode refletir:
  • o cabeçalho User agent;
  • o cabeçalho Aceitar;
  • o cabeçalho Connection;
  • o cabeçalho Encoding;
  • o cabeçalho Language;
  • a lista de plugins;
  • a plataforma;
  • as preferências de cookies (permitidos ou não);
  • as preferências de Não rastrear (sim, não ou não comunicado);
  • o fuso horário;
  • a resolução do ecrã e a sua profundidade de cor;
  • a utilização de armazenamento local;
  • a utilização do armazenamento de sessão;
  • uma imagem apresentada com o elemento HTML Canvas;
  • uma imagem renderizada com WebGL;
  • a presença do AdBlock;
  • a lista de tipos de letra.
A eficiência da identificação desta forma está bem descrita aqui: http://yinzhicao.org/TrackingFree/crossbrowsertracking_NDSS17.pdf

Os sítios Web de teste de impressões digitais do navegador são muito precisos?

Sim e não.

Sim, estes sítios Web fornecem informações precisas sobre a impressão digital do seu navegador e os diferentes valores recolhidos.

Não, a conclusão de "exclusividade" sobre o seu navegador a partir destes sítios Web pode ser extremamente imprecisa e muito enganadora. Eis porquê:

Amostra de dados: Cover Your Tracks e amiunique.org estão a comparar a impressão digital do seu navegador com uma base de dados gigante de navegadores antigos e desactualizados - muitos dos quais já não são utilizados. Quando testa a impressão digital do seu navegador com um navegador atualizado, este pode mostrá-la como sendo extremamente rara e única, mesmo que a maioria das pessoas esteja a utilizar a mesma versão actualizada. Por outro lado, a execução do teste com um browser antigo e desatualizado pode mostrar um resultado muito bom (não único) quando, na realidade, muito poucas pessoas estão a utilizar o browser antigo atualmente.
Resolução do ecrã: Pelo menos nos computadores de secretária, a maioria das pessoas ajusta regularmente o tamanho do ecrã do seu programa de navegação. Cada valor menor do tamanho do ecrã será medido como um fator de exclusividade, o que pode ser enganador.
Impressões digitais aleatórias: Outro problema com esses sites de teste é que eles não levam em conta impressões digitais aleatórias que podem ser alteradas regularmente por meio de extensões de navegador. Este método pode ser uma forma eficaz de impedir a recolha de impressões digitais no mundo real, mas não pode ser testado/quantificado através destes sítios.


Em geral, os sites de teste de impressões digitais do navegador são bons para revelar as informações e valores únicos que podem ser processados a partir do seu navegador. No entanto, para além disso, tentar vencer o teste obtendo a pontuação mais baixa de "exclusividade" pode ser uma perda de tempo e contraproducente.

Aqui estão algumas boas maneiras de atenuar a impressão digital do navegador:
Recomenda-se vivamente que tudo o que possa ser considerado relacionado com a Darknet não seja feito no sistema operativo normal ou no browser predefinido. É aconselhável ter um dispositivo separado para este efeito.

Não te esqueças de estudar:
https://amiunique.org/ é outro bom recurso. É de código aberto e fornece mais informações e técnicas de impressão digital actualizadas, incluindo webGL e canvas.
 
Last edited by a moderator:

Chemman

Don't buy from me
New Member
Joined
Oct 15, 2021
Messages
4
Reaction score
5
Points
3
Há algum precedente em que um traficante de droga tenha sido detido por identificar as impressões digitais do navegador?
A JS é assim tão perigosa para a darknet?
 

Alenciss

Don't buy from me
New Member
Joined
Oct 28, 2021
Messages
1
Reaction score
0
Points
1
Há uma série de vulnerabilidades conhecidas que foram utilizadas para desanonimizar os utilizadores do Tor através do JavaScript.

O primeiro grande incidente em que isso aconteceu foi com a apreensão do "Freedom Hosting" pelo FBI. O FBI manteve os servidores online, e depois instalou paylods javascript que exploravam um exploit de dia zero no Firefox. Isto fez com que os computadores ligassem de volta para um servidor do FBI a partir do seu IP real e não anónimo, levando à desanonimização de vários utilizadores. Pode ler mais sobre este assunto no Ars Technica.

Em geral, a ativação do JavaScript abre a superfície para muitos outros ataques potenciais contra um navegador da Web. No caso de um adversário sério, como uma entidade apoiada pelo Estado (por exemplo, o FBI), este tem acesso a explorações de dia zero. Se os vectores para esses zero-days estiverem desactivados (por exemplo, JavaScript), então eles podem ter dificuldade em encontrar uma exploração viável, mesmo que tenham acesso a zero days, etc.

A única razão pela qual o projeto Tor permite que o JavaScript esteja ativado por padrão no navegador Tor é a usabilidade. Muitos usuários do Tor não são tecnicamente experientes, e o JavaScript é comumente usado com HTML5 em sites modernos. Desativar o JavaScript faz com que muitos sites sejam inutilizáveis, portanto, ele é ativado por padrão.

Como prática recomendada, deve-se desabilitar o JavaScript no navegador Tor e manter o NoScript habilitado para todos os sites, a menos que se tenha uma razão extremamente convincente para não fazê-lo.
 

MuricanSpirit

Don't buy from me
New Member
Joined
Nov 6, 2021
Messages
73
Reaction score
48
Points
18
Afaik WebRTC - utilizado sobretudo como voip - também pode ser utilizado para recolher impressões digitais (a API mostra quais os dispositivos disponíveis, por exemplo, o Chrome revela se tem um controlador da Xbox ligado).

Uma técnica única de recolha de impressões digitais não baseada em js é a utilização de css, respetivamente a consulta @media (visualização reactiva), para recolher impressões digitais, "descarregando sempre uma nova imagem" quando o tamanho do browser é alterado. Assim, eles podem saber se o utilizador tem um monitor de 4k ou se está a correr uma vm (a maioria das vms tem apenas 2 tamanhos disponíveis por defeito). A única maneira de "evitar" essa impressão digital é não alterar o tamanho do navegador tor depois de iniciado (ele iniciará em seu tamanho padrão).

Por exemplo.

@media only screen and (max-width: 600px) { body { background: url("maxwidth600.png") } }

Desta forma, o servidor sabe qual é a largura do browser. O ponto final (por exemplo, /images/widthWHATEVER.png) nem sequer tem de devolver uma imagem e, mesmo assim, o browser pedirá sempre uma quando estiver a redimensionar.

Podem também utilizar o seu "comportamento de redimensionamento" para o identificar, por exemplo, se for o único utilizador de 1 000 000 de amostras que redimensiona repetidamente da largura x para a largura y.

Há tantas técnicas para o identificar que é inacreditável. O melhor é evitar qualquer sítio em que não se confie.
 

HEISENBERG

ADMIN
ADMIN
Joined
Jun 24, 2021
Messages
1,644
Solutions
2
Reaction score
1,709
Points
113
Deals
666
A única solução sensata(y)
 

MuricanSpirit

Don't buy from me
New Member
Joined
Nov 6, 2021
Messages
73
Reaction score
48
Points
18
Seguir o rato sem js (apesar de expirado, nunca vi ou ouvi dizer que é utilizado):

Funciona no backend basicamente da mesma forma que o "resolution fingerprinting", carregando uma imagem (o servidor pode responder com 404 not found) que informa o backend das coordenadas do rato.

// nunca tentei .main { -z-index: 999999; // colocar por cima de tudo width: 100%; height: 100%; position: absolut; top: 0; left: 0; pointer-events: none; // deixa o rato clicar } // digamos que te preocupas com cada movimento de 1px, resultando em muitos pedidos ruidosos, provavelmente usarias grelhas de 20-100px .main grid00 { // representando o primeiro pixel superior esquerdo x:0 y:0 background: url("position0_0.png"); width: 1px; height: 1px; } .main grid01 { // representando o primeiro pixel superior esquerdo x:0 y:1 background: url("position0_0.png"); width: 1px; height: 1px; } // etc. Obviamente, essas regras de css seriam geradas através do scss (imagine-o como [I]scripted css[/I] que gera css padrão)


Pode utilizar a data para saber se o utilizador está ativo no separador, classificar o comportamento do rato (por exemplo, a que velocidade o move, qual é a sua posição preferida, se utiliza o rato para ler o texto, etc.)

Pode criar regras css para cada botão para saber "como é que o utilizador prime um botão" (move-se de baixo para cima, velocidade do movimento, etc.) e, claro, que posição prefere nos próprios botões
 
Last edited:

cederroth

Don't buy from me
New Member
Joined
Aug 1, 2022
Messages
13
Solutions
1
Reaction score
12
Points
3
Recomendo que não se faça mais do que uma coisa ao mesmo tempo quando se usa tor, ou tails.
Quando quiseres fazer outra coisa, sai do tails e volta a entrar. Isso cria um novo id.
Se fizeres muitas coisas ao mesmo tempo, podes ser capaz de ligar pontos em que não pensas.
 
Top