Кибербезопасность

OpenSSH 10.6 отключает часть сжатия и отклоняет некоторые имена пользователей по соображениям безопасности

OpenSSH 10.6 отключает компонент LZ77 общего сжатия между каналами SSH-сеанса после того, как была доказана возможность использовать его для восстановления секретных данных, а также отклоняет символы $ и \ в именах пользователей, передаваемых через командную строку, чтобы снизить риски внедрения команд оболочки. Это может затронуть некоторые задачи автоматизации, наряду с другими изменениями, касающимися постквантовых ключей и инструмента scp.

2026-10-07
4 мин. чтения
0 просмотров
certi.news Editorial Team
OpenSSH 10.6 отключает часть сжатия и отклоняет некоторые имена пользователей по соображениям безопасности

В выпуске OpenSSH 10.6 представлены два изменения безопасности, которые могут нарушить некоторые прежние сценарии использования: отключение компонента LZ77, отвечающего за построение словаря повторяющихся последовательностей при сжатии SSH, и отклонение имён пользователей, содержащих символы $ и \, при их передаче через командную строку. Разработчики проекта приняли это решение, понимая, что некоторые среды и инструменты потребуют изменений.

Почему сжатие SSH было ослаблено?

Один сеанс SSH может содержать интерактивный терминальный канал, перенаправление портов или динамический SOCKS-прокси. При включённом сжатии каналы использовали общее состояние сжатия. Исследователи Fabian Bäumer и Marcus Brinkmann из Ruhr University Bochum показали, что злоумышленник может вводить выбранный им текст в один канал и наблюдать за зашифрованным трафиком, чтобы извлекать секретные данные, передаваемые по другому каналу того же сеанса.

Атака использует память LZ77: ранее появившиеся последовательности используются повторно вместо их полной кодировки. Когда предположение злоумышленника совпадает с частью секрета, сжатый результат может стать немного короче, создавая сигнал, который помогает восстановить данные. Этот метод относится к семейству атак CRIME и BREACH, но требует определённой конфигурации: включённого сжатия SSH, возможности контролировать часть трафика и присутствия секрета и канала, контролируемого злоумышленником, в одном многоканальном сеансе SSH.

В менее зашумленных испытаниях исследователи восстановили секрет из восьми символов алфавита, состоящего из 26 букв, в среднем за 276 догадок в ходе 100 экспериментов. В более зашумленном сценарии на основе браузера это число выросло примерно до 27 600 догадок. Согласно исходному материалу, модели для проверки концепции были созданы с использованием Claude Code.

Что практически изменится в сжатии?

OpenSSH сохранил кодирование Хаффмана, но отключил компонент LZ77 как в ssh, так и в sshd. Поэтому сжатие не исчезает полностью, но становится менее эффективным. Проект сообщает, что обычные интерактивные сеансы, как правило, не заметят существенной разницы, тогда как автоматизированные задачи, передающие большие объёмы сжимаемых данных через соединения с ограниченной пропускной способностью, могут пострадать.

OpenSSH рекомендует перенести сжатие на уровень приложения, где оно обычно эффективнее и не подвергается такому типу атаки. На практике владельцам систем автоматизации, использующих сжатие SSH, следует после обновления измерить объём передаваемых данных и время выполнения, а затем определить, будет ли предварительное сжатие данных перед отправкой более подходящим, чем использование сжатия SSH.

Имена пользователей и путь автоматизации

Версия 10.6 отклоняет символы $ и \ в именах пользователей, передаваемых через командную строку. Это направлено против внутренних инструментов, задач CI и агентов, которые формируют команду вроде ssh "$INPUT_USER@host", после чего имя пользователя может попасть в такие директивы, как ProxyCommand или Match exec, где эти символы могут интерпретироваться как часть конструкции shell, а не как обычные данные.

Это ограничение не применяется, когда имя пользователя задаётся с помощью директивы User в файле конфигурации SSH. Поэтому легитимные учётные записи, содержащие эти символы, могут оставаться доступными таким способом, однако скрипты и инструменты, передающие их непосредственно через командную строку, могут потребовать изменений. Это следует за связанным исправлением в OpenSSH 10.3: проверка символов shell выполнялась слишком поздно, позволяя им попасть в путь расширения в ssh_config.

Дополнительные изменения, которые могут повлиять на рабочие процессы

  • Постквантовый гибридный алгоритм подписи ssh-mldsa44-ed25519 лишился экспериментального суффикса @openssh.com, что означает необходимость заново создать или удалить ключи, созданные предыдущей реализацией.
  • Проект начал подготовку к прекращению поддержки scp -R для копирования с удалённого хоста на удалённый хост. Опция по-прежнему работает в версии 10.6, но выдаёт предупреждение, а в будущем её планируется игнорировать.

Эти изменения показывают, что совместимость с прежним поведением больше не является абсолютным приоритетом, когда автоматизированное использование выявляет путь к утечке данных или внедрению команд. Однако практические ограничения неодинаковы: риск утечки через сжатие требует определённого сеанса и конкретных условий, тогда как отклонение имён пользователей может сразу проявиться в скриптах, зависящих от внешних входных данных. Поэтому эксплуатационным командам необходимо протестировать обновление, проверить формирование команд SSH, а также убедиться в корректности ключей и параметров копирования перед широким внедрением версии.

Источник новости
The New Stack - Software Development
Открыть первоисточник ↗
c
Автор

certi.news Editorial Team

Изучить сюжет

Связанные темы и сущности

В той же категории

Вам также может понравиться

Все новости