Lanzamento de OpenSSH 8.4

Despois de catro meses de desenvolvemento presentado versión de OpenSSH 8.4, unha implementación aberta de cliente e servidor para traballar usando os protocolos SSH 2.0 e SFTP.

Principais cambios:

  • Cambios de seguridade:
    • En ssh-agent, cando se usan claves FIDO que non foron creadas para a autenticación SSH (o ID da chave non comeza coa cadea "ssh:"), agora verifica que a mensaxe se asinará mediante os métodos utilizados no protocolo SSH. O cambio non permitirá que ssh-agent sexa redirixido a hosts remotos que teñan chaves FIDO para bloquear a posibilidade de usar estas chaves para xerar sinaturas para solicitudes de autenticación web (o caso inverso, cando un navegador pode asinar unha solicitude SSH, está excluído inicialmente). debido ao uso do prefixo “ssh:” no identificador da chave).
    • A xeración de chaves residentes de ssh-keygen inclúe soporte para o complemento credProtect descrito na especificación FIDO 2.1, que proporciona protección adicional para as chaves ao requirir un PIN antes de realizar calquera operación que poida producir a extracción da clave residente do token.
  • Cambios de compatibilidade que poden romper:
    • Para soportar FIDO/U2F, recoméndase utilizar a biblioteca libfido2 polo menos a versión 1.5.0. Implementouse parcialmente a posibilidade de usar edicións antigas, pero neste caso, funcións como as claves residentes, a solicitude de PIN e a conexión de varios tokens non estarán dispoñibles.
    • En ssh-keygen, engadíronse ao formato da información de confirmación os datos do autenticador necesarios para verificar as sinaturas dixitais de confirmación, gardados opcionalmente ao xerar unha clave FIDO.
    • Cambiouse a API utilizada cando OpenSSH interactúa coa capa para acceder aos tokens FIDO.
    • Cando se crea unha versión portátil de OpenSSH, agora é necesario que automake xere o script de configuración e os ficheiros de compilación que se acompañan (se se crea a partir dun ficheiro tar de código publicado, non é necesario rexenerar a configuración).
  • Engadiuse compatibilidade coas claves FIDO que requiren a verificación do PIN en ssh e ssh-keygen. Para xerar claves con PIN, engadiuse a opción "verify-required" a ssh-keygen. Se se usan tales claves, antes de realizar a operación de creación de sinatura, pídeselle ao usuario que confirme as súas accións introducindo un código PIN.
  • En sshd, a opción "verify-required" está implementada na configuración authorized_keys, que require o uso de capacidades para verificar a presenza do usuario durante as operacións co token. O estándar FIDO ofrece varias opcións para esa verificación, pero actualmente OpenSSH só admite a verificación baseada en PIN.
  • sshd e ssh-keygen engadiron compatibilidade para verificar sinaturas dixitais que cumpran co estándar FIDO Webauthn, que permite que as chaves FIDO se utilicen nos navegadores web.
  • En ssh na configuración do ficheiro de certificado,
    ControlPath, IdentityAgent, IdentityFile, LocalForward e
    RemoteForward permite a substitución de valores das variables de ambiente especificadas no formato "${ENV}".

  • ssh e ssh-agent engadiron soporte para a variable de ambiente $SSH_ASKPASS_REQUIRE, que se pode usar para activar ou desactivar a chamada ssh-askpass.
  • En ssh en ssh_config na directiva AddKeysToAgent, engadiuse a capacidade de limitar o período de validez dunha chave. Despois de que caduque o límite especificado, as chaves elimínanse automaticamente de ssh-agent.
  • En scp e sftp, usando a marca "-A", agora pode permitir explícitamente a redirección a scp e sftp usando ssh-agent (a redirección está desactivada por defecto).
  • Engadido soporte para a substitución de '%k' na configuración de ssh, que especifica o nome da chave do servidor. Esta función pódese usar para distribuír chaves en ficheiros separados (por exemplo, "UserKnownHostsFile ~/.ssh/known_hosts.d/%k").
  • Permitir o uso da operación "ssh-add -d -" para ler as claves de stdin que se queren eliminar.
  • En sshd, o inicio e o final do proceso de poda de conexión reflíctese no rexistro, regulado mediante o parámetro MaxStartups.

Os desenvolvedores de OpenSSH tamén lembraron a próxima retirada de algoritmos que usan hash SHA-1 debido a promoción a eficacia dos ataques de colisión cun prefixo determinado (o custo de seleccionar unha colisión estímase en aproximadamente 45 mil dólares). Nun dos próximos lanzamentos, planean desactivar de forma predeterminada a posibilidade de usar o algoritmo de sinatura dixital de chave pública "ssh-rsa", que se menciona no RFC orixinal para o protocolo SSH e segue estendido na práctica (para probar o uso de ssh-rsa nos seus sistemas, pode tentar conectarse mediante ssh coa opción "-oHostKeyAlgorithms=-ssh-rsa").

Para suavizar a transición a novos algoritmos en OpenSSH, a próxima versión activará a configuración UpdateHostKeys de forma predeterminada, que migrará automaticamente os clientes a algoritmos máis fiables. Os algoritmos recomendados para a migración inclúen rsa-sha2-256/512 baseado en RFC8332 RSA SHA-2 (soportado desde OpenSSH 7.2 e usado por defecto), ssh-ed25519 (soportado desde OpenSSH 6.5) e ecdsa-sha2-nistp256/384 based en RFC521 ECDSA (soportado desde OpenSSH 5656).

Fonte: opennet.ru

Engadir un comentario