sábado, 28 de dezembro de 2019

Desgooglando-se (Parte 8 - Final)




Chegamos ao final  desta série, e, vamos fazer reflexões, sobre todas as coisas abordadas anteriormente.


Don’t Be Evil já era…

Nós vimos que o mote da Google não é mais, eles mudaram, agora é Faça a coisa correta, e, isso pode ser muitas coisas, dependendo de onde se olha.
Mas, como queremos nos preservar dos “olhos” do grande irmão, teremos que tomar algumas precauções.


Os Do’s e Don’ts da Google

Bem, como já vimos anteriormente, não vou repassar em terrenos já trilhados, mas, enumerar, de forma sucinta e direta, o que se deve fazer para diminuir a intromissão da Google em nossas vidas privadas.

O DNS da Google

O famoso DNS da Google, 8.8.8.8, não deve ser usado.
A Google pode “esconder” sites que ela não deseje promover, use o OpenDNS ao invés(208.67.222.222)


Use apenas HTTPS(Hyper Text Transfer Protocol Secure)

HTTPS (Hyper Text Transfer Protocol Secure - protocolo de transferência de hipertexto seguro) é uma implementação do protocolo HTTP sobre uma camada adicional de segurança que utiliza o protocolo SSL/TLS. Essa camada adicional permite que os dados sejam transmitidos por meio de uma conexão criptografada e que se verifique a autenticidade do servidor e do cliente por meio de certificados digitais. A porta TCP usada por norma para o protocolo HTTPS é a 443.

O protocolo HTTPS é utilizado, em regra, quando se deseja evitar que a informação transmitida entre o cliente e o servidor seja visualizada por terceiros, como, por exemplo, no caso de compras online. A existência na barra de endereços de um cadeado (que pode ficar do lado esquerdo ou direito, dependendo do navegador utilizado) demonstra a certificação de página segura (SSL/TLS). A existência desse certificado indica o uso do protocolo HTTPS e que a comunicação entre o browser e o servidor se dará de forma segura. Para verificar a identidade do servidor é necessário um duplo clique no cadeado para exibição do certificado.
Através de conexões HTTPS, não é possível ataques de MITM, por parte de terceiros, pois a conexão é criptografada de ponta a ponta. Assim, é possível rastrear que você acessou um determinado site, mas não o quê você acessou neste site.


Cuidado com os biscoitos (Cookies)!

O cookie é uma sequência simples de texto carregada nos navegadores dos usuários quando eles visitam um site. Seu objetivo é permitir que o site reconheça e lembre-se de seus usuários. Mas os cookies compõem a maioria dos rastreadores de sites online.

O cookie foi inventado em 1994 por Lou Montulli e John Giannandrea, da Netscape, e originalmente servia para fornecer aos sites uma '‘memória’', para que eles pudessem, por exemplo, armazenar itens em um carrinho de compras enquanto o usuário procurava por mercadorias no site.

Embora o cookie ainda atenda a esse propósito, ele também pode monitorar os usuários e fornecer muitas informações sobre o comportamento do usuário.

O cookie é amplamente usado para criação de perfis e marketing direcionado, e a maioria dos sites define uma grande quantidade de cookies de origem tanto próprios quanto de terceiros.

Também existem muitos cookies diferentes: cookies necessários, cookies de análise ou estatísticas, cookies de marketing ou cookies de publicidade. Os cookies estritamente necessários funcionam para que seu site opere suas funções mais básicas, para que um visitante possa visitá-lo. Esses raramente, ou nunca tem alguma maneira de rastrear usuários.

No entanto, os cookies de análise ou de estatísticas geralmente são cookies de terceiros que rastreiam e registram o comportamento do usuário para fornecer informações ao proprietário do site. Cookies de marketing e publicidade também costumam ser cookies de terceiros que servem para tornar possível o anúncio direcionado. Esses cookies são ferramentas de rastreamento de sites para ambas empresas: A própria empresa, dona do site, e, as empresas que usam os cookies para rastreio e perfilamento (Google e todas as outras  do setor de tecnologia de anúncios: Yahoo, Bing, Facebook, etc...)

Tipos de cookies

Como vimos acima, existem cookies “normais”, mas, ainda existem outros dois tipos de cookies: Supercookies e Evercookies.

Supercookies

