Двойное освобождение памяти в пяти продуктах Fortinet останавливает службу командной строки

Fortinet

Пять продуктов Fortinet содержат уязвимость двойного освобождения памяти. Это ошибка в работе с памятью: программа дважды освобождает один и тот же участок, и служба аварийно завершается. Пользователь с локальным доступом и действующей учётной записью отправляет специально составленные команды в интерфейс командной строки и останавливает службу newcli, которая обрабатывает такой ввод. Рейтинг CVSS - 2,1, степень опасности вендор определил как низкую. Результат - отказ в обслуживании: настройка через командную строку не работает до перезапуска службы. Из сети уязвимость не используют, следов реальных атак нет.

Уязвимость CVE-2026-106175 в продуктах Fortinet

Ошибку классифицировали как двойное освобождение памяти (CWE-415). Служба newcli принимает команды от администратора и освобождает память после их обработки. При определённой последовательности команд один и тот же участок освобождается повторно, что вызывает сбой процесса. Атакующему нужен доступ к устройству и учётная запись с высокими правами. Поэтому в векторе атаки указан локальный доступ, а взаимодействие с пользователем не требуется: достаточно отправить подготовленный набор команд. Ничего, кроме остановки одной службы, злоумышленник таким способом не получает.

Затронутые версии продуктов

Основной бюллетень FG-IR-26-182 от 13 октября 2026 года перечисляет FortiOS, FortiProxy и FortiSwitch. В FortiOS ошибка затрагивает версии с 7.6.0 по 7.6.7, а также все версии веток 7.4 и 7.2. FortiProxy и FortiSwitch затронуты в диапазоне с 7.6.0 по 7.6.6, включая ветки 7.4 и 7.2 целиком. Продукты с индексом 8.0 - FortiOS 8.0 и FortiSwitch 8.0 - в список не попали, на них ошибка не распространяется.

Запись CVE расширяет границы. В ней, помимо перечисленных продуктов, указаны FortiSASE версии 25.4.c и FortiPAM - от 1.0.0 до 1.8.4. Для веток 7.4 и 7.2 в записи CVE приведены точные верхние границы, тогда как бюллетень говорит обо всех версиях этих веток. Формулировки расходятся, поэтому безопаснее считать уязвимыми все версии веток 7.4 и 7.2.

Низкая оценка объясняется условиями эксплуатации. Атакующему нужен локальный доступ и учётная запись с высокими привилегиями, из сети ошибку не вызвать. Ущерб ограничен одной службой: устройство продолжает фильтровать трафик, а администратор возвращает управление после перезапуска. Виртуального патча вендор не предлагает, значит средства защиты сами по себе проблему не снимут, поможет только обновление. Ошибку нашёл Национальный центр кибербезопасности Великобритании (NCSC) и передал её вендору по процедуре ответственного раскрытия. В реальных атаках уязвимость не зафиксировали.

Как закрыть уязвимость

FortiProxy 7.6.7 и FortiSwitch 7.6.7 уже содержат исправление: обновление до этих версий или более поздних снимает риск. Для FortiOS ветки 7.6 исправление появится в 7.6.9, а до его выхода доступ к командной строке лучше оставить только тем, кому он действительно нужен по служебным обязанностям. Ветки 7.4 и 7.2 исправленных релизов не получат: вендор предлагает перейти на поддерживаемую версию. Проверить путь обновления помогает инструмент на https://docs.fortinet.com/upgrade-tool. Владельцам FortiPAM и FortiSASE стоит сверить свою версию с записью CVE, поскольку готового решения для них там нет.

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

Ссылки

Комментарии: 0