Проект OpenSSH, являющийся эталонной реализацией протокола SSH 2.0 для обеспечения зашифрованных коммуникаций, выпустил крупное обновление. Версии 10.3 и её портативный вариант 10.3p1, опубликованные 2 апреля 2026 года, содержат ряд важных исправлений безопасности, самое серьёзное из которых устраняет критические риски для серверов и клиентов по всему миру. Для системных администраторов и специалистов по информационной безопасности это обновление должно стать первоочередной задачей, учитывая повсеместное использование OpenSSH в критической инфраструктуре, от облачных платформ до промышленных систем управления.
Основные функции и улучшения
Центральным элементом данного выпуска стала ликвидация уязвимости, связанной с внедрением команд оболочки (shell injection) в клиенте SSH. Проблема возникала в специфическом, но потенциально опасном сценарии. Если имя пользователя, контролируемое злоумышленником, передавалось через командную строку, а в конфигурационных файлах использовались специальные токены вроде "%u", это могло привести к выполнению произвольных команд на атакуемой системе. По сути, недостаточная проверка входных данных создавала брешь, через которую можно было выйти за рамки предполагаемой функциональности. Разработчики OpenSSH устранили эту уязвимость, внедрив более строгие правила валидации для символов оболочки. Однако они подчеркивают, что данная мера является дополнительной защитой, и по-прежнему настоятельно не рекомендуют напрямую экспонировать командные строки SSH недоверенному вводу, что изначально считается плохой практикой.
Помимо этого, обновление включает несколько других существенных исправлений в области безопасности. Во-первых, устранена ошибка в серверной части "sshd", связанная с аутентификацией по сертификатам. Ранее сертификаты, содержащие имена, разделённые запятыми, могли обходить определённые ограничения, заданные в файле "authorized_keys". Во-вторых, исправлен давний недостаток в устаревшей реализации протокола SCP (Secure Copy Protocol). При загрузке файлов с правами пользователя root программа не очищала опасные биты прав "setuid" и "setgid", что могло привести к повышению привилегий на локальной системе. В-третьих, решена проблема с принудительным применением алгоритмов для ключей ECDSA (Elliptic Curve Digital Signature Algorithm). Ошибка в логике проверки приводила к тому, что ограничение ключа на использование конкретного алгоритма ECDSA могло быть проигнорировано, и вместо этого принимался любой другой алгоритм ECDSA.
Однако новый релиз - это не только заплатки. OpenSSH 10.3 предлагает администраторам набор новых функций для более эффективного управления подключениями и противодействия злоупотреблениям. Например, появились команды "~I" и "ssh -Oconninfo", которые позволяют быстро получить детальную информацию об активных SSH-сессиях и открытых каналах, что упрощает диагностику и мониторинг. Для борьбы с автоматическими атаками методом перебора (brute-force) сервер теперь применяет дополнительную штрафную задержку "invaliduser" при попытках входа с несуществующими именами пользователей, что замедляет работу ботов. Расширены возможности управления скомпрометированными ключами: в конфигурациях "RevokedHostKeys" и "RevokedKeys" теперь можно указывать несколько файлов одновременно. Также добавлена поддержка официальных имён, назначенных IANA (Internet Assigned Numbers Authority), для перенаправления SSH-агента, что улучшает совместимость между разными реализациями. Интересной новинкой стала поддержка дробных значений в функции "PerSourcePenalties", позволяющая устанавливать защитные блокировки длительностью менее одной секунды, что может быть эффективно против высокоскоростных атак.
При обновлении следует учитывать несколько изменений, которые могут нарушить работу в устаревших сетевых окружениях. OpenSSH 10.3 официально прекращает поддержку совместимости с теми реализациями протокола, которые не поддерживают криптографическую процедуру повторного согласования ключей (rekeying). При взаимодействии с таким программным обеспечением сессия будет прервана в момент необходимости обновления ключей. Кроме того, опция командной строки "ProxyJump" (и её эквивалент "-J") теперь выполняет строгую проверку имён пользователей и хостов для параметров, переданных через командную строку. Это изменение, направленное на блокировку потенциальных векторов атаки, подобных упомянутой уязвимости внедрения команд, не затрагивает настройки, указанные в конфигурационных файлах. Наконец, скорректирована логика работы с сертификатами. Если в сертификате отсутствует раздел "principals" (то есть он пуст), он больше не будет считаться универсальным шаблоном, соответствующим любому имени. Теперь такой сертификат не будет соответствовать ни одному имени, что исключает риск случайной выдачи чрезмерных привилегий из-за ошибки центра сертификации.
Таким образом, выпуск OpenSSH 10.3 является знаковым событием, сочетающим в себе закрытие опасных уязвимостей, способных привести к удалённому выполнению кода или обходу механизмов аутентификации, и внедрение инструментов для усиления защищённости инфраструктуры. Организациям всех уровней настоятельно рекомендуется как можно скорее провести плановое обновление как серверных, так и клиентских компонентов OpenSSH до версии 10.3. Это необходимо для минимизации рисков, связанных с раскрытыми проблемами безопасности, и для использования новых возможностей по контролю и защите SSH-трафика, который зачастую представляет собой критически важный канал управления системами.