Filtragem de conteúdo adulto / dansguardian / linguagem de script / sem descriptografar o ssl

2

A partir da leitura de muitas páginas da web cheguei à conclusão de que:

para filtrar conteúdo adulto (não bloqueá-lo completamente) de sites https como o Twitter, eu precisaria configurar algo como dansguardian / squid etc. na minha caixa de proxy do Ubuntu para executar uma interceptação Man In The Middle de SSL.

Alguém sabe se é possível fazer algo como o seguinte no meu proxy do Ubuntu:

  1. use uma linguagem como bash / php para pegar o 'conteúdo' de https sites como o Twitter que o usuário solicitou (ou seja, não quebrando SSL). Isso seria como pressionar ctrl-a / ctl-c em um navegador.

  2. escreve o conteúdo em um arquivo que é passado para o dansguardian.

  3. dansguardian então permite ou bloqueia a página dependendo sua filtragem de palavra-chave.

Eu já estou usando o redirecionamento de arquivos OpenDNS / hosts, o que faz um bom trabalho, mas não para sites como o Twitter.

Eu procurei tecnologias como Untangle / K9 Web Protection, mas estou idealmente procurando por uma solução gratuita que possa ser colocada em um proxy. Se eu puder deixar o SSL sozinho, parece que seria mais fácil / mais seguro / menos chamadas de suporte.

Obrigado!

    
por bananaman 14.09.2016 / 18:01

3 respostas

0

É possível o MITM sem hackear / explorar / violar SSL ( é assim que o Cloudflare funciona ), o truque é usar 2 conexões.

Você hospeda um servidor da Web (em sua caixa de proxy) que aceita todas as solicitações / conexões (e, portanto, tem acesso ao conteúdo não criptografado do usuário).

Quando um usuário que está usando seu proxy faz uma solicitação.
Seu servidor da Web pode aceitar a solicitação e estabelecer uma sessão SSL com seu usuário.
Dentro do seu código (por exemplo, PHP) você cria uma instância do cliente que cria uma segunda conexão SSL com o servidor solicitado. Suas instâncias de cliente obtêm a resposta nessa segunda conexão.
Seu servidor web, em seguida, reenvie a resposta (recebida pela instância do cliente) de volta para o usuário na primeira conexão SSL.

Se você precisar de exemplos de código de como fazer isso, eu suspeito que isso levaria a pergunta a ser muito ampla (muitas, longas / boas respostas possíveis).

    
por NGRhodes 14.09.2016 / 20:45
0
  

use uma linguagem como bash / php para capturar o 'conteúdo' de sites https específicos, como o Twitter, que o usuário solicitou (por exemplo, não violando o SSL )

Com o HTTPS, o URL completo é criptografado e somente o nome do host é enviado em branco no handshake TLS. Isso significa até mesmo obter o URL primeiro e, assim, saber o que o usuário solicitou para que você seja um homem no meio para SSL.

    
por Steffen Ullrich 14.09.2016 / 19:41
0

Obrigado por todas as suas respostas. Eu sou um novato sobre filtragem de https e, provavelmente, fez uma pergunta confusa. É uma pena que sites como o Twitter não ofereçam versões de URL seguras de seu conteúdo, como a pesquisa segura do google. SSL parece ótimo, exceto quando você está tentando filtrar o conteúdo desonesto:)

    
por bananaman 16.09.2016 / 13:20