La publication d'OpenSSH 9.9, une implémentation ouverte du client et du serveur pour travailler avec les protocoles SSH 2.0 et SFTP, a eu lieu. Principales modifications :
- SSH et sshd ont ajouté la prise en charge de l'algorithme hybride d'échange de clés « mlkem768x25519-sha256 », résistant à la recherche par un ordinateur quantique et représentant une combinaison de X25519 ECDH et de l'algorithme ML-KEM (CRYSTALS-Kyber), récemment standardisé par le National Institute of Standards and Technology (NIST) des États-Unis. ML-KEM utilise des méthodes cryptographiques basées sur la résolution de problèmes de théorie des réseaux, dont le temps de résolution ne diffère pas entre les ordinateurs classiques et quantiques.
- Le mot clé « RefuseConnection » a été ajouté au fichier de configuration sshd_config, lorsque celui-ci est défini, sshd terminera les connexions après la première tentative d'authentification. La directive PerSourcePenalties a également reçu une classe « refuseconnection », qui s'applique lors de la terminaison de la connexion après le déclenchement de « RefuseConnection ».
- Dans le client ssh, la prise en charge de la compression des données avant l'authentification a été arrêtée, ce qui augmente considérablement la surface d'attaque sur les serveurs SSH et crée des risques d'utilisation de méthodes indirectes d'analyse des informations envoyées lors du processus d'authentification. Dans le serveur sshd, la compression avant l'authentification avait déjà été désactivée.
- Dans ssh et sshd, des règles similaires à celles du shell pour le traitement des chaînes d'arguments de la directive « Match » ont été impliquées, prenant en charge l'encapsulation imbriquée et l'échappement avec le caractère « \ ».
- Dans le fichier de configuration ssh_config, la directive « Include » prend en charge les variables d'environnement et les substitutions « % », similaires à celles de la directive « Match Exec ».
- Dans sshd_config, une option « invalid-user » a été ajoutée à la directive Match, qui se déclenche lors d'une tentative de connexion avec un nom d'utilisateur incorrect.
- Dans ssh et sshd, une implémentation plus rapide de l'algorithme « Streamlined NTRUPrime » a été mise en œuvre. Pour l'algorithme hybride d'échange de clés Streamlined NTRUPrime/X25519, il est désormais possible d'utiliser le nom « sntrup761x25519-sha512 », en plus du nom spécifique à SSH « sntrup761x25519-sha512@openssh.com ».
- Dans ssh, sshd et ssh-agent, une protection contre la persistance des clés privées dans les fichiers core a été ajoutée, fonctionnant sous OpenBSD, Linux et FreeBSD.
- Le traitement des clés a été transféré à l'utilisation de l'API EVP_PKEY, fournie par la bibliothèque libcrypto.
- Un changement aléatoire du délai de connexion (LoginGraceTime) de 4 secondes a été ajouté à sshd pour compliquer la détection de l'expiration du délai.
- Les problèmes de compilation avec la bibliothèque Musl ont été résolus.
Source : opennet.ru
