Publicouse a versión de OpenSSH 10.1, unha implementación aberta dun cliente e servidor para traballar usando os protocolos SSH 2.0 e SFTP.
Principais cambios:
- Resolveuse un problema de seguranza que podía permitir que un atacante realizase unha substitución de comandos de shell manipulando caracteres especiais nun nome de usuario ou URI ao executar un comando especificado mediante a configuración "ProxyCommand" e que contén a substitución "%u". Este problema só afecta aos sistemas que permiten a substitución de nomes de usuario ou URI obtidos de fontes non fiables ao executar ssh.
Para bloquear estes ataques, prohíbese o uso de caracteres de control nos nomes de usuario especificados na liña de comandos ou substituídos na configuración mediante secuencias %. Tamén se prohibe o uso do carácter nulo ("\0") no URI ssh://. Só se fai unha excepción para os nomes de usuario especificados no ficheiro de configuración (supoñendo que os datos do ficheiro de configuración sexan de confianza).
- As utilidades ssh e ssh-agent agora admiten claves ed25519 almacenadas en tokens PKCS#11.
- Engadiuse a configuración RefuseConnection ao ficheiro de configuración ssh_config. Cando se procesa na sección activa, finaliza o proceso cunha mensaxe de erro sen tentar establecer unha conexión. Coincidencia entre o host foo e RefuseConnection: "o host foo xa non está en uso, conéctese á barra de hosts".
- Engadíronse xestores de sinais SIGINFO a ssh e sshd para rexistrar a información da sesión e do canal activo.
- No caso de rexeitamento da autenticación dun usuario mediante un certificado, sshd garante que non só se rexistre o motivo do bloqueo de inicio de sesión, senón tamén información completa para identificar o certificado problemático.
- sshd engadiu unha comprobación do número de pantalla X11 en relación co desprazamento especificado na directiva X11DisplayOffset.
- O conxunto de probas unitarias agora inclúe capacidades de medición do rendemento, que se activan executando "make UNITTEST_BENCHMARK=yes" en OpenBSD ou "make unit-bench" noutros sistemas.
Cambios de compatibilidade con versións anteriores que poderían ser incumpridores:
- Engadiuse un aviso a ssh cando se usa un algoritmo de acordo de claves que non é resistente aos ataques de forza bruta nun ordenador cuántico durante o establecemento da conexión. Este aviso engadiuse debido ao risco de futuros ataques usando volcados de tráfico gardados previamente. Para desactivar o aviso, engadiuse a opción WarnWeakCrypto a ssh_config. Coincide co host unsafe.example.com WarnWeakCrypto non
- A xestión dos parámetros de calidade de servizo (IPQoS) de DSCP (código de mensaxe direccional) modificouse significativamente en ssh e sshd. O tráfico interactivo agora está configurado na clase EF (reenvío acelerado) por defecto para un procesamento de maior prioridade en redes sen fíos. O tráfico non interactivo agora está configurado na clase predeterminada do sistema operativo. A clase de tráfico pódese cambiar usando a configuración IPQoS en ssh_config e sshd_config. Os parámetros ToS (tipo de servizo) de IPv4 na directiva IPQoS están obsoletos (DSCP substituíu ToS).
- Ao engadir un certificado a ssh-add, a duración do certificado agora establécese nun valor 5 minutos máis longo que o período de validez do certificado (para eliminar automaticamente os certificados caducados). Para desactivar este comportamento, engadiuse a opción "-N" a ssh-add.
- Eliminouse a compatibilidade coas claves XMSS, que estaban marcadas como experimentais e nunca se activaban por defecto.
- Os sockets de Unix creados polos procesos ssh-agent e sshd foron trasladados de /tmp a ~/.ssh/agent, o que garante que os procesos illados que teñan acceso restrinxido ao sistema de ficheiros pero acceso aberto a /tmp non poidan acceder a estes sockets.
En versións futuras, os rexistros DNS SHA1 SSHFP quedarán obsoletos debido a problemas de seguranza coa función hash SHA1. Estes rexistros serán ignorados e o comando "ssh-keygen -r" só xerará rexistros SSHFP SHA256.
Fonte: opennet.ru
