La sortie d'OpenSSH 9.8 avec la désactivation de l'algorithme DSA et des mécanismes de protection supplémentaires.

La version OpenSSH 9.8, une implémentation open source du client et du serveur pour le fonctionnement selon les protocoles SSH 2.0 et SFTP, a été publiée. En plus de corriger une vulnérabilité critique annoncée séparément (CVE-2024-6387), qui permet l'exécution à distance de code avec des droits root avant l'authentification, la nouvelle version corrige également une autre vulnérabilité moins dangereuse et propose plusieurs changements importants visant à améliorer la sécurité.

La deuxième vulnérabilité permet de contourner la protection contre les attaques par canaux auxiliaires ajoutée dans la version OpenSSH 9.5, qui analyse les retards entre les frappes sur le clavier pour recréer la saisie. Cette vulnérabilité permet de distinguer les paquets générant une activité de fond par la simulation de frappes fictives des paquets envoyés lors de réelles frappes, ce qui réduit l'efficacité du mécanisme de dissimulation des caractéristiques de la saisie interactive dans le trafic SSH. Les données sur les frappes permettent d'utiliser des attaques qui recréent la saisie sur la base de l'analyse des retards entre les frappes lors de la saisie de texte, qui dépendent de la disposition des touches sur le clavier (par exemple, la réaction lors de la saisie de la lettre « F » est plus rapide que lors de la saisie de « Q » ou « X », car moins de mouvements de doigts sont nécessaires pour l'appuyer).

De plus, il a été découvert que l'algorithme de transmission de paquets avec de réelles et de fausses frappes diminuait la fiabilité d'une autre méthode de protection contre les attaques par canaux auxiliaires. À partir de la version
OpenSSH 2.9.9 serveur , des paquets avec des frappes fictives pour la saisie console en mode echo-off, utilisé par exemple lors de la saisie de mots de passe dans su ou sudo, ont été envoyés. La nouvelle logique d'envoi de paquets fictifs permettait de distinguer les paquets de véritables frappes en mode echo-off pour leur analyse séparée lors d'une analyse passive du trafic. Dans ce cas, la précision des informations sur le temps des frappes est limitée, car après la saisie, les paquets ne sont pas envoyés immédiatement, mais après des intervalles de temps fixes (par défaut 20 ms).

D'autres changements dans OpenSSH 9.8 :

  • À l'étape de la compilation, la prise en charge par défaut des signatures numériques basées sur l'algorithme DSA est désactivée. Au début de l'année 2025, l'implémentation de DSA sera supprimée de la base de code. La raison invoquée pour cette suppression est le niveau de sécurité du DSA qui ne répond plus aux exigences modernes. Les coûts liés à la poursuite du support d'un algorithme DSA non sécurisé ne sont pas justifiés, et sa suppression encouragera l'arrêt du support de DSA dans d'autres implémentations SSH et bibliothèques cryptographiques.
  • Pour une protection supplémentaire contre les méthodes d'exploitation des vulnérabilités nécessitant un grand nombre de connexions à sshd, un nouveau mode de protection a été mis en œuvre et est activé par défaut, qui aide également à bloquer les attaques automatisées par tentative de deviner les mots de passe, au cours desquelles des bots tentent de trouver le mot de passe de l'utilisateur en essayant diverses combinaisons types. La protection est mise en place via le blocage adresses IP, des connexions dont le nombre d'échecs est élevé — sshd suit l'état d'achèvement des processus fils, détectant les situations où l'authentification a échoué ou lorsque le processus a été terminé de manière inattendue à cause d'une erreur, et, une fois un certain seuil dépassé, commence à bloquer les demandes des IP ou sous-réseaux problématiques. Pour configurer le seuil de déclenchement de blocage, le masque du sous-réseau à bloquer et la liste des exceptions, les paramètres PerSourcePenalties, PerSourceNetBlockSize et PerSourcePenaltyExemptList sont proposés.
  • La séparation de sshd en plusieurs fichiers exécutables distincts a été réalisée. Le processus sshd-session a été isolé de sshd, s'occupant des tâches liées à la gestion des sessions. Dans le processus sshd, les fonctions responsables de l'acceptation des connexions réseaux, de la vérification de la configuration, du chargement des clés hôtes et de la gestion des processus lancés selon le paramètre MaxStartups ont été conservées. Ainsi, le fichier exécutable sshd contient désormais les fonctionnalités minimales nécessaires pour accepter une nouvelle connexion réseau et lancer sshd-session pour traiter la session.
  • Le texte de certains messages d'erreur enregistrés dans le journal a été modifié. En particulier, plusieurs messages sont désormais envoyés au nom du processus « sshd-session » plutôt que « sshd ».
  • Dans l'outil ssh-keyscan, les informations concernant la version du protocole et le nom d'hôte sont désormais affichées dans le flux standard au lieu de STDERR. Une option « -q » a été proposée pour désactiver l'affichage.
  • Dans ssh, il est possible de désactiver l'utilisation des clés d'hôte via la directive HostkeyAlgorithms, en revenant à l'utilisation de clés d'hôte simples.
  • Dans la version portable de sshd, l'utilisation de argv[0] pour déterminer le nom du service PAM a été abandonnée. Une nouvelle directive « PAMServiceName » a été ajoutée à sshd_config pour spécifier le nom du service PAM, qui est par défaut réglé sur « sshd ».
  • Dans la version portable de sshd, les fichiers générés automatiquement (comme le script configure, config.h.in, etc.) seront conservés dans la branche Git avec les versions (par exemple, V_9_8), permettant ainsi de synchroniser le contenu des archives tar signées numériquement et des branches dans Git.
  • Dans la version portable de ssh et ssh-agent, le mode SSH_ASKPASS est défini
    lorsque la variable d'environnement WAYLAND_DISPLAY est présente, à l'instar de ce qui se passait pour X11 avec la variable d'environnement DISPLAY.
  • Dans la version portable de sshd, le support de l'envoi de notifications à systemd a été ajouté lors de la création d'un socket réseau à l'écoute ou lors d'un redémarrage, en utilisant un code isolé qui ne fait pas appel à la bibliothèque libsystemd.

Source : opennet.ru

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster