Veröffentlichung von OpenSSH 9.6 mit Beseitigung von Schwachstellen

Die Veröffentlichung von OpenSSH 9.6 wurde veröffentlicht, einer offenen Implementierung eines Clients und Servers für die Arbeit mit den Protokollen SSH 2.0 und SFTP. Die neue Version behebt drei Sicherheitsprobleme:

  • Eine Schwachstelle im SSH-Protokoll (CVE-2023-48795, „Terrapin“-Angriff), die es einem MITM-Angriff ermöglicht, die Verbindung zurückzusetzen, um weniger sichere Authentifizierungsalgorithmen zu verwenden und den Schutz vor Seitenkanalangriffen zu deaktivieren, die Eingaben durch Analyse der Verzögerungen wiederherstellen zwischen Tastenanschlägen auf der Tastatur. Die Angriffsmethode wird in einem separaten Newsartikel beschrieben.
  • Eine Sicherheitslücke im SSH-Dienstprogramm, die die Ersetzung beliebiger Shell-Befehle durch Manipulation von Anmelde- und Hostwerten mit Sonderzeichen ermöglicht. Die Sicherheitslücke kann ausgenutzt werden, wenn ein Angreifer die an ssh, ProxyCommand und LocalCommand-Anweisungen übergebenen Anmelde- und Hostnamenwerte oder „match exec“-Blöcke kontrolliert, die Platzhalterzeichen wie %u und %h enthalten. Beispielsweise kann in Systemen, die Submodule in Git verwenden, ein falscher Login und Host ersetzt werden, da Git die Angabe von Sonderzeichen in den Host- und Benutzernamen nicht verbietet. Eine ähnliche Sicherheitslücke tritt auch in libssh auf.
  • Es gab einen Fehler im SSH-Agent, bei dem beim Hinzufügen privater PKCS#11-Schlüssel Einschränkungen nur auf den ersten vom PKCS#11-Token zurückgegebenen Schlüssel angewendet wurden. Das Problem betrifft keine regulären privaten Schlüssel, FIDO-Tokens oder uneingeschränkte Schlüssel.

Weitere Änderungen:

  • „%j“-Ersetzung zu ssh hinzugefügt, die in den über die ProxyJump-Direktive angegebenen Hostnamen erweitert wird.
  • ssh hat Unterstützung für das Festlegen von ChannelTimeout auf der Clientseite hinzugefügt, das zum Beenden inaktiver Kanäle verwendet werden kann.
  • Unterstützung für das Lesen privater ED25519-Schlüssel im PEM PKCS8-Format für ssh, sshd, ssh-add und ssh-keygen hinzugefügt (zuvor wurde nur das OpenSSH-Format unterstützt).
  • Zu ssh und sshd wurde eine Protokollerweiterung hinzugefügt, um digitale Signaturalgorithmen für die Authentifizierung mit öffentlichem Schlüssel neu auszuhandeln, nachdem der Benutzername empfangen wurde. Mit der Erweiterung können Sie beispielsweise selektiv andere Algorithmen in Bezug auf Benutzer verwenden, indem Sie PubkeyAcceptedAlgorithms im Block „Match user“ angeben.
  • Es wurde eine Protokollerweiterung zu ssh-add und ssh-agent hinzugefügt, um Zertifikate beim Laden von PKCS#11-Schlüsseln festzulegen. Dadurch können Zertifikate, die mit privaten PKCS#11-Schlüsseln verknüpft sind, in allen OpenSSH-Dienstprogrammen verwendet werden, die ssh-agent unterstützen, nicht nur ssh.
  • Verbesserte Erkennung nicht unterstützter oder instabiler Compiler-Flags wie „-fzero-call-used-regs“ im Clang.
  • Um die Berechtigungen des sshd-Prozesses einzuschränken, verwenden Versionen von OpenSolaris, die die getpflags()-Schnittstelle unterstützen, den PRIV_XPOLICY-Modus anstelle von PRIV_LIMIT.

Source: opennet.ru

Kommentar hinzufügen