Foi lançado o OpenSSH 9.3, uma implementação open-source de cliente e servidor para trabalhar com os protocolos SSH 2.0 e SFTP. A nova versão corrige problemas de segurança:
- Na ferramenta ssh-add, foi identificada uma falha lógica que faz com que, ao adicionar chaves de cartões inteligentes ao ssh-agent, as restrições especificadas pela opção "ssh-add -h" não sejam enviadas ao agente. Como resultado, uma chave era adicionada ao agente sem as restrições que permitiam conexões apenas de determinados hosts.
- Na ferramenta ssh, foi descoberta uma vulnerabilidade que pode levar à leitura de dados da área de pilha fora do buffer alocado ao processar respostas DNS especialmente formuladas, caso a configuração VerifyHostKeyDNS esteja ativada no arquivo de configuração. O problema está presente na implementação interna da função getrrsetbyname(), que é aplicada nas versões portáveis do OpenSSH, compiladas sem o uso da biblioteca externa ldns (—with-ldns) e em sistemas com bibliotecas padrão que não suportam a chamada getrrsetbyname(). A possibilidade de exploração da vulnerabilidade, além de causar uma negação de serviço ao cliente ssh, é considerada pouco provável.
Adicionalmente, pode-se notar uma vulnerabilidade na biblioteca libskey, que está inclusa no OpenBSD e é utilizada no OpenSSH. O problema existe desde 1997 e pode levar a um estouro de buffer na pilha ao processar nomes de hosts especialmente formatados. Observa-se que, apesar de a exploração da vulnerabilidade poder ser iniciada remotamente através do OpenSSH, na prática, a vulnerabilidade é inútil, pois para sua exploração o nome do host atacado (/etc/hostname) deve conter mais de 126 caracteres, enquanto o buffer só pode ser preenchido com caracteres de código nulo (‘\0’).
Entre as mudanças não relacionadas à segurança:
- No ssh-keygen e ssh-keyscan, foi adicionada a suporte ao parâmetro "-Ohashalg=sha1|sha256" para escolher o algoritmo de hash de registros SSHFP.
- No sshd, foi adicionada a opção "-G" para analisar e exibir a configuração ativa sem tentar carregar chaves privadas e sem realizar verificações adicionais, permitindo a checagem da configuração em uma fase anterior à geração de chaves e permitindo que usuários não privilegiados executem a verificação.
- No sshd, foi reforçada a isolamento na plataforma Linux, utilizando mecanismos de filtragem de chamadas de sistema seccomp e seccomp-bpf. Foram adicionadas flags ao mmap, madvise e futex à lista de chamadas de sistema permitidas.
Fonte: opennet.ru
