Практический разбор · OpenSSH
DisableForwarding в OpenSSH не отключал X11 и agent forwarding
Проверьте OpenSSH sshd 7.4–9.9, если в sshd_config используется DisableForwarding yes: из-за ошибки настройка не отключала X11 forwarding и пересылку ssh-agent, хотя заявляла запрет всех forwarding-механизмов. Исправление включено в OpenSSH 10.0.
Кому нужно проверить
Администраторам sshd, которые ограничивают пересылку агента, X11, TCP, Unix-сокетов или туннелей директивой DisableForwarding. Важна не только марка продукта, но и конкретная версия, способ установки, операционная система и конфигурация.
В чём риск
Если администратор полагался на DisableForwarding для блокировки всех видов пересылки, X11 и agent forwarding могли оставаться разрешёнными. Это нарушает ожидаемую границу доступа; само наличие уязвимой версии не означает, что forwarding реально доступен: учитывайте остальные настройки и запросы клиента.
Затронутые версии
Официальный advisory OpenSSH указывает sshd версии 7.4–9.9 включительно. Ошибка затрагивала DisableForwarding: эта директива должна запрещать forwarding-механизмы, но до исправления не блокировала X11 и agent forwarding. X11 в sshd по умолчанию выключен, а клиент по умолчанию не запрашивает forwarding агента, поэтому риск зависит от конфигурации и запроса клиента.
Исправленные версии
Исправлено в upstream OpenSSH 10.0. Установите пакет с исправлением от поставщика ОС и проверьте backport. До обновления отключайте используемые механизмы отдельно через AllowAgentForwarding no и X11Forwarding no; не полагайтесь на DisableForwarding как единственный запрет в уязвимой версии.
Что сделать
- 1Проверьте версию sshd и фактическую конфигурацию, включая блоки Match. Найдите DisableForwarding, AllowAgentForwarding и X11Forwarding; также проверьте запросы forwarding со стороны клиентов.
- 2Обновите OpenSSH до 10.0 или пакета ОС с backport исправления. Сопоставьте статус с advisory именно вашей ОС: дистрибутивные номера и сроки исправления отличаются от upstream.
- 3До обновления, если forwarding не нужен, задайте AllowAgentForwarding no и X11Forwarding no явно; повторите эти ограничения в соответствующих блоках Match, если там есть переопределения.
- 4Выполните проверку конфигурации sshd и проверьте эффективные значения с учётом пользователя/адреса через поддерживаемые параметры -C и -T. Затем подтвердите, что текущие административные входы продолжают работать.
- 5После обновления протестируйте вход ограниченной учётной записью: убедитесь, что неразрешённые типы forwarding отклоняются, а необходимые сеансы и правила Match сохраняют ожидаемое поведение.
Проверка политики forwarding
Статичная схема принятия решения. Подписи и порядок полностью доступны как нумерованный список; анимация не нужна для понимания процедуры.
- 1Определите версию sshd и наличие DisableForwarding
- 2Проверьте AllowAgentForwarding и X11Forwarding, включая Match
- 3До исправления явно запретите forwarding, который не нужен
- 4Обновите пакет и проверьте эффективную конфигурацию
- 5Проверьте ограничения и штатный вход тестовой учётной записью
Примеры конфигурации и проверки
AllowAgentForwarding no
X11Forwarding noФрагмент sshd_config для сервера, на котором forwarding не требуется. Проверьте допустимость директив и их значений для вашей версии, блоки Match и политику доступа; сохраните резервную копию. Эти настройки не запрещают другие механизмы пересылки сами по себе.
sudo sshd -T -C user=example,host=server.example,addr=192.0.2.10 | grep -E '^(disableforwarding|allowagentforwarding|x11forwarding) 'Пример только для диагностики: замените значения контекста тестовыми данными вашей инфраструктуры. sshd -T -C вычисляет конфигурацию с учётом Match; команда ничего не меняет. Не публикуйте реальные адреса или учётные данные в отчётах.
Как не подпустить ботов к сайту
BotProtection принимает запросы перед вашим сайтом и фильтрует автоматизированные обращения. Поэтому ботам сложнее добраться до уязвимого компонента и начать его проверять или атаковать, а вероятность успешной автоматизированной атаки становится значительно ниже. Это дополнительный слой защиты: обновление уязвимых компонентов, проверка журналов и реагирование на инциденты остаются обязательными.
Первоисточники
Снизьте шанс атаки до того, как бот дойдёт до сайта
Подключите BotProtection как фильтр перед сайтом: подозрительные автоматизированные запросы отсекаются до обращения к вашему серверу. Это значительно снижает вероятность автоматизированной атаки, но не исправляет саму уязвимость, поэтому обновление и настройка компонентов остаются обязательными.