Os supercookies contêm um identificador exclusivo que permite que os rastreadores vinculem registros em seus dados para rastrear seu histórico e comportamento de navegação (por exemplo, sites visitados, incluindo a duração da sua estadia). Um exemplo são os cookies Flash (também conhecidos como Objetos de Compartilhamento Local ou LSO) que, ao contrário dos cookies padrão, funcionam independentemente do navegador e não têm prazo de validade. Eles são armazenados localmente e podem ser removidos manualmente. Para impedir que eles sejam armazenados no seu dispositivo, você deve definir o plug-in Flash no seu navegador para não carregar objetos em flash ou apenas com o seu consentimento. Para fazer isso, selecione as opções “Nunca ativar” ou “Pedir para ativar”.


Evercookies

Os Evercookies são extremamente persistentes e difíceis de se livrar quando entram no dispositivo. Seu objetivo é identificar um usuário mesmo após a remoção de cookies padrão, Flash e outros. Evercookies usa diferentes mecanismos de armazenamento para armazenar dados em diferentes formatos em vários locais do seu dispositivo. Se os dados do cookie são removidos, eles são recuperados imediatamente de um local de armazenamento alternativo.


Contramedidas

Para se proteger de cookies espiões, existem algumas precauções que podem ser tomadas.

    • Usar uma extensão de controle de cookies: Cookie AutoDelete (Firefox, Google Chrome), Cookie Master (Palemoon), Crush those cookies (Palemoon), Cookies Control Panel (Palemoon), Cookies Exterminator (Palemoon, Seamonkey ou Firefox), Edit this cookie (Google Chrome), Vanilla Cookie Manager (Google Chrome).
     
    • Manualmente apagar todos os cookies do browser depois de sair dele. Ou marcar, nas configurações: Deletar todos os cookies ao sair
     
    • Criar um perfil novo do navegador (Firefox ou  Google Chrome) a cada nova sessão. Isso impede que os Cookies sejam persistentes, já que a cada nova sessão, é como se um novo usuário se logasse ao computador.

Porém, com o tempo, as técnicas de rastreio de usuários foram evoluindo, de forma a ficarem mais elaboradas e complexas.

Rastreando usuários  sem cookies

Os pixels de rastreamento, também chamados de tags de pixel ou pixels de 1x1, são imagens transparentes que consistem em um único pixel, presentes (embora praticamente invisíveis) em uma página da Web ou em um email.

Quando um usuário carrega a página da Web ou abre um email, o pixel de rastreamento também é carregado, permitindo que o remetente do pixel de rastreamento, normalmente um servidor de anúncios, leia e registre que a página da Web está carregada ou o email é aberto e atividades similares do usuário.

O objetivo é o mesmo dos cookies de terceiros: obter informações sobre os usuários para o marketing direcionado.

As informações que podem ser obtidas por sites e terceiros por meio de pixels de rastreamento incluem:

    •  qual SO o usuário usa
    •  qual navegador ou programa de email o usuário usa
    •  quando o site foi visitado ou o e-mail foi lido
    •  comportamento do usuário no site visitado
    •  Endereço IP e localização do usuário

Os pixels de rastreamento são uma forma amplamente usada de rastreamento analítico ou estatístico, mas que o Regulamento Geral de Proteção de Dados(GDPR) considera ilegal se não for consentido primeiro pelo usuário.

Rastreamento com Javascript

Os scripts de rastreamento são partes do código Javascript que geralmente implementam um pixel de rastreamento em um site e são responsáveis por criar diferentes tipos de solicitação para domínios externos, passando os dados para eles.
O script de rastreamento pode acessar e criar solicitações usando os dados disponíveis na página, além de definir cookies diferentes que podem ser usados como identificador. Esses dados normalmente transmitidos consistem em dados disponíveis no HTML, em uma URL, em uma camada de dados, cookies ou obtidos por meio de um ouvinte de eventos ou por uma chamada de API. O script de rastreamento pode fazer diferentes tipos de solicitações para passar essas informações ao pixel de rastreamento.
Um exemplo de javascript de rastreio é “analytics.js”, da Google.


Contramedidas

Para evitar os problemas com rastreadores sem cookies, sejam gif’s transparentes ou scripts, as seguintes extensões podem ser instaladas:

    •  No Script
A extensão NoScript  fornece proteção extra para Firefox, Seamonkey e outros navegadores (Google Chrome): esse complemento gratuito e de código aberto permite que JavaScript, Java, Flash e outros plugins sejam executados apenas por sites confiáveis de sua escolha (por exemplo, o site do seu banco).

O NoScript também fornece a mais poderosa proteção anti-XSS e anti-Clickjacking já disponível em um navegador.

A abordagem de bloqueio preventivo exclusivo de scripts permitidos, baseada em listas brancas do NoScript, evita a exploração de vulnerabilidades de segurança (conhecidas como Meltdown ou Spectre e ainda não conhecidas!) Sem perda de funcionalidade.

