OpenSSH 8.6 llega a solucionar una vulnerabilidad y con algunos cambios importantes
Se dio a conocer el lanzamiento de la nueva versión de OpenSSH 8.6, una implementación abierta de un cliente y un servidor para trabajar con los protocolos SSH 2.0 y SFTP.
Para quienes desconocen de OpenSSH (Open Secure Shell) deben saber que este es un conjunto de aplicaciones que permiten realizar comunicaciones cifradas a través de una red, usando el protocolo SSH. Fue creado como una alternativa libre y abierta al programa Secure Shell, que es software propietario.
La suite OpenSSH incluye las siguientes utilidades de línea de comandos y demonios :
- scp: el cual es un reemplazo de rcp.
- sftp: un reemplazo de ftp para copiar archivos entre computadoras.
- ssh: un reemplazo de rlogin , rsh y telnet para permitir el acceso de shell a una máquina remota.
- ssh-add y ssh-agent: un conjunto de utilidades para facilitar la autenticación al mantener las claves listas y evitar la necesidad de ingresar frases de contraseña cada vez que se utilizan.
- ssh-keygen: una herramienta para inspeccionar y generar las claves RSA , DSA y de curva elíptica que se utilizan para la autenticación de usuarios y hosts.
- ssh-keyscan: que escanea una lista de hosts y recopila sus claves públicas.
- sshd: el demonio del servidor SSH.
Principales novedades de OpenSSH 8.6
La nueva versión corrige una vulnerabilidad en la implementación de la directiva LogVerbose, que apareció en la última versión y le permite elevar el nivel de información de depuración vertida en el registro, incluida la capacidad de filtrar por plantillas, funciones y archivos asociados con el código ejecutado. con privilegios eliminados en el proceso sshd aislado en un entorno de espacio aislado.
Un atacante que obtenga el control de un proceso sin privilegios con alguna vulnerabilidad desconocida puede aprovechar el problema de LogVerbose para evitar el aislamiento de la zona de pruebas y atacar un proceso elevado.
La vulnerabilidad en LogVerbose se considera poco probable en la práctica, ya que la configuración de LogVerbose está deshabilitada de forma predeterminada y, por lo general, solo se usa durante la depuración. El ataque también requiere encontrar una nueva vulnerabilidad en un proceso sin privilegios.
Por otra parte, de los cambios que se realizaron en OpenSSH 8.6 no relacionados con la vulnerabilidad. Podremos encontrar que se implementó una nueva extensión de protocolo «limits@openssh.com» en sftp y sftp-server, que permite al cliente SFTP obtener información sobre las restricciones del servidor, incluido el tamaño máximo de paquete y los límites de escritura/lectura.
En sftp, se utiliza una nueva extensión para seleccionar el tamaño de bloque óptimo para la transferencia de datos, además de que se agregó la configuración de ModuliFile a sshd_config para sshd, lo que le permite especificar la ruta al archivo «moduli» que contiene grupos para DH-GEX.
La variable de entorno TEST_SSH_ELAPSED_TIMES se ha agregado a las pruebas unitarias para permitir la visualización del tiempo transcurrido desde el inicio de cada prueba.
La solicitud de contraseña de GNOME se ha dividido en dos opciones, una para GNOME2 y otra para GNOME3 (contrib/gnome-ssk-askpass3.c). La variante GNOME3 usa gdk_seat_grab () para controlar la captura del teclado y el mouse para mejorar la compatibilidad con Wayland.
Y también se agregó soft-disallow a la llamada del sistema fstatat64 al sandbox de Linux basado en seccomp-bpf.
Finalmente si estás interesado en conocer más al respecto sobre esta nueva versión, puedes consultar los detalles dirigiéndote al siguiente enlace.
¿Como instalar OpenSSH 8.6 en Linux?
Para quienes estén interesados en poder instalar esta nueva versión de OpenSSH en sus sistemas, de momento podrán hacerlo descargando el código fuente de este y realizando la compilación en sus equipos.
Esto es debido a que la nueva versión aún no se ha incluido dentro de los repositorios de las principales distribuciones de Linux. Para obtener el código fuente, puedes hacer desde el siguiente enlace.
Hecha la descarga, ahora vamos a descomprimir el paquete con el siguiente comando:
tar -xvf openssh-8.6.tar.gz
Entramos al directorio creado:
cd openssh-8.6
Y podremos realizar la compilación con los siguientes comandos:
./configure --prefix=/opt --sysconfdir=/etc/ssh make make install