Esta falha permite que um utilizador consiga ultrapassar o mecanismo de segurança por ssh e comprometer os servidores.
Primeiro, o que é o libssh?
É uma livraria feita em C, e que faz uso do protocolo ssh (Secure Shell), usado para entrar em servidores e realizar operações como aceder a ficheiros. Isto, de forma segura.
Como funciona?
A falha é dada pelo CVE-2018-10933 e, segundo o investigador que a descobriu, é algo trivial. Um atacante só precisa de enviar uma mensagem “SSH2_MSG_USERAUTH_SUCCESS” a um servidor com ssh ativo quando o mesmo espera a mensagem “SSH2_MSG_USERAUTH_REQUEST”.
Esta falha existe na medida em que um utilizador consegue entrar no servidor por ssh sem que o mesmo requeira uma password
Versões afetadas:
Libssh v0.6 de 2014 e acima
A livraria falha em validar se o pacote de login efetuado com sucesso foi enviado pelo servidor ao cliente, além de falhar na verificação de se o processo de autenticação foi completado com sucesso. Isto significa que o atacante, ao enviar a mensagem supracitada , consegue fazer com que a livraria considere que a autenticação foi completada com sucesso.
Verificou-se também que se recorrermos ao Shodan e fizermos uma pesquisa, são encontrados milhares de servidores afetados.
Versões corrigidas:
libssh v0.8.4 e 0.7.6.
Tanto as implementações existentes no GitHub e de OpenSSH desta livraria não estão afetadas.
Se quiseres também ver o POC que foi publicado, podes vir a este link: https://seclists.org/oss-sec/2018/q4/65
Para saberes mais acerca desta livraria, podes dirigir-te ao site oficial: https://www.libssh.org/