O seqüestro de SSL e a exibição de um certificado inválido é uma prática ruim da qual as pessoas precisam reclamar sempre que isso acontece. Com base na sua descrição, parece que esse tipo de invasão é exatamente o que o OpenDNS está fazendo.
A razão pela qual eu acho que é uma prática tão ruim é que pode fazer com que alguns usuários pensem que existem razões legítimas para seqüestrar o SSL, tal equívoco é ruim para a segurança.
Então, o que você pode fazer sobre isso?
Se você quiser ficar com o OpenDNS, recomendo que você encontre o endereço IP para o qual eles direcionam conexões seqüestradas. Na extremidade da sua rede, bloqueie todas as conexões de saída para esse endereço IP, exceto da porta 80. Verifique se os pacotes TCP SYN recebem um pacote TCP RST em retorno. Não é garantido que responder com um erro ICMP ou simplesmente descartar o SYN seja bem tratado pela pilha TCP de envio.
Se a conexão for sequestrada na camada DNS e um TCP RST for enviado ao tentar uma conexão com a porta 443, o navegador exibirá sua própria mensagem de erro, como "Esta página da Web não está disponível", que é muito melhor que o certificado aviso.
Você ainda pode exibir sua mensagem de erro personalizada para os usuários que se conectam à porta 80, mas, como outros apontaram, você não pode fazer isso com HTTPS, já que o objetivo inteiro do HTTPS é evitar isso.
Por que os usuários podem se conectar à porta 443 em vez da porta 80? Existem pelo menos três razões possíveis:
- O usuário realmente digitou
https://
em seu navegador.
- O navegador teve um redirecionamento de http para https em cache.
- O domínio tem segurança de transporte rigorosa ativada e o navegador está ciente disso.
Nesses casos, você não pode fornecer aos usuários uma página de erro personalizada, portanto, é necessário informá-los antecipadamente sobre como solicitar um desbloqueio.