GeoServer zero-day: критическая SQL-инъекция под активной атакой — сотни попыток за первые часы

Коротко о главном
12 августа 2026 года исследователь под псевдонимом @q1uf3ng публично раскрыл zero-day уязвимость в GeoServer с рейтингом CVSS 9.8. Брешь — SQL-инъекция в функции jsonArrayContains — при определённых условиях позволяет выполнить произвольный код на сервере. Компания watchTowr зафиксировала сотни попыток эксплуатации уже в первые часы после раскрытия. Патчи выпущены: если вы используете GeoServer с PostGIS-хранилищем — обновляйтесь до версий 3.0.1, 2.28.5 или 2.27.6 немедленно.
Что такое GeoServer и кого касается уязвимость
GeoServer — популярная открытая платформа для публикации геопространственных данных через OGC-стандарты (WMS, WFS, WCS). Её используют в государственном секторе, телекоммуникациях, сельском хозяйстве и транспорте: фактически везде, где веб-сервисы работают с картами, геоданными или пространственными запросами. Платформа уже фигурировала в каталоге CISA Known Exploited Vulnerabilities — это не первая критическая проблема в её истории.
Уязвимость затрагивает инсталляции GeoServer, которые подключены к хранилищу данных PostGIS версии 12 и выше и содержат поля типа String или JSON. Если ваше приложение или внутренняя ГИС-система строится поверх GeoServer с PostGIS, проверьте версию сервера в первую очередь. Вопросы про аудит кода и зависимостей в подобных случаях помогают выявить уязвимые компоненты системно, а не реактивно.
Техническая суть: почему jsonArrayContains опасна
Уязвимость зарегистрирована как GHSA-mqjf-5f49-2fjh (GitHub Security Advisory) с оценкой CVSS 9.8. По существу это регрессия ранее исправленного CVE-2023-25158: при выполнении OGC-фильтров с PostGIS DataStore функция jsonArrayContains(<column>, <pointer>, <value>) вставляет значение <value> в генерируемый SQL-запрос без экранирования. Атакующий, способный передать произвольный ввод в этот параметр, может модифицировать логику запроса и при определённой конфигурации сервера довести инъекцию до удалённого выполнения кода.
Уязвимость требует двух условий одновременно: PostGIS 12+ как DataStore и наличие поля типа String или JSON в запрашиваемом слое. Без этой связки риск существенно ниже, однако разработчики GeoServer настоятельно рекомендуют обновляться всем независимо от конфигурации.
Исправление затронуло и библиотеку GeoTools, которую использует GeoServer: патч вышел для версий 35.1, 34.5 и 33.6 соответственно. Речь о компоненте org.geotools:gt-jdbc-postgis.
Хронология: от раскрытия до сотен атак за несколько часов
10:46 UTC 12 августа 2026 года — @q1uf3ng публикует описание уязвимости. Уже в первые часы компания watchTowr фиксирует сотни попыток эксплуатации, исходящих с небольшого пула IP-адресов. Анализ показывает, что атакующие пока нащупывают уязвимые инстанции — вызывают ошибки и не идут дальше. Однако специалисты по безопасности предупреждают: такое «сканирование» перед атакой — типичная разведка, и откладывать обновление нельзя.
Скорость реакции злоумышленников здесь показательна: между публичным раскрытием zero-day и активной эксплуатацией счёт идёт на часы, а не дни. Если ваш GeoServer доступен из интернета, каждый час промедления с патчем — измеримый риск. Своевременный мониторинг информационной безопасности и быстрый цикл применения патчей критичны именно в таких сценариях.
Какие версии уязвимы и что обновлять
GeoServer выпустил три исправленные версии:
GeoServer 3.0.1 — патч для ветки 3.x.
GeoServer 2.28.5 — патч для ветки 2.28.x.
GeoServer 2.27.6 — патч для ветки 2.27.x.
Исправления GeoTools для PostGIS-компонента: версии 35.1, 34.5, 33.6 (в зависимости от ветки 35.x / 34.x / 33.x). Уязвимы все предшествующие релизы каждой ветки. Если вы используете более старую ветку, которой нет в списке, — рекомендуется миграция на поддерживаемую версию.
Дополнительные меры на период обновления: ограничьте сетевой доступ к GeoServer-инстансу с помощью файрвола или реверс-прокси, отфильтруйте запросы к эндпоинтам WFS/WCS, задействующим jsonArrayContains-фильтры, и включите аудит запросов к БД для обнаружения аномальных SQL-паттернов.
Что делать прямо сейчас
Немедленно: выясните, какую версию GeoServer вы используете и есть ли у неё PostGIS DataStore. Если да — обновляйтесь до ближайшей из патч-версий выше. Если обновление займёт время — ограничьте доступ к GeoServer сетевыми правилами.
До обновления: отключите или ограничьте публичный доступ к OGC-эндпоинтам (WFS getFeature и аналогичные), принимающим пользовательские фильтры. Это не закрывает уязвимость, но уменьшает поверхность атаки.
После обновления: проверьте логи на предмет аномальных запросов за последние дни. watchTowr сообщает, что атакующие уже активны с 12 августа — возможно, ваш сервер уже получал зондирующие запросы.
Долгосрочно: внесите GeoServer в реестр компонентов, для которых отслеживаются обновления безопасности. История платформы показывает, что критические CVE в ней появляются регулярно, и ручной мониторинг здесь — обязательная дисциплина.
Часто задаваемые вопросы
Уязвимы ли мы, если используем GeoServer без PostGIS? Уязвимость в функции jsonArrayContains эксплуатируется именно через PostGIS DataStore. Без PostGIS 12+ вектор атаки через эту функцию отсутствует, однако разработчики рекомендуют обновляться в любом случае.
Есть ли уже публичный PoC-эксплойт? На момент публикации статьи полноценного публичного PoC, доводящего инъекцию до RCE, не зафиксировано. Однако сканирование уязвимых инстансов началось в первые часы после раскрытия, что говорит о высоком интересе атакующих.
Как быстро выйдут патчи для других веток? Команда GeoServer выпустила патчи для трёх активных веток (3.0.x, 2.28.x, 2.27.x) одновременно с раскрытием. Ветки, вышедшие за цикл поддержки, патча не получат — это ещё один аргумент для миграции на актуальную версию.
Может ли файрвол заменить обновление? Нет. Сетевые ограничения снижают поверхность атаки, но не устраняют уязвимость. Если кто-то из авторизованных пользователей окажется скомпрометирован, внутренняя эксплуатация по-прежнему возможна. Патч — единственное надёжное решение.
Источники
SecurityWeek — Hackers Exploiting Unpatched GeoServer Zero-Day, 2026
Field Effect — Early exploitation attempts observed of GeoServer zero day, 2026
CSO Online — Attackers target zero-day vulnerability in geospatial data platform GeoServer, 2026
Используете GeoServer или другие open source компоненты в своём стеке?
Поможем провести аудит кода и зависимостей: выявим уязвимые библиотеки, настроим процесс отслеживания CVE и выстроим цикл применения патчей — до того, как атакующие доберутся первыми.