Релиз OpenSSH 8.1

После шести месяцев разработки представлен релиз OpenSSH 8.1, открытой реализации клиента и сервера для работы по протоколам SSH 2.0 и SFTP.

Отдельного внимания в новом выпуске заслуживает устранение уязвимости, затрагивающей ssh, sshd, ssh-add и ssh-keygen. Проблема присутствует в коде парсинга закрытых ключей с типом XMSS и позволяет атакующему инициировать целочисленное переполнение. Уязвимость отмечена как эксплуатируемая, но малоприменимая, так как поддержка ключей XMSS относится к экспериментальным возможностям, отключённым по умолчанию (в переносимой версии в autoconf даже не предусмотрено сборочной опции для включения XMSS).

Основные изменения:

  • В ssh, sshd и ssh-agent добавлен код, препятствующий восстановлению приватного ключа, находящегося в оперативной памяти, в результате проведения атак по сторонним каналам, таким как Spectre, Meltdown, RowHammer и RAMBleed. Приватные ключи теперь зашифровываются при загрузке в память и расшифровываются только в моменты использования, в остальное время оставаясь зашифрованными. При подобном подходе для успешного восстановления закрытого ключа атакующему требуется предварительно восстановить случайно сгенерированный промежуточный ключ размером 16 Кб, используемый для шифрования основного ключа, что маловероятно при свойственной современным атакам частоте ошибок восстановления;
  • Ssh-keygen переведён по умолчанию на использование алгоритма rsa-sha2-512 при создании цифровых подписей сертификатов RSA-ключём. Подобные сертификаты несовместимы с выпусками до OpenSSH 7.2 (для обеспечения совместимости следует переопределить тип алгоритма, например через вызов «ssh-keygen -t ssh-rsa -s …»);
  • В ssh в выражении ProxyCommand реализована поддержка раскрытия подстановки «%n»;
  • В списках алгоритмов шифрования для ssh и sshd для вставки предлагаемых по умолчанию алгоритмов можно использовать символ «^». Например, для добавления ssh-ed25519 к списку по умолчанию можно указать «HostKeyAlgorithms ^ssh-ed25519»;
  • В ssh-keygen добавлена экспериментальная поддержка упрощённой схемы создания и верификации цифровых подписей. Цифровые подписи могут создаваться при помощи обычных SSH-ключей, хранимых на диске или в ssh-agent, и верифицироваться с использования похожего на authorized_keys списка допустимых ключей. В цифровую подпись встраивается информация о пространстве имён для исключения путаницы при применении в различных областях (например, для email и файлов);
  • В ssh-keygen обеспечен вывод прикреплённого к ключу комментария при извлечении открытого ключа из закрытого;
  • В ssh-keygen добавлен возможность использования флага «-v» при выполнении операций поиска ключей (например, «ssh-keygen -vF host»), указание которого приводит к выводу наглядной сигнатуры хоста;
  • Добавлена возможность использования PKCS8 в качестве альтернативного формата для хранения закрытых ключей на диске. По умолчанию продолжает использоваться формат PEM, а PKCS8 может оказаться полезным для достижения совместимости со сторонними приложениями.

Источник: http://www.opennet.ru/opennews/art.shtml?num=51640