Você pode ativar a execução de JavaScript, Java e plug-in para sites confiáveis, com um simples clique esquerdo no ícone da barra de status NoScript ou usando o menu contextual para facilitar a operação em janelas pop-up sem barra de status.


    • AdBlock Plus
+Adblock Plus é uma extensão filtradora de propagandas para o Firefox, Chrome, Opera, Microsoft Edge, Internet Explorer, Yandex e Maxthon.
Este programa foi incluído na lista de complementos do Firefox a partir de 17 de janeiro de 2006. Devido a sua enorme utilização, foi relatado cerca de 80.000 downloads por dia, chegando a 100 milhões no total.
Assim como o bloqueador de imagens do Mozilla, o Adblock bloqueia os pedidos HTTP de acordo com seus endereços de origem e pode bloquear IFrames, scripts e Flash. Ele também usa folhas de estilo (CSS) do usuário geradas automaticamente para ocultar, para bloquear, elementos, tais como aplicativos em forma de texto em uma página, na medida que carregam.


    • ScriptBlock
Uma extensão inteligente que controla javascript, iframes e plugins no Google Chrome.
Scriptblock é uma extensão que fornece melhor controle de javascript, iframes e outros conteúdos indesejados.
Ele pode até mitigar ataques de cross site scripting (XXS) e drive-by-downloads.
O ScriptBlock funciona perfeitamente em conjunto com outras extensões, como AdBlock, AdBlock Plus ou Ghostery.
Você pode adicionar sites confiáveis a uma lista de permissões, para que eles não sejam afetados pelo ScriptBlock.
Disponível para Palemoon e Google Chrome.

Fingerprinting

Fingerprinting é uma técnica avançada de identificação do browser que o usuário está acessando, de forma a identificar o usuário de forma  única e exata.
Existem diversas técnicas de Fingerprinting, e, vamos exemplificar algumas delas. Na verdade, a sofisticação do Fringerprinting é tal, que parece saído de um filme de espionagem.

Basicamente, existem 4 tipos de Fingerprinting:
    • Canvas Fingerprinting
    • AudioContext Fingerprinting
    • WebRTC Local IP Discovery
    • Canvas-Font Fingerprinting


Canvas Fingerprinting

O HTML Canvas permite que o aplicativo da Web desenhe gráficos em tempo real, com funções para suportar desenho de formas, arcos e texto em um elemento de tela personalizado. Diferenças na renderização da fonte, suavização de serrilhado e outros recursos do dispositivo fazem com que os dispositivos desenhem a imagem de maneira diferente. Isso permite que os pixels resultantes sejam usados como parte da impressão digital do dispositivo. A imagem abaixo é um exemplo representativo dos tipos de imagens de tela usadas pelos scripts de fingerprinting.

 

AudioContext Fingerprinting

As técnicas de fingerprinting normalmente não são usadas isoladamente, mas em conjunto. Uma das novas técnicas de fingerprinting acessa a a interface  AudioContext e interfaces relacionadas. Os rastreadores  tentam utilizar a API de áudio para fazer fingerprinting dos usuários de várias maneiras.
Como funciona ? Um sinal de áudio é gerado por um oscilador e o sinal resultante é dividido após o processamento para criar um identificador. Isso não requer acesso ao microfone do dispositivo e depende de diferenças na maneira como o sinal gerado é processado.
Na figura abaixo, o áudio fingerprint do meu notebook (onde escrevi este artigo), comparado com o áudio fingerprint de um dispositivo Android padrão de referência.




Ademais, com esta técnica, foi possível ao script perfilar o meu hardware de maneira admirável:

AudioContext Fingerprints
AudioContext properties:

{
  "ac-sampleRate": 48000,
  "ac-state": "suspended",
  "ac-maxChannelCount": 0,
  "ac-numberOfInputs": 1,
  "ac-numberOfOutputs": 0,
  "ac-channelCount": 2,
  "ac-channelCountMode": "explicit",
  "ac-channelInterpretation": "speakers",
  "an-fftSize": 2048,
  "an-frequencyBinCount": 1024,
  "an-minDecibels": -100,
  "an-maxDecibels": -30,
  "an-smoothingTimeConstant": 0.8,
  "an-numberOfInputs": 1,
  "an-numberOfOutputs": 1,
  "an-channelCount": 1,
  "an-channelCountMode": "max",
  "an-channelInterpretation": "speakers"
}

Fingerprint using DynamicsCompressor (sum of buffer values):

35.73833402246237

Fingerprint using DynamicsCompressor (hash of full buffer):

