Después de seis meses de desarrollo, se publica el lanzamiento de OpenSSH 9.1, una implementación abierta de cliente y servidor para trabajar con los protocolos SSH 2.0 y SFTP. La versión se caracteriza principalmente por incluir correcciones de errores, incluyendo la resolución de varias vulnerabilidades potenciales causadas por problemas de manejo de memoria:
- Desbordamiento de un byte en el código que maneja el banner SSH en la utilidad ssh-keyscan.
- Doble llamada a la función free() en caso de error al calcular los hashes para los archivos en el código de creación y verificación de firmas digitales en la utilidad ssh-keygen.
- Doble llamada a la función free() al manejar errores en la utilidad ssh-keysign.
Principales cambios:
- Se ha añadido la directiva RequiredRSASize en ssh y sshd, que permite definir el tamaño mínimo aceptable de las claves RSA. En sshd, se ignorarán las claves más pequeñas, y en ssh, esto provocará la finalización de la conexión.
- La edición portátil de OpenSSH ha sido trasladada para utilizar claves SSH para firmar digitalmente los commits y etiquetas en Git.
- Las directivas SetEnv en los archivos de configuración ssh_config y sshd_config ahora aplican el valor de la primera mención de la variable de entorno si se define varias veces en la configuración (anteriormente se aplicaba la última mención).
- Al invocar la utilidad ssh-keygen con la bandera '-A' (generación de todos los tipos de claves de host soportadas por defecto) se ha deshabilitado la generación de claves DSA, que no se utilizan por defecto desde hace varios años.
- En sftp-server y sftp se implementó la extensión 'users-groups-by-id@openssh.com', que permite al cliente solicitar nombres de usuarios y grupos correspondientes a un conjunto especificado de identificadores únicos (uid y gid). En sftp, esta extensión se usó para mostrar nombres al listar el contenido de un directorio.
- En sftp-server se implementó la extensión 'home-directory' para expandir las rutas ~/ y ~user/, como alternativa a la extendida anteriormente propuesta 'expand-path@openssh.com' (la extensión 'home-directory' se propuso para estandarización y ya es soportada por algunos clientes).
- En ssh-keygen y sshd se ha añadido la capacidad de especificar la hora en la zona horaria UTC al determinar los intervalos de validez de los certificados y claves, además del tiempo del sistema.
- En sftp se permite especificar argumentos adicionales en la opción '-D' (por ejemplo, '/usr/libexec/sftp-server -el debug3').
- En ssh-keygen se permite el uso de la bandera «-U» (uso de ssh-agent) junto con las operaciones «-Y sign» para indicar que las claves privadas están alojadas en ssh-agent.
Fuente: opennet.ru
