После шести месяцев разработки опубликован релиз OpenSSH 9.1, открытой реализации клиента и сервера для работы по протоколам SSH 2.0 и SFTP. Выпуск характеризуется как в основном содержащий исправление ошибок, в том числе устранено нескольких потенциальных уязвимостей, вызванных проблемами при работе с памятью:
- Однобайтовое переполнение в коде обработки SSH-баннера в утилите ssh-keyscan.
- Двойной вызов функции free() в случае ошибки при вычислении хэшей для файлов в коде создания и проверки цифровых подписей в утилите ssh-keygen.
- Двойной вызов функции free() при обработке ошибок в утилите ssh-keysign.
Основные изменения:
- В ssh и sshd добавлена директива RequiredRSASize, позволяющая определить минимально допустимый размер RSA-ключей. В sshd ключи меньшего размера будут игнорироваться, а в ssh приводить к завершению соединения.
- Переносимая редакция OpenSSH переведена на использование SSH-ключей для заверения цифровой подписью коммитов и тегов в Git.
- Директивы SetEnv в файлах конфигурации ssh_config и sshd_config теперь применяют значение из первого упоминания переменной окружения, если она определена в конфигурации несколько раз (до этого применялось последнее упоминание).
- При вызове утилиты ssh-keygen с флагом “-A” (генерация всех поддерживаемых по умолчанию типов хостовых ключей) отключена генерация ключей DSA, которые уже несколько лет не используются по умолчанию.
- В sftp-server и sftp реализовано расширение “[email protected]”, дающее клиенту возможность запросить имена пользователей и групп, соответствующих указанному набору цифровых идентификаторов (uid и gid). В sftp данное расширение использовано для отображения имён при выводе содержимого каталога.
- В sftp-server реализовано расширение “home-directory” для раскрытия путей ~/ и ~user/, альтернативное ранее предлагавшемуся для тех же целей расширению “[email protected]” (расширение “home-directory” предложено для стандартизации и уже поддерживается некоторыми клиентами).
- В ssh-keygen и sshd добавлена возможность указания времени в часовом поясе UTC при определении интервалов действия сертификатов и ключей, в дополнение к системному времени.
- В sftp разрешено указание дополнительных аргументов в опции “-D” (например, “/usr/libexec/sftp-server -el debug3”).
- В ssh-keygen разрешено использование флага “-U” (использование ssh-agent) вместе с операциями “-Y sign” для определения, что закрытые ключи размещены в ssh-agent.
Release.
Ссылка here.