OpenSSH 8.5-Version

Nach fünf Monaten Entwicklungszeit wird die Veröffentlichung von OpenSSH 8.5 vorgestellt, einer offenen Implementierung eines Clients und Servers für die Arbeit über die Protokolle SSH 2.0 und SFTP.

Die OpenSSH-Entwickler erinnerten uns an die bevorstehende Außerbetriebnahme von Algorithmen, die SHA-1-Hashes verwenden, aufgrund der erhöhten Effizienz von Kollisionsangriffen mit einem bestimmten Präfix (die Kosten für die Auswahl einer Kollision werden auf etwa 50 US-Dollar geschätzt). In einer der kommenden Versionen ist geplant, die Möglichkeit zur Verwendung des digitalen Signaturalgorithmus „ssh-rsa“ mit öffentlichem Schlüssel, der im ursprünglichen RFC für das SSH-Protokoll erwähnt wird und in der Praxis nach wie vor weit verbreitet ist, standardmäßig zu deaktivieren.

Um die Verwendung von ssh-rsa auf Ihren Systemen zu testen, können Sie versuchen, eine Verbindung über ssh mit der Option „-oHostKeyAlgorithms=-ssh-rsa“ herzustellen. Gleichzeitig bedeutet die standardmäßige Deaktivierung digitaler „ssh-rsa“-Signaturen nicht einen vollständigen Verzicht auf die Verwendung von RSA-Schlüsseln, da das SSH-Protokoll neben SHA-1 auch die Verwendung anderer Hash-Berechnungsalgorithmen ermöglicht. Insbesondere bleibt es weiterhin möglich, zusätzlich zu „ssh-rsa“ die Bundles „rsa-sha2-256“ (RSA/SHA256) und „rsa-sha2-512“ (RSA/SHA512) zu verwenden.

Um den Übergang zu neuen Algorithmen zu erleichtern, ist in OpenSSH 8.5 die UpdateHostKeys-Einstellung standardmäßig aktiviert, die es Clients ermöglicht, automatisch zu zuverlässigeren Algorithmen zu wechseln. Mit dieser Einstellung wird eine spezielle Protokollerweiterung aktiviert „[E-Mail geschützt] ", wodurch der Server nach der Authentifizierung den Client über alle verfügbaren Hostschlüssel informieren kann. Der Client kann diese Schlüssel in seiner Datei ~/.ssh/known_hosts widerspiegeln, was die Aktualisierung der Hostschlüssel ermöglicht und das Ändern von Schlüsseln auf dem Server erleichtert.

Die Verwendung von UpdateHostKeys ist durch mehrere Einschränkungen eingeschränkt, die in Zukunft möglicherweise entfernt werden: Der Schlüssel muss in der UserKnownHostsFile referenziert werden und darf nicht in der GlobalKnownHostsFile verwendet werden; der Schlüssel darf nur unter einem Namen vorhanden sein; Ein Hostschlüsselzertifikat sollte nicht verwendet werden. in „known_hosts“ sollten keine Masken nach Hostnamen verwendet werden; die VerifyHostKeyDNS-Einstellung muss deaktiviert sein; Der Parameter UserKnownHostsFile muss aktiv sein.

Zu den empfohlenen Algorithmen für die Migration gehören rsa-sha2-256/512 basierend auf RFC8332 RSA SHA-2 (unterstützt seit OpenSSH 7.2 und standardmäßig verwendet), ssh-ed25519 (unterstützt seit OpenSSH 6.5) und ecdsa-sha2-nistp256/384/521 basierend auf RFC5656 ECDSA (unterstützt seit OpenSSH 5.7).

