Nach sechs Monaten Entwicklung wurde die Version OpenSSH 9.1 veröffentlicht, eine offene Implementierung des Clients und Servers für die Protokolle SSH 2.0 und SFTP. Die Veröffentlichung wird hauptsächlich als fehlerbehebend charakterisiert, einschließlich der Beseitigung mehrerer potenzieller Sicherheitsanfälligkeiten, die durch Probleme mit dem Speicher verursacht wurden:
- Ein Ein-Byte-Überlauf im Code zur Verarbeitung des SSH-Banners in der ssh-keyscan-Utility.
- Ein doppelter Aufruf der Funktion free() im Fehlerfall bei der Berechnung von Hashes für Dateien im Code zur Erstellung und Überprüfung digitaler Signaturen in der ssh-keygen-Utility.
- Ein doppelter Aufruf der Funktion free() bei der Fehlerbehandlung in der ssh-keysign-Utility.
Wesentliche Änderungen:
- In ssh und sshd wurde die Direktive RequiredRSASize hinzugefügt, um eine Mindestgröße für RSA-Schlüssel festzulegen. In sshd werden Schlüssel mit geringerer Größe ignoriert, während in ssh die Verbindung beendet wird.
- Die tragbare Version von OpenSSH wurde auf die Verwendung von SSH-Schlüsseln umgestellt, um digitale Signaturen für Commits und Tags in Git zu gewährleisten.
- Die SetEnv-Direktive in den Konfigurationsdateien ssh_config und sshd_config verwendet nun den Wert aus der ersten Erwähnung der Umgebungsvariable, wenn sie mehrfach in der Konfiguration definiert ist (zuvor wurde die letzte Erwähnung angewendet).
- Beim Aufruf des Tools ssh-keygen mit der Option „-A“ (Generierung aller standardmäßig unterstützten Hostschlüsseltypen) wird die Erzeugung von DSA-Schlüsseln deaktiviert, die seit mehreren Jahren standardmäßig nicht mehr verwendet werden.
- Im sftp-server und sftp wurde die Erweiterung „users-groups-by-id@openssh.com“ implementiert, die es dem Client ermöglicht, Benutzernamen und Gruppennamen anzufordern, die zu einer angegebenen Menge von numerischen Identifikatoren (uid und gid) gehören. In sftp wurde diese Erweiterung verwendet, um die Namen bei der Anzeige des Verzeichnisinhalts darzustellen.
- Im sftp-server wurde die Erweiterung „home-directory“ implementiert, um die Pfade ~/ und ~user/ offenzulegen, als Alternative zur zuvor vorgeschlagenen Erweiterung „expand-path@openssh.com“ (die Erweiterung „home-directory“ wurde zur Standardisierung vorgeschlagen und wird bereits von einigen Clients unterstützt).
- In ssh-keygen und sshd wurde die Möglichkeit hinzugefügt, die Zeit in der UTC-Zeitzone bei der Festlegung der Gültigkeitsintervalle von Zertifikaten und Schlüsseln anzugeben, zusätzlich zur Systemzeit.
- In sftp ist es erlaubt, zusätzliche Argumente in der Option „-D“ anzugeben (z.B. „/usr/libexec/sftp-server -el debug3“).
- In ssh-keygen ist die Verwendung des Flags „-U“ (Nutzung von ssh-agent) zusammen mit den Operationen „-Y sign“ erlaubt, um festzustellen, dass sich private Schlüssel im ssh-agent befinden.
Quelle: opennet.ru
