Представлен OpenSSH 8.5

OpenSSHСостоялся релиз OpenSSH 8.5 — открытой реализации клиента и сервера для работы через протоколы SSH 2.0 и SFTP. В новой версии появились нововведения, связанные с безопасность, а также внесены изменения, потенциально нарушающие совместимость.

Разработчики OpenSSH предупредили о грядущем переводе в разряд устаревших алгоритмов, использующих хеши SHA-1, по причине повышения эффективности коллизионных атак с заданным префиксом. В одном из ближайших выпусков планируется отключение возможности использовать по умолчанию алгоритм цифровой подписи по открытому ключу ssh-rsa, который упоминается в оригинальном RFC для протокола SSH и остаётся широко распространённым на практике.

Для проверки использования ssh-rsa в своих системах можно попробовать подключиться по SSH с ключом -oHostKeyAlgorithms=-ssh-rsa.

Надо заметить, что отключение по умолчанию цифровых подписей ssh-rsa не означает полного отказа от использования RSA-ключей. Помимо SHA-1 протокол SSH допускает применение других алгоритмов вычисления хешей: rsa-sha2-256 и rsa-sha2-512.

Чтобы переход на новые алгоритмы прошёл проще, в OpenSSH 8.5 по умолчанию включена настройка «UpdateHostKeys», которая позволяет автоматически перевести клиентов на более надёжные алгоритмы. Указанная настройка включает специальное расширение протокола «hostkeys@openssh.com», позволяющее серверу после прохождения аутентификации информировать клиента о всех доступных ключах хоста. Клиент может отразить эти ключи в файле ~/.ssh/known_hosts, что позволяет организовать обновление ключей хоста и упрощает смену ключей на сервере.

Использование настройки «UpdateHostKeys» на текущий момент ограничено следующими условиями:

  1. Ключ должен упоминаться в UserKnownHostsFile и не использоваться в GlobalKnownHostsFile;
  2. Ключ должен присутствовать только под одним именем;
  3. Не должен применяться сертификат хостового ключа;
  4. В known_hosts не должно применяться масок по имени хоста;
  5. Должна быть отключена настройка VerifyHostKeyDNS;
  6. Должен быть активен параметр UserKnownHostsFile.

В будущем данные ограничения могут быть отменены. Среди рекомендуемых для миграции алгоритмов упомянуты rsa-sha2-256/512 на базе RFC8332 RSA SHA-2 (поддерживается с OpenSSH 7.2 и используется по умолчанию), ssh-ed25519 (поддерживается с OpenSSH 6.5) и ecdsa-sha2-nistp256/384/521 на базе RFC5656 ECDSA (поддерживается с OpenSSH 5.7).

Прочие нововведения в OpenSSH 8.5:

  • В ssh-agent устранена уязвимость, вызванная повторным освобождением уже освобождённой области памяти. Проблема проявляется с OpenSSH 8.2. Данный баг потенциально может быть использован при наличии у атакующего доступа к сокету ssh-agent на локальной системе. Эксплуатация бага осложнена тем, что доступ к сокету имеют только пользователь root и исходный пользователь. Но, если у злоумышленника имеется возможность перенаправить ssh-agent на подконтрольную ему учётную запись или на хост, где у него есть доступ к root, атака может быть осуществлена;
  • В sshd добавлена защита от передачи очень больших параметров с именем пользователя в подсистему PAM (Pluggable Authentication Module), что позволяет блокировать уязвимости в модулях PAM. В частности, внесённые изменения позволят предотвратить использование sshd для при эксплуатации недавно выявленной уязвимости в Solaris (CVE-2020-14871);
  • В ssh и sshd переработан экспериментальный метод обмена ключами, стойкий к подбору на квантовом компьютере. Квантовые компьютеры кардинально быстрее решают задачу разложения натурального числа на простые множители, которая лежит в основе современных асимметричных алгоритмов шифрования и не решается с достаточной эффективностью на классических процессорах. Используемый метод основан на алгоритме NTRU Prime, разработанном для постквантовых криптосистем, и методе обмена ключами на базе эллиптических кривых X25519. Вместо sntrup4591761x25519-sha512@tinyssh.org метод теперь идентифицируется как sntrup761x25519-sha512@openssh.com (алгоритм sntrup4591761 заменён на sntrup761);
  • В ssh и sshd изменён порядок анонсирования поддерживаемых алгоритмов цифровых подписей. Теперь первым предлагается ED25519 вместо ECDSA;
  • В ssh и sshd установка параметров качества обслуживания TOS/DSCP для интерактивных сеансов теперь будет производиться до установки TCP-соединения;
  • В ssh и sshd прекращена поддержка шифра rijndael-cbc@lysator.liu.se, который идентичен aes256-cbc и использовался до утверждения RFC-4253;
  • По умолчанию отключен параметр CheckHostIP. Было решено, что польза от него не является значительной, а его использование существенно усложняет ротацию ключей для хостов за балансировщиками нагрузки;
  • В sshd появились настройки PerSourceMaxStartups и PerSourceNetBlockSize для ограничения интенсивности запуска обработчиков в привязке к адресу клиента. Указанные параметры позволяют более тонко управлять ограничением на запуск процессов, нежели это делает общая настройка MaxStartups;
  • В ssh и sshd добавлена новая настройка LogVerbose, которая позволит принудительно поднимать уровень сбрасываемой в лог отладочной информации и предоставляет возможность фильтрации по шаблонам, функциям и файлам;
  • В ssh при принятии нового хостового ключа обеспечен показ всех имён хостов и IP-адресов, ассоциированных с ключом;
  • В ssh разрешено указание опции UserKnownHostsFile=none для отключения использования файла known_hosts при идентификации хостовых ключей;
  • В ssh_config для ssh добавлена настройка KnownHostsCommand, позволяющая получить данные known_hosts из вывода указанной команды;
  • В ssh_config для ssh добавлена опция PermitRemoteOpen, позволяющая ограничить точку назначения при использовании опции RemoteForward с SOCKS;
  • В ssh для ключей FIDO обеспечен повторный запрос PIN в случае сбоя операции с цифровой подписью из-за некорректного PIN и отсутствия запроса PIN у пользователя (например, когда не удалось получить корректные биометрические данные и устройство откатилось на ручной ввод PIN-а);
  • В sshd в основанный на seccomp-bpf механизм изоляции процесса на платформе Linux добавлена поддержка дополнительных системных вызовов;
  • Обновлена утилита contrib/ssh-copy-id.

Ссылка на страницу анонса. О том, как установить и настроить OpenSSH в Ubuntu, можно прочитать здесь (не во всех репозиториях находятся самые свежие пакеты).

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *