A nova versão de OpenSSH 8.8 já foi lançado e esta nova versão se destaca por desabilitar por padrão a capacidade de usar assinaturas digitais com base em chaves RSA com um hash SHA-1 ("ssh-rsa").
Fim do suporte para assinaturas "ssh-rsa" é devido a um aumento na eficácia dos ataques de colisão com um determinado prefixo (o custo de adivinhar a colisão é estimado em cerca de 50 mil dólares). Para testar o uso de ssh-rsa em um sistema, você pode tentar se conectar via ssh com a opção "-oHostKeyAlgorithms = -ssh-rsa".
Além disso, o suporte para assinaturas RSA com hashes SHA-256 e SHA-512 (rsa-sha2-256 / 512), que são suportados desde o OpenSSH 7.2, não mudou. Na maioria dos casos, encerrar o suporte para "ssh-rsa" não exigirá nenhuma ação manual. pelos usuários, já que a configuração UpdateHostKeys foi habilitada anteriormente por padrão no OpenSSH, o que converte automaticamente os clientes em algoritmos mais confiáveis.
Esta versão desativa assinaturas RSA usando o algoritmo de hash SHA-1 por padrão. Esta mudança foi feita uma vez que o algoritmo de hash SHA-1 é criptograficamente quebrado, e é possível criar o prefixo escolhido colisões de hash por
Para a maioria dos usuários, essa mudança deve ser invisível e há não há necessidade de substituir as chaves ssh-rsa. OpenSSH é compatível com RFC8332 Assinaturas RSA / SHA-256/512 da versão 7.2 e chaves ssh-rsa existentes ele usará automaticamente o algoritmo mais forte sempre que possível.
Para migração, a extensão de protocolo "hostkeys@openssh.com" é usada«, Que permite ao servidor, depois de passar a autenticação, informar o cliente de todas as chaves de host disponíveis. Ao conectar-se a hosts com versões muito antigas do OpenSSH no lado do cliente, você pode reverter seletivamente a capacidade de usar assinaturas "ssh-rsa" adicionando ~ / .ssh / config
A nova versão também corrige um problema de segurança causado por sshd, desde OpenSSH 6.2, inicializando incorretamente o grupo de usuários ao executar comandos especificados nas diretivas AuthorizedKeysCommand e AuthorizedPrincipalsCommand.
Essas diretivas devem garantir que os comandos sejam executados por um usuário diferente, mas na verdade eles herdaram a lista de grupos usada ao iniciar o sshd. Potencialmente, esse comportamento, dadas certas configurações do sistema, permitia que o controlador em execução ganhasse privilégios adicionais no sistema.
As notas de lançamento eles também incluem um aviso sobre a intenção de alterar o utilitário scp padrão para usar SFTP em vez do protocolo SCP / RCP legado. SFTP impõe nomes de métodos mais previsíveis e padrões globais de não processamento são usados em nomes de arquivo por meio do shell no outro lado do host, criando questões de segurança.
Em particular, ao usar SCP e RCP, o servidor decide quais arquivos e diretórios enviar para o cliente, e o cliente apenas verifica a exatidão dos nomes dos objetos retornados, o que, na ausência de verificações adequadas no lado do cliente, permite que servidor para transmitir outros nomes de arquivo diferentes dos solicitados.
SFTP não tem esses problemas, mas não suporta a expansão de rotas especiais como "~ /". Para resolver essa diferença, na versão anterior do OpenSSH, uma nova extensão SFTP foi proposta na implementação do servidor SFTP para expor os caminhos ~ / e ~ usuário /.
Finalmente se você estiver interessado em saber mais sobre isso sobre esta nova versão, você pode verificar os detalhes indo para o seguinte link.
Como instalar o OpenSSH 8.8 no Linux?
Para aqueles que estão interessados em poder instalar esta nova versão do OpenSSH em seus sistemas, por enquanto eles podem fazer isso baixando o código-fonte deste e realizando a compilação em seus computadores.
Isso ocorre porque a nova versão ainda não foi incluída nos repositórios das principais distribuições do Linux. Para obter o código-fonte, você pode fazer a partir do seguinte link.
Feito o download, agora vamos descompactar o pacote com o seguinte comando:
tar -xvf openssh-8.8.tar.gz
Entramos no diretório criado:
cd openssh-8.8
Y podemos compilar com os seguintes comandos:
./configure --prefix=/opt --sysconfdir=/etc/ssh make make install