Релиз OpenSSH 9.9, который улучшает безопасность

Проект OpenSSH объявил о выпуске версии OpenSSH 9.9, которая теперь доступна для загрузки на официальных зеркалах.

В новой версии представлены значительные улучшения, включая поддержку гибридного постквантового обмена ключами с использованием официально проверенной реализации ML-KEM, улучшенные средства управления нежелательными соединениями, более быстрый код обмена ключами NTRUPrime и многое другое.

OpenSSH 9.9: новые возможности

Одним из наиболее заметных дополнений в OpenSSH 9.9 является поддержка нового гибридного постквантового метода обмена ключами.

Этот метод сочетает в себе FIPS 203 Module-Lattice Key Encapsulation Mechanism (ML-KEM) с X25519 Elliptic Curve Diffie-Hellman (ECDH), повышая безопасность против потенциальных угроз квантовых вычислений.

Алгоритм, получивший название mlkem768x25519-sha256, включен по умолчанию, что знаменует собой значительный шаг на пути к постквантовым криптографическим стандартам.

Кроме того, директива ssh_config Include теперь поддерживает расширение переменных окружения и тот же набор %-токенов, что и опция Match Exec, что позволяет создавать более гибкие и динамичные конфигурационные файлы.

В OpenSSH 9.9 также появилась новая опция RefuseConnection в sshd_config. Если она установлена, то прерывает соединения при первом же запросе аутентификации, предоставляя администраторам инструмент для быстрого прекращения нежелательных соединений.

В дополнение к этому новый класс штрафов refuseconnection в sshd_config PerSourcePenalties применяет штрафы при разрыве соединения с помощью ключевого слова RefuseConnection.

Кроме того, опции sshd_config Match теперь включают предикат Match invalid-user. Это свойство позволяет устанавливать соответствие, когда имя пользователя недействительно на сервере, что дает возможность более детально контролировать попытки аутентификации.

В выпуске также обновлен код Streamlined NTRUPrime, который стал значительно быстрее, что повысило общую производительность.

Исправления ошибок

В OpenSSH 9.9 также исправлено несколько ошибок:

  • Разбор имен типов ключей: Применяется более строгий разбор имен типов ключей, позволяющий использовать только короткие имена в коде пользовательского интерфейса и требующий полных имен протокола SSH в других местах.
  • Ослабленное требование абсолютного пути: Восстанавливает прежнее поведение, когда sshd не требовал абсолютного пути при запуске в режиме inetd.
  • Исправления в логах: Исправление проблемы, когда адреса источника и назначения менялись местами в некоторых сообщениях журнала sshd.
  • Обработка авторизованных ключей: Исправление проблемы, когда опции authorized_keys неправильно применялись при неудачной проверке подписи.
  • User@Host Parsing: OpenSSH 9.9 обеспечивает последовательный разбор, ища последний @ в строке, что позволяет использовать имена пользователей, содержащие символы @.

Уведомление об устаревании

Помните, что OpenSSH планирует убрать поддержку алгоритма подписи DSA в начале 2025 года. В релизе OpenSSH 9.9 DSA отключается по умолчанию во время компиляции. DSA, как указано в протоколе SSHv2, по своей сути слаб – будучи ограниченным 160-битным закрытым ключом и использованием дайджеста SHA1, он обеспечивает уровень безопасности, равный всего 80 битам симметричного эквивалента.

С 2015 года OpenSSH не рекомендует использовать DSA-ключи, сохраняя лишь опциональную поддержку во время выполнения. Причина в том, что с появлением более совершенных алгоритмов, широко поддерживаемых во всех активно поддерживаемых реализациях SSH, затраты на поддержку DSA больше не оправдываются.