5f5ca60e8aa59e3b0f1f5d3064746a42b760ed57

Fingerprint using OscillatorNode:

-122.10106658935547,-122.17668151855469,-121.51886749267578,-120.64137268066406,-119.46350860595703,-118.02296447753906,-116.34650421142578,-114.44546508789062,-112.31880950927734,-109.9481201171875,-107.31201171875,-104.37184143066406,-101.08609008789062,-97.42935943603516,-93.51634979248047,-90.6439208984375,-82.70191192626953,-44.70573425292969,-31.952308654785156,-29.518218994140625,-36.196712493896484,-56.003013610839844,-95.44043731689453,-91.57635498046875,-95.32821655273438,-99.18425750732422,-102.70282745361328,-105.87161254882812,-108.73149108886719,-111.33251190185547

...
Fingerprint using hybrid of OscillatorNode/DynamicsCompressor method:

-129.05262756347656,-119.44970703125,-108.23188018798828,-101.38246154785156,-102.750732421875,-114.5762939453125,-109.89714813232422,-98.22866821289062,-95.67564392089844,-103.14139556884766,-117.47007751464844,-111.52037048339844,-101.82388305664062,-101.04195404052734,-89.28307342529297,-93.03608703613281,-89.74243927001953,-53.4901237487793,-40.75892639160156,-38.32568359375,-45.00003433227539,-64.69832611083984,-95.99256896972656,-88.3079833984375,-94.27742004394531,-98.67274475097656,-107.62669372558594,-114.796630859375,-106.75559997558594,-95.29183959960938

...


WebRTC Local IP Discovery

O WebRTC é uma estrutura para comunicação em tempo real ponto a ponto no navegador e acessível via Javascript. Para descobrir o melhor caminho entre os pares, cada par coleta todos os endereços candidatos disponíveis, incluindo endereços das interfaces de rede locais (como Ethernet ou WiFi) e endereços do lado público do NAT e os disponibiliza para o aplicativo Web sem permissão explícita. do usuário. Um  script   fingerprinter  pode aproveitar esses endereços para rastrear usuários.


Canvas-Font Fingerprinting

Javascript e Flash foram usados para enumerar fontes no navegador e também perfilar usuários.
A HTML Canvas API fornece um terceiro método para deduzir as fontes instaladas em um navegador específico. A interface de renderização de tela expõe um método measureText, que fornece a largura resultante do texto desenhado na tela. Um script pode tentar desenhar texto usando um grande número de fontes e depois medir a largura resultante. Se a largura do texto não for igual à largura do texto usando uma fonte padrão (o que indicaria que o navegador não possui a fonte testada), o script poderá concluir que o navegador tem essa fonte disponível.

Como exemplo, seguem os dados que um script de teste extraiu de meu notebook:

Canvas, Javascript, and Flash Font Detection
Canvas font detection:

Andale Mono;Arial;Arial Black;Bitstream Vera Sans Mono;Calibri;Cambria;Cambria Math;Comic Sans MS;Courier;Courier New;Georgia;Helvetica;Impact;Lucida Console;Lucida Sans Unicode;Microsoft Sans Serif;Palatino;Segoe UI;Tahoma;Times;Times New Roman;Trebuchet MS;Verdana;Wingdings;


JS/CSS font detection:

Andale Mono;Arial;Arial Black;Bitstream Vera Sans Mono;Calibri;Cambria;Cambria Math;Comic Sans MS;Courier;Courier New;Georgia;Helvetica;Impact;Lucida Console;Lucida Sans Unicode;Microsoft Sans Serif;Palatino;Segoe UI;Tahoma;Times;Times New Roman;Trebuchet MS;Verdana;Wingdings;


Flash font detection:

A.D. MONO,Adventure,Andale Mono,Arial,Arial Black,Babelfish,Bitstream Charter,Bitstream Vera Sans,Bitstream Vera Sans Mono,Bitstream Vera Serif,Blue Highway,Blue Highway Condensed,Calibri,Cambria,Cambria Math,Cantarell,Cantarell Extra Bold,Cantarell Light,Cantarell Thin,Century Schoolbook L,Christmas Card,Comic Sans MS,Courier New,DejaVu Math TeX Gyre,DejaVu Sans,DejaVu Sans Condensed,DejaVu Sans Light,DejaVu Sans Mono,DejaVu Serif,DejaVu Serif Condensed,Deutsch Gothic,Dingbats,DirtyBaker'sDozen,Georgia,Hershey-Gothic-English,Hershey-Gothic-German,Hershey-Gothic-Italian,Hershey-Plain-Duplex,Hershey-Plain-Duplex-Italic,Hershey-Plain-Triplex,Hershey-Plain-Triplex-Italic,Hershey-Script-Complex,Hershey-Script-Simplex,Impact,Larabiefont,Liberation Mono,Liberation Sans,Liberation Serif,Lucida Console,Lucida Sans Unicode,Microsoft Sans Serif,New,Nimbus Mono L,Nimbus Roman No9 L,Nimbus Sans L,Nimbus Sans L Condensed,Segoe UI,Segoe UI Light,Segoe UI Semibold,Standard Symbols L,Symbol,Tahoma,Times New Roman,Trebuchet MS,URW Bookman L,URW Chancery L,URW Gothic L,URW Palladio L,Utopia,Verdana,Webdings,Wingdings