Weitere Änderungen:

  • Sicherheitsänderungen:
    • Eine Schwachstelle, die durch die erneute Freigabe eines bereits freigegebenen Speicherbereichs (Double-Free) verursacht wurde, wurde im ssh-agent behoben. Das Problem besteht seit der Veröffentlichung von OpenSSH 8.2 und kann möglicherweise ausgenutzt werden, wenn ein Angreifer Zugriff auf den SSH-Agent-Socket auf dem lokalen System hat. Was die Ausnutzung erschwert, ist, dass nur Root und der ursprüngliche Benutzer Zugriff auf den Socket haben. Das wahrscheinlichste Angriffsszenario besteht darin, dass der Agent zu einem Konto umgeleitet wird, das vom Angreifer kontrolliert wird, oder zu einem Host, auf dem der Angreifer Root-Zugriff hat.
    • sshd verfügt über einen zusätzlichen Schutz gegen die Übergabe sehr großer Parameter mit dem Benutzernamen an das PAM-Subsystem, wodurch Sie Schwachstellen in den PAM-Systemmodulen (Pluggable Authentication Module) blockieren können. Die Änderung verhindert beispielsweise, dass sshd als Vektor zum Ausnutzen einer kürzlich entdeckten Root-Schwachstelle in Solaris (CVE-2020-14871) verwendet wird.
  • Potenziell störende Kompatibilitätsänderungen:
    • В ssh и sshd переработан экспериментальный метод обмена ключами, стойкий к подбору на квантовом компьютере. Квантовые компьютеры кардинально быстрее решают задачу разложения натурального числа на простые множители, которая лежит в основе современных асимметричных алгоритмов шифрования и эффективно не решаема на классических процессорах. Используемый метод основан на алгоритме NTRU Prime, разработанном для постквантумных криптосистем, и методе обмена ключами на базе эллиптических кривых X25519. Вместо [E-Mail geschützt] метод теперь идентифицируется как [E-Mail geschützt] (Der Algorithmus sntrup4591761 wurde durch sntrup761 ersetzt).
    • In ssh und sshd wurde die Reihenfolge geändert, in der unterstützte digitale Signaturalgorithmen angekündigt werden. Statt ECDSA wird jetzt zuerst ED25519 angeboten.
    • In ssh und sshd erfolgt das Festlegen der TOS/DSCP-Dienstqualitätsparameter für interaktive Sitzungen jetzt vor dem Aufbau einer TCP-Verbindung.
    • Die Verschlüsselungsunterstützung in ssh und sshd wurde eingestellt [E-Mail geschützt] , das mit aes256-cbc identisch ist und vor der Genehmigung von RFC-4253 verwendet wurde.
    • Standardmäßig ist der CheckHostIP-Parameter deaktiviert. Der Vorteil ist vernachlässigbar, aber seine Verwendung erschwert die Schlüsselrotation für Hosts hinter Load Balancern erheblich.
  • PerSourceMaxStartups- und PerSourceNetBlockSize-Einstellungen wurden zu sshd hinzugefügt, um die Intensität des Starts von Handlern basierend auf der Client-Adresse zu begrenzen. Mit diesen Parametern können Sie das Limit für Prozessstarts im Vergleich zur allgemeinen MaxStartups-Einstellung genauer steuern.
  • Zu ssh und sshd wurde eine neue LogVerbose-Einstellung hinzugefügt, die es Ihnen ermöglicht, den Grad der im Protokoll ausgegebenen Debugging-Informationen zwangsweise zu erhöhen und nach Vorlagen, Funktionen und Dateien zu filtern.
  • Wenn Sie in ssh einen neuen Hostschlüssel akzeptieren, werden alle mit dem Schlüssel verknüpften Hostnamen und IP-Adressen angezeigt.
  • ssh ermöglicht die Option UserKnownHostsFile=none, um die Verwendung der Datei „known_hosts“ bei der Identifizierung von Hostschlüsseln zu deaktivieren.
  • Für ssh wurde ssh_config eine KnownHostsCommand-Einstellung hinzugefügt, die es Ihnen ermöglicht, Known_hosts-Daten aus der Ausgabe des angegebenen Befehls abzurufen.
  • Die Option „PermitRemoteOpen“ wurde zu ssh_config für ssh hinzugefügt, damit Sie das Ziel einschränken können, wenn Sie die Option „RemoteForward“ mit SOCKS verwenden.
  • In ssh für FIDO-Schlüssel wird eine wiederholte PIN-Anfrage bereitgestellt, falls ein Vorgang der digitalen Signatur aufgrund einer falschen PIN fehlschlägt und der Benutzer nicht zur Eingabe einer PIN aufgefordert wird (z. B. wenn die richtigen biometrischen Daten nicht abgerufen werden konnten und die (Gerät ist auf manuelle PIN-Eingabe zurückgefallen).
  • sshd fügt Unterstützung für zusätzliche Systemaufrufe zum seccomp-bpf-basierten Prozessisolationsmechanismus unter Linux hinzu.
  • Das Dienstprogramm contrib/ssh-copy-id wurde aktualisiert.

Source: opennet.ru

Kommentar hinzufügen