Instruções

Como usuários na internet são rastreados através do JavaScript

  • 20 de set. de 2023, 20:50
  • 9 minutos

Como usuários na internet são rastreados através do JavaScript

Você provavelmente já notou que, ao acessar sites como YouTube, Netflix ou Google Maps, o conteúdo é carregado automaticamente e as páginas se adaptam perfeitamente ao seu dispositivo e navegador.

Isso ocorre porque os sites identificaram seu dispositivo e carregaram seu conteúdo usando JavaScript. Além de tornar os sites interativos, o JavaScript coleta informações pessoais dos usuários, que poderiam ser usadas por anunciantes ou hackers. 

No quarto artigo da nossa série "Segurança na Internet", explicamos o que é JavaScript e como ele é usado para rastrear pessoas na internet.

O que é JavaScript 

JavaScript é uma linguagem de programação que permite animar sites e criar conteúdos dinamicamente controlados, como menus, sons e outros elementos interativos. Anteriormente, essa linguagem era usada apenas para funções simples, como por exemplo, ajudar a verificar se todos os campos de um formulário de registro haviam sido preenchidos antes do envio.

Atualmente, o JavaScript é usado para criar os mais variados tipos de aplicativos web, como mapas interativos, gráficos 2D/3D animados e players de vídeo no navegador.

Funciona da seguinte maneira:  o usuário realiza determinada ação → o navegador a identifica → ativa o código JS → a mudança desejada ocorre na página.

Além disso, usando JavaScript também é possível obter informações sobre o usuário que interagiu com o script. Por exemplo, muitos sites confirmam qual navegador está sendo utilizado pelo visitante. As meta tags contêm links para scripts que são executados após a abertura da página, e assim que uma pessoa acessa determinado site, o código é ativado para identificar de qual navegador veio o acesso.

Outros scripts podem ser executados automaticamente e ler informações da sua tela ou ações realizadas no site.

O que o JavaScript pode revelar sobre você

Graças ao JavaScript, no código do site podem ser incorporados outros códigos, que solicitam ao navegador do usuário informações específicas e únicas sobre o próprio navegador e sobre o sistema do computador. Portanto, o JavaScript ajuda a descobrir:

Preferências na internet. Isso é descoberto por meio de códigos de rastreamento, que permitem que anunciantes, webmasters e profissionais de marketing analisem visitantes e suas ações no site: em quais anúncios os clientes clicaram, por quanto tempo leram o conteúdo e assim por diante. 

Em seguida, essas informações são enviadas para o Google Analytics, Yandex.Metrica ou outros sistemas de análise.

Informações sobre o dispositivo. O código navigator contido no JavaScript possui informações detalhadas sobre o navegador e o nome do sistema operacional do visitante. Se esse código for vinculado ao botão de um site, o proprietário do recurso pode descobrir informações sobre o usuário, sempre que este interagir com o botão.

Com o código screen, informações sobre a tela do usuário podem ser obtidas. Graças a ele, proprietários de sites podem descobrir o tamanho da tela e as cores usadas pelo usuário.

Já o Navigator.plugins coleta informações sobre plugins e suas versões.

As palavras que você digita. Se um código como esse já está incorporado ao site, ou ainda se foi inserido por hackers, os campos de textos preenchidos pelos usuários podem ser rastreados. 

Isso permite, por exemplo, que golpistas obtenham dados de cartões bancários por meio de um site de pagamento falso. 

Informações da câmera. Com ajuda de códigos especiais, os sites podem acessar a câmera ou o microfone, bem como vídeos e áudios capturados pelo dispositivo.

Desenvolvedores de sites, por exemplo, podem acessar as câmeras frontal e traseira dos smartphones e observar o que os usuários estão fazendo. 

Qual a relação do Javascript com os sistemas de análise

Através de serviços de análise, proprietários de sites podem rastrear ainda mais informações: quais páginas os usuários visualizaram, quais ações tomaram, como interagiram com números de telefone na página e quanto tempo passaram nela. 

