Recursos de configurações de DPI

Este artigo não cobre o ajuste completo de DPI e tudo o que está conectado, e o valor científico do texto é mínimo. Mas descreve a maneira mais simples de contornar o DPI, que muitas empresas não levaram em consideração.

Recursos de configurações de DPI

Isenção de responsabilidade nº 1: este artigo é de natureza de pesquisa e não incentiva ninguém a fazer ou usar nada. A ideia é baseada na experiência pessoal e quaisquer semelhanças são aleatórias.

Aviso nº 2: o artigo não revela os segredos da Atlântida, a busca do Santo Graal e outros mistérios do universo, todo o material está disponível gratuitamente e pode ter sido descrito mais de uma vez em Habré. (Não encontrei, ficaria grato pelo link)

Para quem leu os avisos, vamos começar.

O que é DPI?

DPI ou Deep Packet Inspection é uma tecnologia para acumular dados estatísticos, verificar e filtrar pacotes de rede analisando não apenas os cabeçalhos dos pacotes, mas também o conteúdo completo do tráfego nos níveis do modelo OSI do segundo e superior, o que permite detectar e bloquear vírus, filtrar informações que não atendam aos critérios especificados.

Existem dois tipos de conexão DPI, que são descritos ValdikSS no github:

DPI passivo

DPI conectado à rede do provedor em paralelo (não em corte) seja através de um divisor óptico passivo, ou utilizando espelhamento do tráfego originado dos usuários. Esta conexão não diminui a velocidade da rede do provedor em caso de desempenho insuficiente de DPI, por isso é utilizada por grandes provedores. O DPI com esse tipo de conexão pode, tecnicamente, detectar apenas uma tentativa de solicitar conteúdo proibido, mas não impedi-la. Para contornar essa restrição e bloquear o acesso a um site proibido, o DPI envia ao usuário que solicita um URL bloqueado um pacote HTTP especialmente criado com um redirecionamento para a página stub do provedor, como se tal resposta fosse enviada pelo próprio recurso solicitado (o IP do remetente endereço e sequência TCP são forjados). Como o DPI está fisicamente mais próximo do usuário do que do site solicitado, a resposta falsificada chega ao dispositivo do usuário mais rapidamente do que a resposta real do site.

DPI ativo

DPI ativo - DPI conectado à rede do provedor da maneira usual, como qualquer outro dispositivo de rede. O provedor configura o roteamento para que o DPI receba tráfego de usuários para endereços IP ou domínios bloqueados, e o DPI então decida se permite ou bloqueia o tráfego. O DPI ativo pode inspecionar o tráfego de saída e de entrada; no entanto, se o provedor usar DPI apenas para bloquear sites do registro, ele será configurado com mais frequência para inspecionar apenas o tráfego de saída.

Não só a eficácia do bloqueio de tráfego, mas também a carga de DPI depende do tipo de conexão, portanto é possível verificar não todo o tráfego, mas apenas alguns:

DPI "Normal"

Um DPI “normal” é um DPI que filtra um determinado tipo de tráfego apenas nas portas mais comuns para esse tipo. Por exemplo, um DPI “normal” detecta e bloqueia o tráfego HTTP proibido apenas na porta 80, o tráfego HTTPS na porta 443. Este tipo de DPI não rastreará conteúdo proibido se você enviar uma solicitação com um URL bloqueado para um IP desbloqueado ou não-bloqueado. porta padrão.

DPI "completo"

Ao contrário do DPI “normal”, este tipo de DPI classifica o tráfego independentemente do endereço IP e da porta. Dessa forma, os sites bloqueados não serão abertos, mesmo se você estiver usando um servidor proxy em uma porta completamente diferente e com um endereço IP desbloqueado.

Usando DPI

Para não reduzir a taxa de transferência de dados, você precisa usar DPI passivo “Normal”, que permite efetivamente? bloquear algum? recursos, a configuração padrão é semelhante a esta:

  • Filtro HTTP apenas na porta 80
  • HTTPS apenas na porta 443
  • BitTorrent apenas nas portas 6881-6889

Mas os problemas começam se o recurso usará uma porta diferente para não perder usuários, então você terá que verificar cada pacote, por exemplo você pode fornecer:

  • HTTP funciona nas portas 80 e 8080
  • HTTPS nas portas 443 e 8443
  • BitTorrent em qualquer outra banda

Por causa disso, você terá que mudar para DPI “Ativo” ou usar o bloqueio usando um servidor DNS adicional.

Bloqueio usando DNS

Uma maneira de bloquear o acesso a um recurso é interceptar a solicitação DNS usando um servidor DNS local e retornar ao usuário um endereço IP “stub” em vez do recurso necessário. Mas isso não dá um resultado garantido, pois é possível evitar a falsificação de endereço:

Opção 1: Editando o arquivo hosts (para desktop)

O arquivo hosts é parte integrante de qualquer sistema operacional, o que permite utilizá-lo sempre. Para acessar o recurso o usuário deve:

  1. Descubra o endereço IP do recurso necessário
  2. Abra o arquivo hosts para edição (requer direitos de administrador), localizado em:
    • Linux: /etc/hosts
    • Windows: %WinDir%System32driversetchosts
  3. Adicione uma linha no formato: <nome do recurso>
  4. Salvar alterações

A vantagem deste método é a sua complexidade e a exigência de direitos de administrador.

Opção 2: DoH (DNS sobre HTTPS) ou DoT (DNS sobre TLS)

Esses métodos permitem proteger sua solicitação de DNS contra falsificação usando criptografia, mas a implementação não é suportada por todos os aplicativos. Vejamos a facilidade de configuração do DoH para o Mozilla Firefox versão 66 do lado do usuário:

  1. Ir para o endereço about: config no Firefox
  2. Confirme se o usuário assume todos os riscos
  3. Alterar valor do parâmetro rede.trr.mode em:
    • 0 - desabilita TRR
    • 1 - seleção automática
    • 2 - habilite DoH por padrão
  4. Alterar parâmetro rede.trr.uri selecionando servidor DNS
    • DNS da Cloudflare: mozilla.cloudflare-dns.com/dns-query
    • DNS do Google: dns.google.com/experimental
  5. Alterar parâmetro rede.trr.boostrapAddress em:
    • Se Cloudflare DNS for selecionado: 1.1.1.1
    • Se o DNS do Google estiver selecionado: 8.8.8.8
  6. Alterar valor do parâmetro rede.segurança.esni.enabled em verdadeiro
  7. Verifique se as configurações estão corretas usando Serviço Cloudflare

Embora esse método seja mais complexo, ele não exige que o usuário tenha direitos de administrador e há muitas outras maneiras de proteger uma solicitação DNS que não são descritas neste artigo.

Opção 3 (para dispositivos móveis):

Usando o aplicativo Cloudflare para Android и IOS.

Teste

Para verificar a falta de acesso aos recursos, um domínio bloqueado na Federação Russa foi adquirido temporariamente:

Conclusão

Espero que este artigo seja útil e encoraje não apenas os administradores a entender o tópico com mais detalhes, mas também dê uma compreensão de que os recursos estarão sempre do lado do usuário, e a busca por novas soluções deve ser parte integrante para eles.

Links úteis

Adição fora do artigoO teste Cloudflare não pode ser concluído na rede da operadora Tele2 e um DPI configurado corretamente bloqueia o acesso ao local de teste.
PS Até agora este é o primeiro provedor que bloqueia recursos corretamente.

Fonte: habr.com

Adicionar um comentário