O que impedir que um man-in-the-middle obtenha a chave SSL / TLS?

5

Pelo que entendi, a principal razão para usar HTTPS sobre HTTP é que a comunicação é criptografada para que qualquer pessoa que esteja ouvindo não consiga visualizar o texto sem formatação da troca HTTP entre cliente / servidor.

Agora, no início da sessão, o cliente e o servidor concordam com uma chave mestra com base nas informações obtidas durante o handshake SSL / TLS. Mas o que impediria alguém de ouvir também de obter a chave usando o mesmo conjunto de criptografia acordado pelo cliente / servidor?

Se não houver nada para impedir isso, então como o HTTPS é realmente muito mais seguro que o HTTP? Tudo o que seria necessário para um MITM seria projetar a própria chave usando as informações obtidas do handshake e usá-la para decifrar a comunicação entre o cliente e o servidor.

Eu devo estar faltando alguma coisa ...

    
por ryansin 27.11.2016 / 14:41

1 resposta

7

O cliente e o servidor somente concordam com uma chave, eles nunca a enviam na planilha.

Mais comumente, intercâmbio de chaves DH ( 2 ) ou sua variante ECDH são usados - cada par combina apenas sua chave privada DH com a DH do outro parceiro chave pública e ambos obtêm o mesmo resultado. Se você observar o tráfego, verá apenas as chaves públicas dos pares, o que é insuficiente para derivar a chave de sessão resultante. (O handshake TLS depois verifica que um invasor não injetou seus próprios pubkeys.)

Outro método (hoje em dia raro) é o "RSA estático" - nesse modo, o cliente gera a chave de sessão por conta própria e criptografa usando a chave pública do servidor (obtida do certificado SSL) . Embora a chave seja enviada pela rede, somente o servidor pode descriptografá-la.

(Embora o método "static RSA" possa ser mais simples, ele também é menos seguro - obter a chave privada do certificado permitiria descriptografar todas as sessões HTTPS antigas e novas; em outras palavras, não há seguro secreto . Também requer que o certificado tenha um par de chaves capaz de criptografia / descriptografia, enquanto a derivação de chave no estilo DH só precisa de sinal / verificação.)

    
por 27.11.2016 / 15:00