CVE-2022-40684

Fortinet Multiple Products

ВЫСОКАЯ ВЕРОЯТНОСТЬ

Дата обнаружения

2022-10-11

Официальное описание

Fortinet FortiOS, FortiProxy, and FortiSwitchManager contain an authentication bypass vulnerability that could allow an unauthenticated attacker to perform operations on the administrative interface via specially crafted HTTP or HTTPS requests.

🛡️
Технический анализ и план устранения

Суть уязвимости

CVE-2022-40684 — это критическая уязвимость обхода аутентификации (Authentication Bypass) в административном интерфейсе FortiOS, FortiProxy и FortiSwitchManager. Проблема заключается в некорректной проверке заголовков HTTP-запросов (в частности, Forwarded, X-Forwarded-For и User-Agent).

Злоумышленник может отправить специально сформированный запрос, который заставит устройство считать, что запрос исходит от доверенного внутреннего процесса (например, node.js скрипта), что дает полный административный доступ к API устройства без ввода логина и пароля. Это позволяет удаленно изменять конфигурацию, создавать новых пользователей и полностью компрометировать систему.

Как исправить

Основным способом устранения является обновление прошивки до актуальных версий, в которых уязвимость закрыта.

1. Обновление FortiOS: * Версии 7.0.x: обновиться до 7.0.7 или выше. * Версии 7.2.x: обновиться до 7.2.2 или выше.

2. Обновление FortiProxy: * Версии 7.0.x: обновиться до 7.0.7 или выше. * Версии 7.2.x: обновиться до 7.2.1 или выше.

3. Обновление FortiSwitchManager: * Версии 7.0.x: обновиться до 7.0.0. * Версии 7.2.x: обновиться до 7.2.1 или выше.

Команда для проверки текущей версии:

get system status

Временные меры

Если немедленное обновление невозможно, необходимо ограничить доступ к административному интерфейсу.

1. Отключение HTTP/HTTPS администрирования на внешних интерфейсах: Необходимо оставить управление только через доверенные внутренние сети.

2. Настройка Local In Policy (рекомендуется): Создайте правило, разрешающее доступ к портам управления (по умолчанию 443/80) только с определенных IP-адресов администраторов.

Пример настройки для FortiOS (замените srcaddr на вашу доверенную сеть):

config firewall address
    edit "Trusted_Admin_IPs"
        set subnet 192.168.1.0 255.255.255.0
    next
end

config firewall local-in-policy
    edit 1
        set intf "wan1"
        set srcaddr "Trusted_Admin_IPs"
        set dstaddr "all"
        set action accept
        set service "HTTPS" "HTTP"
        set schedule "always"
    next
    edit 2
        set intf "wan1"
        set srcaddr "all"
        set dstaddr "all"
        set action deny
        set service "HTTPS" "HTTP"
        set schedule "always"
    next
end

3. Использование доверенных хостов (Trusted Hosts): Ограничьте список IP, с которых разрешен вход для конкретных учетных записей.

config system admin
    edit "admin"
        set trusthost1 192.168.1.100 255.255.255.255
    next
end