Nach drei Monaten Entwicklung Release , einer offenen Implementierung von Client und Server fĂŒr die Protokolle SSH 2.0 und SFTP.
In der neuen Version wurde ein Schutz gegen SCP-Angriffe hinzugefĂŒgt, der es dem Server ermöglicht, andere Dateinamen zu ĂŒbermitteln, die von den angeforderten abweichen (im Gegensatz zu ). Der Angriff ermöglicht es nicht, das vom Benutzer gewĂ€hlte Verzeichnis oder die Glob-Maske zu Ă€ndern. Wir erinnern uns daran, dass der SCP-Server entscheidet, welche Dateien und Verzeichnisse an den Client gesendet werden, wĂ€hrend der Client lediglich die Richtigkeit der zurĂŒckgegebenen Objektanzeigen ĂŒberprĂŒft. Das Wesen des entdeckten Problems besteht darin, dass, wenn der Systemaufruf utimes fehlschlĂ€gt, der Inhalt der Datei als Metadaten der Datei interpretiert wird.
Diese Eigenschaft kann beim Herstellen einer Verbindung zu einem Server, der von einem Angreifer kontrolliert wird, verwendet werden, um im Dateisystem des Benutzers andere Dateinamen und Inhalte beim Kopieren ĂŒber SCP in Konfigurationen zu speichern, die zu einem Fehler bei der AusfĂŒhrung von utimes fĂŒhren (zum Beispiel bei der Verweigerung von utimes durch SELinux-Richtlinien oder durch einen systematischen Aufruf-Filter). Die Wahrscheinlichkeit, dass echte Angriffe stattfinden, wird als gering eingeschĂ€tzt, da in typischen Konfigurationen der Aufruf von utimes nicht fehlschlĂ€gt. DarĂŒber hinaus bleibt der Angriff nicht unbemerkt â beim Aufruf von SCP wird ein DatenĂŒbertragungsfehler angezeigt.
Allgemeine Ănderungen:
- In SFTP wurde die Verarbeitung des Arguments â-1â eingestellt, Ă€hnlich wie bei SSH und SCP, das zuvor akzeptiert, aber ignoriert wurde;
- In SSHD steht bei der Verwendung von IgnoreRhosts nun drei Auswahlmöglichkeiten zur VerfĂŒgung: âyesâ â Rhosts/Shosts ignorieren, ânoâ â Rhosts/Shosts berĂŒcksichtigen, und âshosts-onlyâ â â.shostsâ erlauben, aber â.rhostsâ verbieten;
- In SSH wird die Verarbeitung der Substitution %TOKEN in den Einstellungen LocalForward und RemoteForward sichergestellt, die fĂŒr die Umleitung von Unix-Sockets verwendet werden;
- Das Laden von öffentlichen SchlĂŒsseln aus einer unverschlĂŒsselten Datei mit dem privaten SchlĂŒssel ist erlaubt, wenn keine separate Datei mit dem öffentlichen SchlĂŒssel vorhanden ist;
- Wenn libcrypto im System vorhanden ist, verwendet SSH und SSHD nun die Implementierung des Chacha20-Algorithmus aus dieser Bibliothek, anstelle der integrierten portablen Implementierung, die in der Leistung zurĂŒckbleibt;
- Die Möglichkeit, den Inhalt der binĂ€ren Liste der widerrufenen Zertifikate bei der AusfĂŒhrung des Befehls âssh-keygen -lQf /pathâ zu dumpen, wurde implementiert;
- In der portablen Version wurde die Identifizierung von Systemen implementiert, in denen Signale mit der Option SA_RESTART die AusfĂŒhrung von select unterbrechen;
- Die Probleme beim Kompilieren auf HP/UX- und AIX-Systemen wurden gelöst.
- Probleme mit dem Bauen von seccomp-Sandbox in einigen Linux-Konfigurationen wurden behoben;
- Die Erkennung der libfido2-Bibliothek wurde verbessert und Probleme beim Bauen mit der Option ââwith-security-key-builtinâ wurden gelöst.
Die Entwickler von OpenSSH haben erneut auf die bevorstehende Einstufung von Algorithmen, die SHA-1-Hashes verwenden, als veraltet hingewiesen. Die EffektivitĂ€t von Kollisionangriffen mit einem bestimmten PrĂ€fix (die Kosten zur Auffindung einer Kollision werden auf etwa 45.000 Dollar geschĂ€tzt). In einer der nĂ€chsten Ausgaben ist geplant, die Verwendung des digitalen Signaturalgorithms mit öffentlichem SchlĂŒssel âssh-rsaâ standardmĂ€Ăig zu deaktivieren, der im ursprĂŒnglichen RFC fĂŒr das SSH-Protokoll erwĂ€hnt wird und in der Praxis nach wie vor weit verbreitet ist (um zu ĂŒberprĂŒfen, ob ssh-rsa in Ihren Systemen verwendet wird, können Sie versuchen, sich per SSH mit der Option â-oHostKeyAlgorithms=-ssh-rsaâ zu verbinden).
Um den Ăbergang zu neuen Algorithmen in OpenSSH zu erleichtern, wird in einer der nĂ€chsten Versionen standardmĂ€Ăig die Einstellung UpdateHostKeys aktiviert, die es ermöglicht, Clients automatisch auf sicherere Algorithmen umzustellen. Zu den empfohlenen Algorithmen fĂŒr die Migration zĂ€hlen 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).
Mit der letzten Veröffentlichung wurden âssh-rsaâ und âdiffie-hellman-group14-sha1â aus der Liste CASignatureAlgorithms entfernt, die die fĂŒr digitale Unterschriften neuer Zertifikate zulĂ€ssigen Algorithmen definiert. Die Verwendung von SHA-1 in Zertifikaten birgt zusĂ€tzliche Risiken, da Angreifer unbegrenzte Zeit fĂŒr die Suche nach Kollisionen eines bestehenden Zertifikats haben, wĂ€hrend die Angriffszeit auf Host-SchlĂŒssel durch das Verbindungs-Timeout (LoginGraceTime) begrenzt ist.
Quelle: opennet.ru
