Сохранение сеансов после включения 2FA
Обзор
Приложение Nagios Fusion (версии 2024R1.2 и 2024R2) содержит серьёзную уязвимость, из-за которой существующие сеансы остаются действительными даже после включения двухфакторной аутентификации (2FA). В частности, при включении 2FA для учётной записи администратора приложение не аннулирует все активные сеансы, созданные до включения 2FA. Это позволяет злоумышленнику или неавторизованному пользователю, имеющему доступ к старому сеансу, обойти механизм 2FA и выполнять несанкционированные действия.
Были замечены следующие проблемы:
Сохранение сеанса: Сеансы, созданные до включения 2FA, остаются действительными без запроса дополнительного фактора аутентификации.
Несанкционированное повышение привилегий: Используя эти старые сеансы, злоумышленники могут изменять критически важные данные учётной записи или выполнять административные действия без проверки 2FA.
Эта уязвимость возникает из-за отсутствия аннулирования сеансов в процессе включения 2FA, в результате чего приложение не применяет дополнительный механизм безопасности к более старым сеансам.
Серьёзность
- Серьёзность: Высокая
- CWE: CWE-613 (основной); CWE-287 (дополнительный)
- Оценка CVSS (v3.0): 7.3 High
- CVSS Vector: AV:A/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Затронутые компоненты
- Шлюз аутентификации / служба сеансов: логика выдачи, проверки и отзыва сеансов.
- Механизм регистрации 2FA и политик: логика, которая повышает уровень доверия учётной записи без отзыва существующих токенов.
- Веб-интерфейс / API: проверки авторизации, доверяющие состоянию устаревших сеансов.
- Управление устройствами: хранилище запомненных устройств / доверенных сеансов (cookie, refresh-токены, серверные сеансы).
Затронутый поставщик/продукт
- Название продукта- Nagios Fusion
- Затронутая версия: 2024R1.2 и 2024R2
- Исправленная версия: 2024R2.1
Краткое описание проблемы
Что происходит:
- Пользователь включает 2FA в своей учётной записи (TOTP/SMS/push/webauthn).
- Сервер обновляет состояние MFA/уровня доверия пользователя, но не аннулирует и не требует повторной проверки существующих сеансов.
- Все активные сеансы (включая те, что находятся на клиентах, контролируемых злоумышленником) продолжают работать в контексте до включения 2FA, фактически обходя предполагаемое усиление контроля.
Разрыв в уровне безопасности: Включение 2FA — это изменение границы безопасности. Неспособность принудительно обновить сеанс (повторная аутентификация + 2FA) и отозвать устаревшие сеансы сводит на нет снижение риска, обеспечиваемое этим контролем.
Реалистичные сценарии злоупотребления:
- Злоумышленник с украденной cookie сеанса сохраняет доступ после включения 2FA и может выгружать данные или изменять настройки учётной записи.
- Общий киоск или неуправляемое устройство сохраняет активный сеанс, который обходит новое требование MFA.
Рекомендации по смягчению последствий
- При включении 2FA или сбросе фактора отзывайте все существующие сеансы (access + refresh токены) на всех устройствах и требуйте повторную основную аутентификацию + 2FA.
- Сменяйте секреты сеансов (например, меняйте ключи подписи или увеличивайте версию серверного сеанса), чтобы аннулировать устаревшие токены.
- Установите разумные значения maxAge и idleTimeout; сократите время жизни долгоживущих сеансов.
График раскрытия информации
- [04-01-2025]: Обнаружена уязвимость
- [04-01-2025]: Сообщено поставщику
- [10-01-2025]: Поставщик подтвердил уязвимость
- [23-07-2025]: Поставщик устранил уязвимость в новом релизе
- [16-08-2025]: Подана заявка на CVE
- [23-10-2025]: Назначен CVE
📌 Этот репозиторий предназначен исключительно для сообщений об уязвимостях и использования в качестве справочника по CVE.