- Критическая уязвимость CVE-2026-21643 в FortiClientEMS 7.4.4 позволяет осуществлять SQL-инъекции и, возможно, удаленное выполнение кода без аутентификации.
- Уязвимость связана с небезопасной обработкой заголовка HTTP Site в промежуточном ПО, которая может быть использована через общедоступную конечную точку /api/v1/init_consts.
- Использование уязвимости может привести к полной компрометации базы данных управления, краже учетных данных и изменению политик, распространяемых на все конечные точки.
- Для устранения проблемы необходимо обновить FortiClientEMS до версии 7.4.5 или выше, отключить многопользовательский режим, если его невозможно установить немедленно, и ограничить доступ к консоли администрирования.
Безопасность платформ управления конечными точками стала критически важной проблемой для многих компаний, и последним ярким примером является Fortinet и ее решение FortiClient Endpoint Management Server (EMS). В последние месяцы была обнаружена критическая уязвимость SQL-инъекции, затрагивающая очень специфическую версию продукта, что вызвало значительный резонанс в сообществе специалистов по кибербезопасности.
В этой статье мы спокойно разберем, что происходит с критической уязвимостью SQL-инъекций в Fortinet , как работает уязвимость CVE-2026-21643, какое реальное влияние она оказывает на организации, как она используется на практике и, прежде всего, какие срочные и среднесрочные меры следует принять, если вы управляете инфраструктурой на основе FortiClientEMS или аналогичных продуктов.
Контекст уязвимости CVE-2026-21643 в FortiClientEMS
Уязвимость CVE-2026-21643 классифицирована как критическая , с оценкой CVSS от 9.1 до 9.8 в зависимости от различных источников, что практически соответствует наивысшему уровню серьезности. Недостаток заключается в FortiClient Endpoint Management Server (EMS), платформе, которую компании используют для развертывания и управления агентами FortiClient на своих пользовательских устройствах.
В частности, проблема затрагивает версию FortiClientEMS 7.4.4 из ветки 7.4 при включенном многопользовательском режиме (функционал «Сайты»). Версии 8.0 и 7.2, а также экземпляры FortiEMS Cloud, не затронуты этой ошибкой, поэтому Fortinet сосредоточила все рекомендации по устранению проблемы на средах, в которых по-прежнему используется версия 7.4.4 в локальной среде.
Эта SQL-инъекция происходит из-за некорректной нейтрализации специальных элементов в SQL-запросах , классифицируемых как CWE-89. На практике это позволяет неаутентифицированному удаленному злоумышленнику отправлять специально сформированные HTTP-запросы и заставлять сервер выполнять произвольные SQL-команды, что может привести к удаленному выполнению кода (RCE) с привилегиями пользователя базы данных.
В рекомендациях по безопасности компании Fortinet указывается, что уязвимость заключается в компоненте графического интерфейса пользователя FortiClientEMS , а именно в веб-интерфейсе, который администраторы используют для управления и мониторинга конечных точек. Это означает, что любой экземпляр с доступным через Интернет интерфейсом становится основной целью для злоумышленников.
Как возникают критические SQL-инъекции в Fortinet
Корень проблемы связан с масштабной рефакторизацией промежуточного программного обеспечения в FortiClientEMS 7.4.4 . В ходе этой переработки кода разработчики изменили способ обработки приложенийми подключений к базе данных PostgreSQL и маршрутизации клиентов, непреднамеренно внедрив ошибку в файл подключения.
В этой новой логике сервер напрямую передает HTTP-заголовок Site к консультации search_path от PostgreSQLЦель состояла в том, чтобы выбрать схему, соответствующую каждому арендатору, на основе этого заголовка, но главная проблема заключается в том, что промежуточное ПО не выполняет надлежащую проверку или очистку этого значения.
В результате злоумышленник может нарушить заданный формат строки и внедрить свою вредоносную программу в SQL-запрос, внедряя произвольные команды, которые база данных будет выполнять с высокими привилегиями, настроенными пользователем службы в виртуальной машине Fortinet.
Риск еще больше возрастает, поскольку это уязвимое промежуточное ПО выполняется до каких-либо проверок аутентификации . Другими словами, нет необходимости входить в систему или иметь учетные данные: достаточно просто отправить измененный HTTPS-запрос с модифицированным заголовком Site, чтобы попытаться использовать уязвимость.
Этот шаблон идеально подходит для сценария CVSS 3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H , где атака осуществляется по сети, имеет низкую сложность, не требует предварительных привилегий или взаимодействия с пользователем и полностью ставит под угрозу конфиденциальность, целостность и доступность затронутой системы.
Вектор атаки: конечная точка /api/v1/init_consts и заголовок Site.
Исследователи в области безопасности, такие как команда Бишопа Фокса, объяснили, что наиболее эффективный вектор атаки находится на конечной точке. общедоступный /api/v1/init_consts, маршрут API FortiClientEMS, используемый во время инициализации интерфейса.
Злоумышленники могут сначала использовать эту конечную точку, чтобы Проверьте, включен ли многопользовательский режим.Если они обнаружат, что функциональность «Сайты» включена, они начнут внедрять SQL-запросы через заголовок HTTP. Siteиспользуя тот факт, что значение передается в предложение без очистки. search_path.
Этот конечный пункт имеет несколько недостатков в проектировании: во-первых, в нем отсутствуют механизмы ограничения скорости запросов и специальные средства защиты от атак методом перебора паролей; во-вторых, он напрямую возвращает сообщения об ошибках, генерируемые PostgreSQL, в теле ответа. Это значительно упрощает жизнь злоумышленнику.
Получая эти ошибки настолько явно, злоумышленник может использовать методы извлечения данных на основе ошибок в рамках одного запроса , не прибегая к гораздо более медленным, зависящим от времени инъекциям. Это позволяет чрезвычайно быстро перечислять конфиденциальные таблицы, столбцы и данные.
В случае успешной эксплуатации уязвимости злоумышленник добивается полной компрометации базы данных управления конечными точками . Поскольку пользователь базы данных работает с правами суперпользователя PostgreSQL, он может не только похищать информацию, но и получить доступ к удаленному выполнению кода в базовой операционной системе.
Реальное влияние на организацию и управляемые конечные точки
Последствия этой уязвимости выходят далеко за рамки простой утечки данных. Возможность выполнения произвольных SQL-запросов в базе данных FortiClientEMS позволяет злоумышленникам красть пароли администраторов, цифровые сертификаты и полные списки устройств, подключенных к платформе.
Обладая таким уровнем доступа, злоумышленник может изменять политики безопасности и распространять вредоносные конфигурации на все управляемые конечные точки. Это открывает путь к сложным сценариям, в которых собственные агенты безопасности организации становятся вектором атаки на внутреннюю сеть.
Кроме того, компрометация базы данных управления также влияет на конфиденциальность хранимых данных (например, информации о пользователях, оборудовании, политиках и сертификатах), целостность (изменение правил, шаблонов и назначений) и доступность (возможное удаление данных или саботаж административного сервера).
Эта угроза соответствует все более распространенной тенденции атак на периферийные устройства и системы управления , которые высоко ценятся киберпреступниками, поскольку они функционируют как концентраторы информации и обеспечивают контроль над большими объемами конечных точек.
По всем вышеперечисленным причинам компания Fortinet классифицировала эту уязвимость как критическую, и агентства и компании, занимающиеся вопросами безопасности, рекомендуют рассматривать любой уязвимый экземпляр FortiClientEMS 7.4.4 как объект максимального риска до тех пор, пока не будет доказано обратное.
Активная эксплуатация и зона воздействия
Хотя некоторые первоначальные сообщения указывали на отсутствие активной эксплуатации уязвимости, исследователи из компании Defused подтвердили наличие реальных атак с использованием уязвимости CVE-2026-21643 всего за четыре дня до того, как информация об уязвимости была обнародована.
Данные, собранные такими организациями, как Shadowserver, показывают, что на момент мониторинга около 2.000 экземпляров FortiClientEMS были напрямую подключены к интернету . Лидером по статистике стали США с примерно 756 уязвимыми серверами, за ними следует Европа с более чем 680. Shodan также обнаружил более 1.000 общедоступных веб-интерфейсов FortiClientEMS, многие из которых, вероятно, не были обновлены.
Официальная запись в реестре NIST для CVE-2026-21643 подтверждает эту чрезвычайно высокую степень серьезности, указывая на вектор AV:N/AC:L/PR:N/UI:N с сильным воздействием на C, I и A. Это означает, что любой сервер FortiClientEMS 7.4.4 с открытым веб-интерфейсом может быть полностью скомпрометирован без необходимости получения злоумышленником учетных данных или убеждения пользователя нажимать на какие-либо кнопки.
Defused сообщила об этих эксплойтах 28 марта, отметив также, что, несмотря на это, уязвимость еще не была внесена в каталог KEV (Known Exploited Vulnerabilities) CISA или другие публичные списки активно используемых уязвимостей, что обычно происходит на начальных этапах эксплуатации.
С другой стороны, компания Fortinet выпустила корректирующее обновление еще в феврале в версии 7.4.5, что наглядно демонстрирует повторяющуюся закономерность в кибербезопасности: существует значительный временной разрыв между появлением исправления и его фактическим внедрением в производство, период, в течение которого злоумышленники пользуются возможностью скомпрометировать системы, которые еще не были обновлены.
Признаки компрометации и признаки атаки
Для администраторов, управляющих FortiClientEMS, крайне важно понимать признаки потенциальной попытки взлома. Ключевые индикаторы компрометации (IoC) включают в себя следующее:
Во-первых, они подчеркивают необычно длительное время отклика, варьирующееся от 5 до более чем 20 секунд.на конечных точках /api/v1/auth/signin o /api/v1/init_constsкак это видно в журналах доступа Apache или другого веб-сервера, расположенного перед ним.
Это также предупреждающий знак, на который следует обратить внимание. Повторные HTTP-ответы 500 с одного и того же IP-адреса. против конечной точки /api/v1/init_constsПодобная закономерность может указывать на то, что злоумышленник методом проб и ошибок совершенствует свои SQL-инъекционные программы, пока не найдет ту, которая работает и не вызывает ошибок.
Кроме того, стоит посмотреть журналы ошибок PostgreSQL. консультации search_path с одинарными кавычками, точками с запятой или ключевыми словами SQL. в качестве SELECT, INSERT o UPDATE вне ожидаемого контекста. Этот тип трассировки обычно напрямую указывает на попытку манипулирования заголовком сайта.
В качестве ответной меры любой сервер FortiClientEMS 7.4.4, подключенный к интернету без надлежащих обновлений, следует рассматривать как потенциально скомпрометированный . Это включает в себя изоляцию сервера от сети, проведение детального криминалистического анализа (базы данных, операционная система и журналы) и планирование контролируемой реконструкции среды в случае обнаружения признаков вторжения.
Незамедлительное устранение проблемы и официальное решение от Fortinet.
Основная мера по устранению уязвимости очевидна: как можно скорее обновите FortiClientEMS с версии 7.4.4 до версии 7.4.5 или выше . Компания Fortinet устранила уязвимость, заменив строковую интерполяцию в запросе на корректную обработку параметризованных идентификаторов и безопасное экранирование входных данных из заголовка Site.
Версии 8.0 и 7.2, а также FortiEMS Cloud, не требуют дополнительных действий , поскольку они не затронуты данной конкретной уязвимостью. Тем не менее, все же рекомендуется проверить доступность вашего интернет-соединения и настройки доступа, поскольку поверхность атаки для консолей управления всегда должна быть минимизирована.
Для команд, которые по операционным причинам не могут немедленно применить патч, некоторые исследователи рекомендуют временное решение: отключение многопользовательской функциональности «Сайты» . Это действие предотвращает выполнение уязвимого участка кода, связанного с заголовком «Сайт», значительно сокращая количество возможных уязвимостей.
Аналогичным образом, крайне важно ограничить веб-доступ к интерфейсу управления EMS только доверенными внутренними сетями . В идеале консоль следует размещать за VPN или механизмом доступа с нулевым доверием и никогда не оставлять напрямую открытой для интернета, за исключением очень исключительных и надлежащим образом защищенных случаев.
Кроме того, рекомендуется пересмотреть и усилить правила брандмауэра и любые WAF-серверы, установленные перед FortiClientEMS , применив фильтры, блокирующие типичные шаблоны SQL-инъекций в заголовках HTTP, особенно в заголовке Site, и внимательно отслеживать любые аномальные запросы API.
Передовые методы обеспечения безопасности, выходящие за рамки установки патчей.
Этот инцидент, помимо простого применения исправлений и конкретных мер по устранению уязвимостей, ясно показывает, что управление уязвимостями должно быть непрерывным процессом , а не просто разовой реакцией на рекомендации поставщика. Организациям, которые полагаются на платформы управления конечными точками и решения для сетевой безопасности, следует укрепить свою стратегию по нескольким направлениям.
С одной стороны, крайне важно иметь актуальный список ресурсов и версий , чтобы при публикации критической уязвимости CVE можно было за считанные минуты определить, какие системы уязвимы, и расставить приоритеты при их обновлении в зависимости от уровня уязвимости и критичности.
С другой стороны, целесообразно проводить периодические тесты на проникновение и анализ архитектуры, которые подтверждают не только надежность самого продукта, но и способ его развертывания: сегментацию сети, разделение плоскостей управления, ограничения доступа, централизованный мониторинг журналов и обнаружение аномального поведения.
С точки зрения разработки, этот случай еще раз демонстрирует важность применения безопасных методов разработки и регрессионного тестирования всякий раз, когда проводится глубокая рефакторизация промежуточного программного обеспечения или критически важных компонентов. Улучшение производительности или масштабируемости не может сопровождаться шагом назад в таких базовых механизмах, как очистка входных данных.
Компании, специализирующиеся на кибербезопасности и безопасной разработке, предлагают услуги аудита кода, тестирования на проникновение и консалтинга, специально разработанные для выявления этих уязвимостей до того, как они попадут в производственную среду. В средах, сочетающих локальную инфраструктуру, облако и периферийные устройства, привлечение внешних экспертов часто имеет решающее значение.
Наконец, на уровне управления и бизнеса очень полезно иметь панели мониторинга и инструменты бизнес-аналитики , позволяющие визуализировать состояние уязвимостей, доступность интерфейсов управления и потенциальное влияние критического сбоя на процессы организации. Такой подход облегчает определение приоритетов инвестиций и обоснование превентивных мер, которые на первый взгляд могут показаться дорогостоящими, но в среднесрочной перспективе позволяют избежать многих проблем.
Сочетание серьезного недостатка в проектировании, большой поверхности атаки и обычной задержки в обновлении делает CVE-2026-21643 классическим примером того, почему безопасность консоли управления никогда не следует недооценивать. Любая организация, использующая FortiClientEMS или аналогичные решения, должна воспринять этот инцидент как тревожный сигнал, чтобы пересмотреть свою систему безопасности, ускорить циклы обновлений и усилить защиту своих платформ управления, прежде чем очередная уязвимость нулевого дня или SQL-инъекция снова поставят ее в невыгодное положение.
