OpenSSH 10.5 и переносимая версия 10.5p1 вышли 11 августа 2026 года с тремя исправлениями безопасности, включая сбой в логике заблокированного ssh-agent, потенциальный use-after-free в клиенте и неполное действие restrict для туннелей. В официальных примечаниях к выпуску команда отдельно объяснила, что рост числа отчётов об уязвимостях, подготовленных с помощью ИИ, привёл к решению выпускать исправления чаще. Релиз добавляет диагностику порядка SSH-ключей через ssh -Z, меняет работу с FIDO-ключами и вводит новое требование к ECC для Portable OpenSSH.

Заблокированный ssh-agent мог считать удалённые операции локальными
Самая заметная security-проблема OpenSSH 10.5 связана с ssh-agent — процессом, который хранит загруженные приватные ключи и позволяет SSH-клиенту использовать их без повторного ввода парольной фразы при каждом подключении. При agent forwarding доступ к агенту можно передать через удалённый сервер, при этом сами приватные ключи остаются на локальной машине.
OpenSSH различает локальные и перенаправленные обращения к агенту через расширение session-bind@openssh.com. Оно привязывает запрос к конкретной SSH-сессии и тем самым помогает понять, откуда пришла операция.
В предыдущем поведении возникала неприятная комбинация: после блокировки ssh-agent запросы session-bind@openssh.com отклонялись. В результате часть операций, рассчитанных только на локальное использование, могла оказаться доступной через перенаправленный агент. В release notes разработчики приводят два конкретных сценария — добавление PKCS#11-токенов и использование ключей с ограничениями по назначению.
Противоречие в данном контексте становится очевидным: ограничение агента должно уменьшать доступ к ключам, однако неверная обработка session binding размывала грань между локальным и удаленным применением. В OpenSSH 10.5 эта проблема устранена.
Ещё два исправления затрагивают remote forwarding и authorized_keys
Второе security-исправление находится в клиенте ssh. Разработчики устранили потенциальный realloc use-after-free — ситуацию, при которой программа может обратиться к участку памяти после изменения или освобождения связанного с ним буфера.
Условие возникновения довольно специфично. Проблема могла проявиться, если новый remote forwarding добавлялся через локальный сокет мультиплексирования в момент, когда предыдущий запрос на открытие удалённого перенаправления ещё ожидал ответа сервера. Мультиплексирование позволяет нескольким SSH-сеансам использовать одно уже установленное соединение, поэтому исправление касается сложных сценариев с динамическим управлением forwarding.
Третья проблема относится к серверу sshd и ключевому слову restrict в authorized_keys. Этот параметр задаёт набор ограничений для конкретного открытого ключа. До OpenSSH 10.5 действие restrict некорректно распространялось на tunnel forwarding. Сам механизм туннелей административно отключён по умолчанию, поэтому проблема затрагивает конфигурации, где такой вид forwarding был явно разрешён.
В официальных release notes для этих трёх security-исправлений отдельные номера CVE не указаны.
Поток ИИ-отчётов меняет график релизов OpenSSH
OpenSSH 10.4 вышел 6 июля 2026 года, а версия 10.5 появилась 11 августа — через 36 дней. Команда прямо объяснила столь короткий интервал изменением характера security-отчётов.
Разработчики сообщают, что в последнее время получают много сообщений об ошибках безопасности, найденных ИИ-моделями или подготовленных с их помощью. Значительная часть таких сообщений после проверки реальной модели угроз не подтверждает серьёзного security-эффекта. При этом команда приветствует отчёты, когда автоматический поиск сопровождается человеческой проверкой, анализом, тестами и предлагаемыми исправлениями.
Ключевой аргумент разработчиков связан с повторным обнаружением. По их наблюдениям, несколько ошибок, сначала найденных ИИ-инструментами, позднее независимо обнаруживали другие исследователи. Из этого команда делает вывод, что аналогичные возможности доступны и тем, кто не сообщает найденные проблемы open source-проектам.
Поэтому OpenSSH временно переходит к более частому выпуску исправлений, чтобы security-изменения быстрее попадали в релизы. Для проекта с традиционно аккуратным циклом публикаций это заметное изменение процесса разработки.
Команда ssh -Z показывает порядок ключей до аутентификации
Среди новых функций OpenSSH 10.5 появилась опция ssh -Z user@host. Она выводит ключи, которые клиент собирается попробовать при аутентификации по открытому ключу, причём именно в том порядке, в котором они будут использоваться.
Такой режим помогает разобрать ситуации, когда у пользователя одновременно настроены несколько ключей, сертификаты, ключи из агента или аппаратные FIDO-аутентификаторы. Раньше фактическую последовательность часто приходилось выяснять по подробному debug-выводу. Теперь для этого есть отдельный режим.
Порядок FIDO-сертификатов тоже изменён. Клиент сначала предпочитает варианты, которые не требуют физического присутствия пользователя, а ключи с обязательной проверкой через PIN или биометрию перемещены ближе к концу очереди. Логика проста: сначала пробуются способы аутентификации с меньшим количеством действий со стороны пользователя.
ssh-keygen получил связанную возможность: при сбросе парольной фразы FIDO-приватного ключа можно устанавливать или снимать флаги touch-required и verify-required. Первый определяет необходимость физического подтверждения на устройстве, второй — проверки пользователя, например через PIN или биометрию.
Portable OpenSSH теперь требует ECC с поддержкой NIST P-521
Единственное изменение, которое разработчики вынесли в раздел потенциально несовместимых, касается Portable OpenSSH. Сборка с libcrypto теперь требует поддержку ECC — криптографии на эллиптических кривых — включая кривую NIST P-521.
Для стандартных конфигураций это ограничение почти незаметно. В release notes перечислены LibreSSL, OpenSSL, BoringSSL и AWS LC: поддерживаемые OpenSSH версии этих библиотек включают ECC в конфигурациях по умолчанию.
Изменение способно проявиться в нестандартных или урезанных сборках libcrypto, где ECC либо NIST P-521 отключены вручную. Конфигурация OpenSSH --without-openssl под новое требование не попадает.
В 10.5 исправлены регрессии конфигурации и уменьшена pre-auth поверхность
Несколько исправлений относятся к поведению, появившемуся после рефакторинга OpenSSH 10.4. В sshd восстановлены корректные имена параметров GSSAPI, а PAMServiceName снова разрешён внутри блока Match. Оба сбоя возникли при переработке конфигурационного кода предыдущей версии.
Отдельно исправлена обработка ChannelTimeout и RekeyLimit внутри Match в sshd_config: ранее эти параметры могли не применяться в условных блоках.
Ещё одно изменение затрагивает обработку открытых ключей до аутентификации. sshd теперь проверяет тип полученного ключа на соответствие разрешённым алгоритмам до полного разбора ключа. Это сокращает число путей обработки данных, доступных удалённой стороне до успешного входа.
У ssh-keyscan чтение баннера сервера переведено в неблокирующий режим. Один зависший сервер больше не должен останавливать сканирование большой группы хостов на этапе получения приветственного баннера.
OpenSSH переходит к более короткому циклу security-релизов
OpenSSH 10.5 фиксирует три проблемы безопасности, добавляет отдельную диагностику порядка ключей, дорабатывает FIDO-аутентификацию и устраняет несколько регрессий версии 10.4. Для Portable OpenSSH появляется новое обязательное условие сборки с libcrypto — ECC с NIST P-521.
В результате релиза изменился сам темп работы над проектом. Команда объясняет ускорение выпуска версий тем, что искусственный интеллект помогает быстрее находить потенциальные уязвимости, и некоторые из этих обнаружений затем подтверждаются другими специалистами независимо.
На данный момент разработчики рассматривают более частый цикл как временную меру и пока не установили фиксированное расписание. Пока неизвестно, станет ли этот темп постоянным, и будут ли для security-проблем, исправленных в версии 10.5, созданы отдельные CVE-идентификаторы.