Lanzamiento de OpenSSH 8.0

Después de cinco meses de desarrollo presentado relizar OpenSSH 8.0, una implementación abierta de cliente y servidor para trabajar a través de los protocolos SSH 2.0 y SFTP.

Cambios importantes:

  • Se ha agregado a ssh y sshd soporte experimental para un método de intercambio de claves que es resistente a ataques de fuerza bruta en una computadora cuántica. Las computadoras cuánticas son radicalmente más rápidas a la hora de resolver el problema de descomponer un número natural en factores primos, lo que subyace a los modernos algoritmos de cifrado asimétrico y no puede resolverse eficazmente en los procesadores clásicos. El método propuesto se basa en el algoritmo. NTRU primer (función ntrup4591761), desarrollada para criptosistemas poscuánticos, y el método de intercambio de claves de curva elíptica X25519;
  • En sshd, las directivas ListenAddress y PermitOpen ya no soportan la sintaxis heredada "host/port", que se implementó en 2001 como una alternativa a "host:port" para simplificar el trabajo con IPv6. En las condiciones modernas, se ha establecido la sintaxis “[::6]:1” para IPv22, y “host/puerto” a menudo se confunde con la indicación de la subred (CIDR);
  • ssh, ssh-agent y ssh-add ahora admiten claves ECDSA en tokens PKCS#11;
  • En ssh-keygen, el tamaño de clave RSA predeterminado se ha aumentado a 3072 bits, de acuerdo con las nuevas recomendaciones del NIST;
  • ssh permite el uso de la configuración "PKCS11Provider=none" para anular la directiva PKCS11Provider especificada en ssh_config;
  • sshd proporciona una visualización de registro de situaciones en las que la conexión finaliza al intentar ejecutar comandos bloqueados por la restricción “ForceCommand=internal-sftp” en sshd_config;
  • En ssh, cuando se muestra una solicitud para confirmar la aceptación de una nueva clave de host, en lugar de la respuesta "sí", ahora se acepta la huella digital correcta de la clave (en respuesta a la invitación para confirmar la conexión, el usuario puede copiar la hash de referencia recibido por separado a través del portapapeles, para no compararlo manualmente);
  • ssh-keygen proporciona un incremento automático del número de secuencia del certificado al crear firmas digitales para múltiples certificados en la línea de comando;
  • Se ha agregado una nueva opción "-J" a scp y sftp, equivalente a la configuración de ProxyJump;
  • En ssh-agent, ssh-pkcs11-helper y ssh-add, se agregó el procesamiento de la opción de línea de comando “-v” para aumentar el contenido de información de la salida (cuando se especifica, esta opción se pasa a los procesos secundarios, por ejemplo). por ejemplo, cuando se llama a ssh-pkcs11-helper desde ssh-agent);
  • Se agregó la opción "-T" a ssh-add para probar la idoneidad de las claves en ssh-agent para realizar operaciones de creación y verificación de firmas digitales;
  • sftp-server implementa soporte para la extensión del protocolo “lsetstat en openssh.com”, que agrega soporte para la operación SSH2_FXP_SETSTAT para SFTP, pero sin seguir enlaces simbólicos;
  • Se agregó la opción "-h" a sftp para ejecutar comandos chown/chgrp/chmod con solicitudes que no utilizan enlaces simbólicos;
  • sshd proporciona la configuración de la variable de entorno $SSH_CONNECTION para PAM;
  • Para sshd, se agregó un modo de coincidencia "Coincidencia final" a ssh_config, que es similar a "Coincidencia canónica", pero no requiere que se habilite la normalización del nombre de host;
  • Se agregó soporte para el prefijo '@' a sftp para deshabilitar la traducción de la salida de los comandos ejecutados en modo por lotes;
  • Cuando muestra el contenido de un certificado usando el comando
    "ssh-keygen -Lf /path/certificate" ahora muestra el algoritmo utilizado por la CA para validar el certificado;

  • Soporte mejorado para el entorno Cygwin, por ejemplo, proporcionando una comparación que no distingue entre mayúsculas y minúsculas de nombres de grupos y usuarios. El proceso sshd en el puerto Cygwin se cambió a cygsshd para evitar interferencias con el puerto OpenSSH proporcionado por Microsoft;
  • Se agregó la capacidad de compilar con la rama experimental OpenSSL 3.x;
  • eliminado vulnerabilidad (CVE-2019-6111) en la implementación de la utilidad scp, que permite sobrescribir archivos arbitrarios en el directorio de destino en el lado del cliente al acceder a un servidor controlado por un atacante. El problema es que cuando se usa scp, el servidor decide qué archivos y directorios enviar al cliente, y el cliente solo verifica la exactitud de los nombres de los objetos devueltos. La verificación del lado del cliente se limita a bloquear únicamente los viajes más allá del directorio actual (“../”), pero no tiene en cuenta la transferencia de archivos con nombres diferentes a los solicitados originalmente. En el caso de la copia recursiva (-r), además de los nombres de los archivos, también puede manipular los nombres de los subdirectorios de forma similar. Por ejemplo, si el usuario copia archivos en el directorio de inicio, el servidor controlado por el atacante puede producir archivos con los nombres .bash_aliases o .ssh/authorized_keys en lugar de los archivos solicitados, y la utilidad scp los guardará en el directorio de inicio del usuario. directorio de inicio.

    En la nueva versión, la utilidad scp se ha actualizado para verificar la correspondencia entre los nombres de los archivos solicitados y los enviados por el servidor, lo cual se realiza en el lado del cliente. Esto puede causar problemas con el procesamiento de la máscara, ya que los caracteres de expansión de la máscara pueden procesarse de manera diferente en el lado del servidor y del cliente. En caso de que tales diferencias hagan que el cliente deje de aceptar archivos en scp, se agregó la opción "-T" para deshabilitar la verificación del lado del cliente. Para corregir completamente el problema, se requiere una reelaboración conceptual del protocolo scp, que ya está desactualizado, por lo que se recomienda utilizar protocolos más modernos como sftp y rsync.

Fuente: opennet.ru

Añadir un comentario