Terrapin — vulnerabilidade no protocolo SSH que permite reduzir a segurança da conexão

Um grupo de pesquisadores da Universidade Ruhr de Bochum (Alemanha) apresentou uma nova técnica de ataque MITM no SSH — Terrapin, que explora uma vulnerabilidade (CVE-2023-48795) no protocolo. Um atacante capaz de organizar um ataque MITM pode, durante o processo de negociação da conexão, bloquear o envio da mensagem que configura as extensões do protocolo para reduzir o nível de proteção da conexão. Um protótipo da ferramenta para realizar o ataque foi publicado no GitHub.

No contexto do OpenSSH, a vulnerabilidade, por exemplo, permite reverter a conexão para o uso de algoritmos de autenticação menos seguros e desabilitar a proteção contra ataques de canal lateral, que recriam a entrada através da análise do tempo entre as pressões de teclas no teclado. Na biblioteca Python AsyncSSH, em combinação com a vulnerabilidade (CVE-2023-46446) na implementação da máquina de estado interna, o ataque Terrapin permite se infiltrar na sessão SSH.

A vulnerabilidade afeta todas as implementações do SSH que suportam ChaCha20-Poly1305 ou cifras em modo CBC em combinação com o modo ETM (Encrypt-then-MAC). Por exemplo, tais capacidades estão disponíveis no OpenSSH há mais de 10 anos. A vulnerabilidade foi corrigida na versão atual do OpenSSH 9.6, bem como nas atualizações do PuTTY 0.80, libssh 0.10.6/0.9.8 e AsyncSSH 2.14.2. No Dropbear SSH, a correção já foi adicionada ao código, mas a nova versão ainda não foi lançada.

A vulnerabilidade é causada pelo fato de que um atacante que controla o tráfego da conexão (por exemplo, o proprietário de um ponto de acesso sem fio malicioso) pode ajustar os números de sequência dos pacotes durante a negociação da conexão e conseguir a remoção discreta de um número arbitrário de mensagens SSH de controle enviadas pelo cliente ou servidor. Entre outras coisas, o atacante pode remover mensagens SSH_MSG_EXT_INFO, que são utilizadas para configurar as extensões do protocolo aplicáveis. Para que a outra parte não detecte a perda do pacote devido a uma quebra nos números de sequência, o atacante inicia o envio de um pacote falso com o mesmo número de sequência que o pacote removido. O pacote falso contém uma mensagem com a flag SSH_MSG_IGNORE, que é ignorada durante o processamento.

Terrapin - uma vulnerabilidade no protocolo SSH que permite reduzir a proteção da conexão.

Um ataque não pode ser realizado ao usar cifras de fluxo e CTR, pois a violação da integridade seria detectada ao nível da aplicação. Na prática, apenas a cifra ChaCha20-Poly1305 (chacha20-poly1305@openssh.com) é suscetível ao ataque, onde o estado é rastreado apenas pelos números de sequência das mensagens, e a combinação do modo Encrypt-Then-MAC (*-etm@openssh.com) e cifras CBC.

No OpenSSH 9.6 e em outras implementações, uma extensão do protocolo "strict KEX" foi implementada para bloquear o ataque, a qual é ativada automaticamente quando há suporte do lado do cliente. servidor A extensão encerra a conexão ao receber quaisquer mensagens fora do padrão ou excessivas (por exemplo, com a flag SSH_MSG_IGNORE ou SSH2_MSG_DEBUG), recebidas durante a negociação da conexão, além de reiniciar o contador MAC (Código de Autenticação de Mensagem) após a conclusão de cada troca de chaves.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster