OpenSSH 8.9 lançado com correção para uma vulnerabilidade crítica

E foi lançado o OpenSSH 8.9 com correção para uma vulnerabilidade crítica, e outras melhorias. Confira as novidades e veja com instalar no Linux.

O OpenSSH é o mais importante conjunto de utilitários de rede relacionado à segurança que provém a criptografia em sessões de comunicações em uma rede de computadores usando o protocolo SSH.

Agora, após seis meses de desenvolvimento, foi lançado o lançamento do OpenSSH 8.9.

Novidades do OpenSSH 8.9

OpenSSH 8.9 lançado com correção para uma vulnerabilidade crítica

OpenSSH 8.9 corrige uma vulnerabilidade no sshd que poderia permitir acesso sem autenticação. O problema é causado por um estouro de inteiro no código de autenticação, mas a exploração só é possível em combinação com outros erros lógicos no código.

Em sua forma atual, a vulnerabilidade não pode ser explorada quando a divisão de privilégio está habilitada, pois sua manifestação é bloqueada por verificações separadas realizadas na divisão do código de rastreamento de privilégio.

O modo de privilégio compartilhado foi ativado por padrão em 2002 a partir do OpenSSH 3.2.2 e é obrigatório desde a versão 2017 do OpenSSH 7.5.

Além disso, nas versões portáteis do OpenSSH desde a versão 6.5 (2014), a vulnerabilidade é bloqueada pela compilação com a inclusão de sinalizadores para proteção contra estouros de inteiros.

No OpenSSH 8.9, descobriremos que a versão portátil do OpenSSH remove o suporte interno do sshd para hash de senha usando o algoritmo MD5 (relinking para bibliotecas externas como libxcrypt é permitido) ssh, sshd, ssh-add e ssh-agent implementam um subsistema para restringir o encaminhamento e uso de chaves adicionadas ao ssh-agent.

O subsistema permite definir regras que determinam como e onde as chaves podem ser usadas no ssh-agent.

Por exemplo, para adicionar uma chave que só pode ser usada para autenticar quando qualquer usuário se conectar ao host scylla.example.org, o usuário perseus se conectar ao host cetus.example.org e o usuário medea se conectar ao host charybdis.example .org host, redirecionando por meio de um host intermediário scylla.example.org.

Em ssh e sshd, a lista KexAlgorithms, que determina a ordem em que os métodos de troca de chaves são selecionados, por padrão adicionou o algoritmo híbrido “sntrup761x25519-sha512@openssh.com” (ECDH/x25519 + NTRU Prime), ao qual é resistente à seleção em computadores quânticos.

No OpenSSH 8.9, esse método de negociação foi adicionado entre os métodos ECDH e DH, mas está planejado para ser habilitado por padrão na próxima versão.

ssh-keygen, ssh e ssh-agent melhoraram o manuseio de chaves de token FIDO usadas para verificação de dispositivos, incluindo chaves para autenticação biométrica.

Das outras mudanças no OpenSSH 8.9, destacam-se os seguintes itens:

  • Adicionado o comando “ssh-keygen -Y match-principals” ao ssh-keygen para verificar nomes de usuário em um arquivo com uma lista de nomes permitidos.
  • ssh-add e ssh-agent fornecem a capacidade de adicionar chaves FIDO protegidas por PIN ao ssh-agent (um prompt de PIN é exibido no momento da autenticação).
  • ssh-keygen permite que você escolha o algoritmo de hash (sha512 ou sha256) durante a assinatura.
  • Para melhorar o desempenho, o ssh e o sshd lêem os dados da rede diretamente no buffer do pacote de entrada, ignorando o buffer intermediário na pilha. A colocação direta dos dados recebidos no buffer do canal é implementada de maneira semelhante.
  • Em ssh, a diretiva PubkeyAuthentication estendeu a lista de parâmetros suportados (yes|no|unbound|host-bound) para fornecer a capacidade de selecionar qual extensão de protocolo usar.

Em uma versão futura, está planejado alterar o utilitário scp padrão para usar SFTP em vez do protocolo SCP/RCP legado.

O SFTP usa métodos de manipulação de nomes mais previsíveis e não usa processamento de shell de padrões glob em nomes de arquivos do outro lado do host, o que cria problemas de segurança.

Em particular, ao usar SCP e RCP, o servidor decide quais arquivos e diretórios enviar ao cliente, e o cliente apenas verifica a correção dos nomes dos objetos retornados, o que, na ausência de verificações adequadas pelo cliente, permite que o servidor transfira outros nomes de arquivos diferentes dos solicitados.

O protocolo SFTP não tem esses problemas, mas não suporta a expansão de caminhos especiais como “~/

Para saber mais sobre essa versão do OpenSSH, acesse a nota de lançamento.

Como instalar ou atualizar o OpenSSH

Para aqueles que estão interessados ​​em poder instalar esta nova versão do OpenSSH em seus sistemas, no momento eles podem fazer isso baixando o código-fonte e fazendo 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 Linux. Mas possivelmente, em breve estará disponível.

Portanto, se você quer instalar a versão mais recente do OpenSSH nas principais distribuições Linux, faça o seguinte:

Passo 1. Abra um terminal com privilégios de administrador (root) ou abra um terminal como usuário comum e use o ‘sudo‘ antes dos comandos a seguir;
Passo 2. Baixe o código fonte do programa com esse comando;

wget https://cloudflare.cdn.openbsd.org/pub/OpenBSD/OpenSSH/openssh-8.9.tar.gz -O openssh.tar.gz

Passo 3. Quando terminar o download, descompacte o arquivo baixado, usando esse comando;

tar -xvf openssh.tar.gz

Passo 4. Acesse a pasta criada durante a descompactação;

cd openssh-*/

Passo 5. Use o comando abaixo para prepara o código fonte para ser compilado;

./configure --prefix=/opt --sysconfdir=/etc/ssh

Passo 6. Em seguida, use esse comando para compilar o código fonte;

make

Passo 7. Por fim, use o comando abaixo para instalar o programa no seu sistema.

make install

Pronto! O OpenSSH está instalado.

Se depois você precisar desinstalar, em um terminal (com privilégios de administrador ou seguido de ‘sudo‘), acesse novamente a pasta criada ao descompactar e use o comando abaixo;

make uninstall

Deixe um comentário

Sair da versão mobile