Contramedidas

Para tentar “enganar” o fingerprinting, é possível instalar algumas extensões no(s) seu(s) navegadores:

Secret Agent (Palemoon, Waterfox, Seamonkey, Icecat)
O Secret Agent aprimora a privacidade de sua navegação na web, girando a identidade do 'User Agent' do navegador com todas as solicitações da web (ou cada carregamento de página ou sessão de cada navegador).

A randomização do seu User Agent torna um pouco mais difícil para bandidos, ISPs desonestos, espiões como Phorm, governos corruptos e outras ameaças desagradáveis de vigilância / rastreamento para correlacionar seus cliques com base no fingerprinting do dispositivo.

Ghostery
Ghostery é uma extensão de navegador gratuita e de código aberto relacionada à privacidade e à segurança, além de um aplicativo de navegador móvel. Desde fevereiro de 2017, ele pertence à empresa alemã Cliqz International GmbH (anteriormente pertencente à Evidon, Inc., anteriormente denominada Ghostery, Inc. e o Better Advertising Project). O código foi originalmente desenvolvido por David Cancel e associados.

O Ghostery permite que seus usuários detectem e controlem facilmente "tags" e "trackers" do JavaScript. Os bugs e beacons JavaScript são incorporados em muitas páginas da Web, em grande parte invisíveis para o usuário, permitindo a coleta dos hábitos de navegação do usuário por meio de cookies HTTP, além de participar de formas mais sofisticadas de rastreamento, como canvas fingerprinting.

A partir de 2017, o Ghostery estará disponível para Mozilla Firefox, Google Chrome, Internet Explorer, Microsoft Edge, Opera, Safari, iOS, Android e Firefox para Android (não disponível para Palemoon, Seamonkey, Icecat)

Use E Abuse da Navegação Privativa

A navegação privativa apaga automaticamente informações de navegação como senhas, cookies e histórico, não deixando rastros após você terminar a sessão.
A navegação privativa está disponível em todos os navegadores mais populares (Firefox, Chrome e todos os seus derivados)


TOR e VPN

A utilização do TOR browser pode botar você em problemas:
O Supremo Tribunal dos EUA aprovou silenciosamente uma alteração de regra que permitiria a um juiz federal emitir um mandado de busca e apreensão para qualquer alvo que usasse software de anonimato como o Tor para navegar na Internet. E, este novo regramento entrou em ação em dezembro de 2015.

Quanto a redes VPN (Virtual Private Network), são tão boas quanto forem as empresas por detrás delas. Ou seja, desde que essas empresas não entreguem seu histórico de navegação e seus dados para organismos governamentais, você está bem.

Mas, caso contrário…
Eu penso que, tanto o navegador TOR quanto redes privadas virtuais merecem artigos próprios, onde possam ser analisados mais profundamente.


Palavras Finais

Ao longo de oito meses, analisamos de forma detalhada e minuciosa as formas com as quais a Google usa para espionar seus usuários.
Analisamos as formas conhecidas, e, muitas novas tecnologias de rastreio on line, que, nestes momentos tão perigosos em que vivemos, onde a liberdade de pensamento e expressão pode meter o cidadão comum em maus lençóis, dada a polarização e radicalização política vigente.
Proteção da privacidade, da liberdade de pensamento e expressão se tornou uma necessidade nestes dias, mas, principalmente, ficar fora de problemas, de polêmicas e discussões on-line, que podem prejudicar pessoas comuns (como Richard Stallman foi prejudicado, por dar sua opinião num assunto muito delicado).

Assim, observem bem as dicas para proteção de sua privacidade on-line, e, principalmente, não se envolvam em polêmicas ou assuntos delicados, seja no Twitter, Facebook, You Tube ou o que seja, já que declarações fora de contexto podem custar carreiras, reputações e até empregos.

Um grande abraço, e, até o próximo mês.