Что изменилось: Новый разбор The New Stack посвящён ухудшению сжатия и запрету некоторых имён пользователей в OpenSSH 10.6. Прошлый пост

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

Разработчики отключили LZ77, часть алгоритма сжатия, которая заменяет повторяющиеся строки ссылками на данные в общем буфере. При включённом сжатии злоумышленник мог подбирать входные данные в одном потоке SSH-соединения и по длине зашифрованного трафика извлекать секреты из другого.

Разработчики рекомендуют сжимать данные на уровне приложения.

Запрет $ и \ снижает риск выполнения команд оболочки через имена пользователей из недоверенных источников. Имена, заданные параметром User в конфигурации, под запрет не попадают.

Проверка утверждений:

  • В OpenSSH 10.6 сжатие стало менее эффективным, а клиент перестал принимать имена пользователей с $ и обратной косой чертой из командной строки. (подтверждено самой публикацией: доказательство; «* ssh(1), sshd(8): compression will be less effective as a result of the change noted below in the “Security” section * ssh(1): destination usernames entered on the commandline are now more strictly checked and will refuse usernames that include backslash and dollar symbols. Usernames that are specified by the “User” directive in configuration files are not subject to these restrictions. The motivation for this change is mentioned below in the “Security” section.»)
  • Команда OpenSSH объявила о планах чаще выпускать исправления, о чём уже сообщалось в предыдущем посте. (подтверждено самой публикацией: доказательство; «** making more frequent releases to get bugfixes into users’ hands ** more quickly rather than batching them until the next planned ** release.»)
  • Разработчики отключили LZ77, который заменяет повторяющиеся строки ссылками на данные в общем буфере сжатия SSH-соединения. (подтверждено самой публикацией: доказательство; «* sshd(8), ssh(1): disable LZ77 dictionary coder to mitigate the side-channel leaks described in “Crossing the Streams: SSH Plaintext Recovery via a Common Compression Context in Multiplexed Channels” by Fabian Bäumer and Marcus Brinkmann, preprint https://arxiv.org/abs/2609.07709 (2026) A chosen-plaintext attack method exists which makes use of dictionary-based compression to recover secrets from one channel by interacting with the SSH session’s shared compression dictionary through another channel. Attacker-controlled input can recognizably reflect into the total length of transmitted ciphertexts by virtue of LZ77 replacing repeated strings with back-references into the SSH session’s encoder search buffer, which is shared across all channels.»)
  • При включённом сжатии злоумышленник мог подбирать входные данные в одном потоке SSH-соединения и по длине зашифрованного трафика извлекать секреты из другого. (подтверждено самой публикацией: доказательство; «A chosen-plaintext attack method exists which makes use of dictionary-based compression to recover secrets from one channel by interacting with the SSH session’s shared compression dictionary through another channel. Attacker-controlled input can recognizably reflect into the total length of transmitted ciphertexts by virtue of LZ77 replacing repeated strings with back-references into the SSH session’s encoder search buffer, which is shared across all channels.»)
  • Разработчики рекомендуют сжимать данные на уровне приложения. (подтверждено самой публикацией: доказательство; «Users are encouraged to use application-level compression over the SSH protocol where possible, as this will typically be more effective and will be completely immune to this type of attack.»)
  • Запрет $ и обратной косой черты снижает риск выполнения команд оболочки через имена пользователей из недоверенных источников. (подтверждено самой публикацией: доказательство; «* ssh(1): disallow ‘$’ and ‘' characters in usernames entered on the command-line to avoid usernames from untrusted sources yielding injection in shell context via ProxyCommand, Match exec, etc. Usernames specified via the configuration files are not subject this this control. Reported by SecBuddyF KeenLab Tencent (CodeBuddy Security)»)
  • Имена, заданные параметром User в конфигурации, под запрет не попадают. (подтверждено самой публикацией: доказательство; «Usernames that are specified by the “User” directive in configuration files are not subject to these restrictions.»)
  • Новый разбор The New Stack посвящён ухудшению сжатия и запрету некоторых имён пользователей в OpenSSH 10.6. (подтверждено самой публикацией: доказательство; «OpenSSH 10.6, released Tuesday, makes compression less effective and rejects some usernames that previously worked, and the maintainers knew both changes would break things when they shipped them.»)

Публикации:

Первоисточники:

оценка 73,2 из 100 · тип: релиз