Alguns dos serviços mais populares incluem Google Analytics, Yandex.Metrica, Hotjar, Statcounter, dentre outros.

Esses serviços mostram quantas pessoas se registraram no site, pagaram por algo, fizeram login, adicionaram artigos ao carrinho, visualizaram um produto, usaram a função de pesquisa e assim por diante.

Informações adquiridas pelo proprietário do site com a ajuda do Google Analytics


Tais sistemas estão instalados em praticamente todos os sites. Eles são regulamentados por grandes empresas, totalmente legais, e monitoram apenas o comportamento dos clientes, sem armazenar seus dados pessoais. Ou seja, o proprietário do site não tem conhecimento de quem é quem, ele apenas vê dados agregados. Além disso, se ele tentar obter informações pessoais dos usuários e vendê-las, receberá uma multa e/ou será banido do sistema.

O objetivo desses sistemas é tornar os sites mais convenientes e úteis. Eles informam aos proprietários dos recursos o que está acontecendo em suas páginas quando os usuários as visitam.

Por que desativar o JavaScript?

Quando alguém entra em um site, todos os programas JavaScript são executados automaticamente. No entanto, se um código malicioso estiver incorporado a esses scripts, o usuário pode perder informações confidenciais e até mesmo ter o computador infectado por vírus.

Por essa razão, desativar o JavaScript protege contra o rastreamento na internet: os sites não saberão qual navegador e computador você está usando, quais letras está digitando ou quais ações está realizando. 

Ao desativar o JavaScript, você navegará em uma internet sem a presença de anúncios, páginas que rolam infinitamente e janelas modais irritantes, que ativam pop-ups e bloqueiam seu acesso pedindo que você se inscreva em algo.

O que acontece se o JavaScript for desativado?

Se você desativar o JavaScript, muitos sites deixarão de funcionar corretamente, já que a maioria deles utiliza códigos em JS para interagir com o usuário e exibir conteúdo personalizado.

Sem JavaScript, os serviços de hospedagem de vídeo, por exemplo, não carregarão a página principal. Redes sociais, mapas online, serviços de entrega de alimentos e outros serviços também deixarão de funcionar adequadamente: os sites exibirão apenas páginas vazias sem conteúdo.

Ao desativar o JavaScript, você pode se proteger contra o rastreamento e reduzir a probabilidade de roubo de informações confidenciais. No entanto, mesmo desativando o JS, a proteção não será completa.

Cookies representam uma grande ameaça à segurança dos dados pessoais. São arquivos capazes de verificar o histórico de navegação, os dados inseridos em formulários e a localização do usuário. A quantidade de informações coletadas depende do que os proprietários dos recursos desejam saber sobre você. Além disso, os sites podem trocar informações entre si.

Os sistemas de análise são instalados em sites para otimizar a publicidade e torná-la mais eficiente. Em poucas palavras: para mostrar anúncios ao público-alvo. Se o JavaScript for desativado, o usuário verá propagandas não personalizadas e que podem não interessá-lo.

O Google Analytics é usado não só por pequenas empresas, mas também por grandes companhias, como Uber, Spotify e Airbnb.

As métricas também ajudam a identificar áreas problemáticas do site, ou conteúdos não interessantes, e corrigi-los.

O serviço Hotjar, por exemplo, ajuda a criar um mapa do site para analisar com quais blocos os clientes interagem mais. Se houver um elemento no site que não seja clicável, mas no qual os usuários tentam clicar com frequência, os desenvolvedores o identificarão e o tornarão clicável. 


Exemplo do mapa de calor de um site da Hotjar



Os sistemas de análise mostram como os visitantes interagem com a interface do site. Os proprietários do recurso podem ver todos os cliques, movimentos do cursor, quanto tempo uma pessoa gastou em cada parte da página, quais problemas ocorrem em navegadores e dispositivos específicos, etc. 

