GitLab закрыла критическую уязвимость GraphQL в self-managed инсталляциях

GitLab выпустила внеплановые обновления для Community Edition и Enterprise Edition, закрывающие критическую уязвимость CVE-2026-19478 с оценкой CVSS 9,4. При определённых условиях неаутентифицированный удалённый атакующий мог изменять или удалять публичные проекты и пользовательские данные через директиву GraphQL.
Исправления вошли в GitLab 19.2.4, 19.1.6, 19.0.8 и 18.11.11. Обновление касается только самостоятельно управляемых установок: GitLab.com и GitLab Dedicated уже работают на исправленной версии, поэтому их клиентам действий не требуется.
Какие версии требуют внимания
Уязвимости подвержены все релизы начиная с 18.2 и до 18.11.11, ветка 19.0 до 19.0.8, ветка 19.1 до 19.1.6 и ветка 19.2 до 19.2.4. Для веток 18.2–18.10 патчи не выпущены, хотя они входят в затронутый диапазон.
GitLab не раскрыла ни конкретную директиву GraphQL, связанную с CVE-2026-19478, ни условия, необходимые для эксплуатации. Опубликованный вектор CVSS указывает, что атака возможна по сети без учётных данных и без действий со стороны жертвы.
Вторая ошибка в обработке GraphQL
В тот же пакет исправлений вошла CVE-2026-19650, оценённая GitLab в 7,1 балла по CVSS. Это CSRF-уязвимость в обработчике multiplex-запросов GraphQL: из-за некорректной проверки запросов неаутентифицированный пользователь при определённых условиях мог выполнять мутации через GET-запросы.
В отличие от критической CVE-2026-19478, для эксплуатации второй проблемы требуется взаимодействие пользователя. На 18 августа GitLab не сообщала о случаях эксплуатации обеих уязвимостей и не раскрывала публичный код эксплойта.
Что учитывать администраторам
Выпуск состоялся 17 августа, через пять дней после планового обновления. GitLab обычно публикует патчи дважды в месяц — во вторую и четвёртую среду. Новые версии не содержат миграций и, по оценке компании, не должны требовать простоя в многосерверных развёртываниях.
Риск для DevOps-процессов дополняет цепочки ClickFix и рост инцидентов с агентами ИИ и показывает, насколько важны инвентаризация внешне доступных сервисов и быстрый цикл установки обновлений. Владельцам self-managed GitLab следует проверить используемую ветку, установить соответствующий исправленный релиз, а для 18.2–18.10 подготовить переход на поддерживаемую версию.

