Sei que o SSH é seguro, desde que você não esteja sofrendo um ataque MITM, mas quero saber se há uma maneira de tornar o SSH 100% seguro mesmo em tais circunstâncias, descubra que você está sendo inspecionado antes de qualquer informação confidencial ser divulgado, ou pelo menos tornando não impossível, mas "mais difícil" para o atacante realmente ler / escrever dados reais (talvez haja uma maneira de garbling os dados para que não faça sentido ou algo assim?).
Eu acho que você conseguiu o que eu quero.
Por exemplo, se você se recusar a se conectar caso a impressão digital não seja a que você esperava, o MITM ainda funcionará?
Vou tentar atualizar esta questão se ideias surgirem em minha mente.
ssh
fingerprint
man-in-the-middle
Guilherme Vieira
fonte
fonte
Respostas:
Isso é exatamente o que o SSH protege contra. Contanto que você verifique cuidadosamente a chave do host, não importa se alguém está lendo seu tráfego: tudo é criptografado.
Novamente, o SSH padrão ficará bem. A verificação da chave do host é uma das primeiras tarefas feitas ao estabelecer uma conexão SSH; Se você cancelá-lo, a conexão será fechada imediatamente sem transmitir nenhum dado de autenticação.
O invasor não receberá dados SSH "privados", se é isso que você quer dizer. Veja acima - a verificação da chave do host é uma das primeiras coisas feitas. Nada mais é enviado até que o servidor seja verificado.
Ele é chamado de "criptografia" e acontece de ser uma parte essencial do SSH. :) O atacante não poderá ler nada a menos que você aceite seus hostkey em vez do real. Da mesma forma, a criptografia junto com a verificação de integridade (usando o HMAC) torna impossível inserir pacotes.
Eu admito que não sou um criptógrafo nem nada. Mas IMHO, se você verificar cuidadosamente a impressão digital da chave do host, então SSHv2 é tão seguro quanto ele ganha.
Se não fosse seguro, teria sido corrigido / substituído / atualizado. Isso aconteceu uma vez: o SSH v1 foi substituído pelo SSH v2.
Isso significa que você devo desabilite o SSH v1 no servidor e no cliente.
A versão 1 do SSH é muito insegura e, embora a maioria dos clientes esteja configurada para usar o SSHv2 primeiro, eles ainda retornariam à v1 se um servidor não oferecer a v2. Isto introduz uma oportunidade para um ataque MITM ... embora eu não me lembre dos detalhes, tem algo a ver com o atacante gerando uma chave v1 com uma impressão digital muito similar.
Para OpenSSH, coloque
Protocol 2
no seu arquivo de configuração.Há uma possibilidade muito pequena de que um dos algoritmos usados pelo SSH seja quebrado. Mas se alguém conseguir quebrar RSA ou DH, o mundo terá problemas maiores para se preocupar do que a segurança do seu servidor ... (Além disso, existem algoritmos alternativos).
A propósito, o OpenSSH v5.8 mudou de DH e DSA para ECDH e ECDSA como seus principais algoritmos (para troca de chaves e chaves de host, respectivamente).
fonte
O SSH não é bom, é propenso ao ataque man-in-the-middle.
A Microsoft está fazendo um "ataque" em sua conexão se houver um firewall do Forefront TMG entre você e o servidor que você tenta acessar. E isso inclui falsificação de certificados SSH.
fonte