Se determinada função apresenta problemas em um navegador, por exemplo, o proprietário do site verá e corrigirá o problema.

As ferramentas de análise são úteis para proprietários de sites, porque elas mostram áreas problemáticas e ajudam a melhorar o desempenho do recurso e a experiência do cliente. De igual forma, esses serviços são úteis também para os usuários, já que personalizam os conteúdos apresentados.

Como hackers roubam informações através do JavaScript

Inserindo código malicioso. Essa prática é conhecida como cross-site scripting (XSS). Os hackers inserem no site um código JavaScript malicioso, capaz de processar e armazenar informações confidenciais do usuário.

Por exemplo, na plataforma online de um banco, tal código poderia lembrar as informações de login para acessar a conta bancária e outras informações do usuário.

Em 2018, um grupo de golpistas atacou a British Airways e roubou cerca de 380.000 dados de cartões de crédito.Os criminosos alteraram o script para enviar dados dos clientes a um servidor malicioso, cujo nome de domínio era semelhante ao da British Airways. O servidor falso tinha um certificado SSL, o que levou os clientes a pensar que estavam comprando suas passagens em um servidor seguro. Como resultado, os hackers obtiveram informações de 380.000 cartões de crédito.

Criando uma injeção SQL. Injeção SQL é um tipo de ataque no qual os hackers obtêm acesso aos bancos de dados de um site. Uma vez na base de dados, eles podem alterar ou roubar informações dos usuários.

Em 2019, um hacker roubou centenas de milhares de dados de cartões de crédito usando injeções SQL. Ele roubava, a partir de bases de dados de sites, informações de cartões de pagamento para em seguida vendê-las em plataformas online ilegais. 

Um pouco mais tarde, outros hackers roubaram 8,3 milhões de e-mails e senhas de usuários do site Flaticon, ataque que também foi arquitetado usando injeção SQL

Com ataques de falsificação de solicitações entre sites (CSRF). CSRF é um tipo de ataque que acontece através de um site ou script fraudulento. Ele obriga o navegador do usuário a executar ações não desejadas em um site confiável, no qual o usuário está autenticado. Para que o ataque funcione, o usuário deve clicar no link malicioso. 

Por exemplo, uma pessoa fez login no site do banco e, acidentalmente, clicou em um link fraudulento contendo uma solicitação de transferência de dinheiro para a conta de um golpista. Nesse caso, o banco processará a transação sem a confirmação do usuário, uma vez que ele já estava autenticado no portal do cliente.

Um outro tipo de golpe é a mineração oculta. Em 2021, a empresa Coinhive incorporou um minerador de criptomoedas em um site usando código JavaScript. Quando os usuários acessavam o site, o minerador era ativado e secretamente extraía criptomoedas. De acordo com o diretor regional da Microsoft, Troy Hunt, os fraudadores lucravam cerca de US $250.000 por mês com essa atividade.

Como proteger-se do roubo de informações através do JavaScript 

Visitar sites que usam criptografia HTTPS/SSL. Nesses sites, hackers não podem incorporar seus códigos JS, portanto não podem roubar nada. Entretanto, se um site com HTTPS contiver um código JS malicioso desde o início, já não será possível proteger-se.

Outra vantagem dos recursos com criptografia HTTPS são os cookies seguros. Esses arquivos só podem ser enviados para o servidor web por meio do protocolo HTTPS, tornando-os mais difíceis de invadir.

Como desativar o rastreamento por meio do JavaScript

Após a desativação do JavaScript, a maior parte das páginas deixará de funcionar corretamente. Portanto, não é recomendável desativar completamente os scripts, já que a maioria dos sites começará a  apresentar problemas.

Para se livrar de parte do rastreamento, use extensões que bloqueiam anúncios, como exemplo: AdBlock, uBlock Origin, Ghostery, etc. 

Eles bloqueiam os scripts desnecessários e mantêm aqueles que ajudam a melhorar o funcionamento do site e os anúncios recebidos.