Comunicação HTTPS sem solicitar certificado

0

Existe um hack ou a arquitetura do SSL / TLS permite a comunicação com um servidor sem solicitar seu certificado pode ser por pré baixar o certificado e instalá-lo,

A razão que eu estou pedindo isso é porque durante o processo de handshake, a extensão SNI expõe o site com o qual estou me comunicando, pois o SNI envia o nome do domínio em texto simples ...

Eu tentei usar versões mais antigas do SSL, onde não havia SNI, mas a maioria dos servidores não suporta versões mais antigas do SSL ...

    
por Kaleem Ullah 30.06.2018 / 15:13

1 resposta

2

Você está perguntando sobre duas coisas diferentes: vazamento de nome de host pelo cliente enviando SNI e vazamento de nome de host pelo servidor enviando um certificado. Estes são completamente independentes um do outro; O SNI não força um certificado a ser enviado, e desabilitar o SNI não impede que um certificado seja enviado.

Cliente para servidor

during the handshake process, the SNI extension exposes the website I'm communicating with

Se você estiver se comunicando com os seus próprios servidores, simplesmente não envie a extensão SNI. É opcional na maioria das bibliotecas de clientes do TLS. (Por exemplo, no GnuTLS ele não é enviado por padrão, a menos que gnutls_server_name_set () seja chamado.)

Por outro lado, para sites aleatórios na Internet, muitas vezes é inevitável.

Servidor para cliente

Is there a hack or the architecture of SSL/TLS allows communication with a Server without requesting it's certificate

O TLS suporta outros métodos de autenticação do servidor - o TLS-PSK é a alternativa mais comum (embora geralmente funcione apenas com servidores pré-configurados com a chave compartilhada; não sites aleatórios na Internet).

Como alternativa, o certificado pode conter um nome de host aleatório ou nenhum nome de host eo cliente o verificará usando outros métodos (por impressão digital ou hash SPKI) - o TLS não requer o uso de um nome de host.

    
por 30.06.2018 / 15:43