Privaxy, um proxy de bloqueio de anĂșncios

privacidade

Um proxy de bloqueio de anĂșncios

Hoje em dia Uma das principais preocupaçÔes dos usuĂĄrios da rede Ă© a questĂŁo relacionada Ă  privacidade de suas informaçÔes e diante disso existe um grande nĂșmero de soluçÔes que vĂŁo desde aquelas implementadas pelos prĂłprios navegadores da web, atĂ© opçÔes como o uso de aplicativos de terceiros, entre outras coisas.

Dia hoje vamos falar sobre Privaxy que Ă© um proxy de bloqueio de anĂșncios e um cĂłdigo de rastreamento entre sites.

O Privaxy atualizou recentemente para sua versĂŁo 0.5 e posso mencionar que Ă© um proxy MITM HTTP(s) que fica entre os aplicativos de bate-papo HTTP(s), como um navegador da Web e servidores HTTP, como sites de serviço. Ao estabelecer um tĂșnel bidirecional entre os dois terminais, o Privaxy pode bloquear solicitaçÔes de rede com base em padrĂ”es de URL e injetar scripts e estilos em documentos HTML.

Operando em um nĂ­vel inferior, o Privaxy Ă© mais eficiente e mais otimizado do que os bloqueadores baseados em plug-ins de navegador. Uma Ășnica instĂąncia do Privaxy em uma pequena mĂĄquina virtual, servidor ou atĂ© mesmo no mesmo computador de origem do trĂĄfego pode filtrar milhares de solicitaçÔes por segundo e requer uma quantidade muito pequena de memĂłria.

A implementação do bloqueador estå na forma de um servidor proxy separado que permite que ele seja usado como uma solução universal que permite ao usuårio filtrar solicitaçÔes não apenas de navegadores da web. O proxy também é independente das restriçÔes do navegador, como as impostas pela terceira versão do manifesto do Chrome, e oferece melhor desempenho e requisitos de recursos mais baixos.

Por exemplo, ao carregar 320 mil filtros, o consumo de memória é de 50 MB e é possível filtrar milhares de requisiçÔes por segundo.

A maneira como o Privaxy funciona Ă© implementar um filtro intermediĂĄrio entre o usuĂĄrio e os sites, usando falsificação de certificado TLS para interceptar o conteĂșdo de sessĂ”es HTTPS criptografadas e ocultar o aviso MITM.

O Privaxy gera seu próprio certificado, que o usuårio instala no armazenamento de certificados do seu sistema (/usr/local/share/ca-certificates/) e prescreve que os aplicativos funcionem por meio do proxy localhost:8100. Duas opçÔes de compilação são fornecidas: um utilitårio de console e uma interface gråfica que permite gerenciar configuraçÔes, rastrear visualmente a atividade atual e visualizar estatísticas de travamento.

Quando uma solicitação HTTPS é recebida de um usuårio, o Privaxy estabelece uma conexão TLS com o servidor de destino em seu próprio nome e obtém seu certificado, após o qual ele usa o nome do host do certificado real recebido do servidor e cria um certificado fictício vinculado por uma cadeia de confiança ao certificado raiz gerado para o usuårio.

Usando um certificado fictício, o proxy personifica o servidor solicitado ao se comunicar com o cliente, continuando a usar a conexão TLS estabelecida com o servidor de destino para receber dados. Para hosts e domínios selecionados, é possível desabilitar o encaminhamento usando a técnica MITM.

AlĂ©m de remover anĂșncios baseados em mĂĄscaras de URL, o Privaxy tambĂ©m oferece a capacidade de inserir cĂłdigo JavaScript e estilos CSS em documentos HTML renderizados.

Filtros compatĂ­veis com Adblock Plus, como Easylist, sĂŁo suportados. A substituição de conteĂșdo suporta a sintaxe do uBlock Origin para scripts, controladores e redirecionamentos, bem como sua prĂłpria sintaxe para definir filtros personalizados arbitrĂĄrios. Listas externas conectadas com filtros sĂŁo atualizadas automaticamente.

Das caracterĂ­sticas que se destacam do Privaxy:

  • Suporte para filtros Adblock Plus, como easylist
  • Web GUI com uma tela de estatĂ­sticas, bem como um navegador de solicitação ao vivo.
  • Suporte para sintaxe de fonte uBlock js.
  • Suporte para sintaxe de fonte de redirecionamento uBlock.
  • Suporte para scriptlets de origem uBlock.
  • Independente do navegador e do cliente HTTP.
  • Suporte para filtros personalizados.
  • Suporte para excluir hosts do pipeline MITM.
  • Suporte para atualizaçÔes de protocolo, como com websockets.
  • AtualizaçÔes automĂĄticas da lista de filtros.
  • Consumo de recursos muito baixo.
  • Cerca de 50 MB de memĂłria com cerca de 320 filtros habilitados.
  • Capaz de filtrar milhares de solicitaçÔes por segundo em uma pequena mĂĄquina.

Por fim, se vocĂȘ estiver interessado em saber mais sobre o assunto, consulte os detalhes em o seguinte link.

O código do projeto é escrito em Rust e é distribuído sob a licença AGPLv3, e as compilaçÔes prontas são fornecidas para Linux (AppImage, deb), Windows e macOS.