04.12.2022

Релиз OpenSSH 9.1

После шести месяцев разработки опубликован релиз 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 реализовано расширение «users-groups-by-id@openssh.com», дающее клиенту возможность запросить имена пользователей и групп, соответствующих указанному набору цифровых идентификаторов (uid и gid). В sftp данное расширение использовано для отображения имён при выводе содержимого каталога.
  • В sftp-server реализовано расширение «home-directory» для раскрытия путей ~/ и ~user/, альтернативное ранее предлагавшемуся для тех же целей расширению «expand-path@openssh.com» (расширение «home-directory» предложено для стандартизации и уже поддерживается некоторыми клиентами).
  • В ssh-keygen и sshd добавлена возможность указания времени в часовом поясе UTC при определении интервалов действия сертификатов и ключей, в дополнение к системному времени.
  • В sftp разрешено указание дополнительных аргументов в опции «-D» (например, «/usr/libexec/sftp-server -el debug3»).
  • В ssh-keygen разрешено использование флага «-U» (использование ssh-agent) вместе с операциями «-Y sign» для определения, что закрытые ключи размещены в ssh-agent.

Источник.