Разработчики GitLab закрыли критическую дыру, которая тихо жила в продукте с 2014 года. Ошибка получила номер CVE-2026-110264 и максимальную оценку 10,0 по шкале CVSS. Она позволяет удаленно выполнить код на сервере без аутентификации.

Для владельцев self-managed-инсталляций это неприятный сценарий из серии «обновляться нужно было вчера». Уязвимость затрагивает все версии, начиная с 7.0, а значит, под удар попадает большой пласт установок, которые годами не трогали инфраструктуру.

Что именно нашли в GitLab

Проблему обнаружили во встроенном в Ruby движке Onigmo, который GitLab использует в своих сборках и патчит самостоятельно. Ошибка связана с целочисленным переполнением в компиляторе регулярных выражений. В некоторых условиях атакующий может подсунуть специально подготовленное регулярное выражение и добиться выполнения произвольного кода.

Разработчики пока не раскрывают все детали условий эксплуатации. Это обычная мера: чем меньше информации на старте, тем труднее атакующим быстро превратить новость в рабочую атаку.

По сути речь идет о серверной уязвимости класса RCE — remote code execution, то есть удаленного выполнения кода. Для администраторов это одна из самых неприятных категорий багов: если атака пройдет, злоумышленник может выйти далеко за пределы обычного веб-доступа.

Какие есть варианты защиты

Первый и самый очевидный шаг — поставить обновление. GitLab выпустил исправления для CE и EE в версиях 19.5.1, 19.4.3, 19.3.6, 19.2.9, 19.1.9, 19.0.10 и 18.11.13. Даже ветки, которые уже не поддерживаются, получили бэкпорты из-за тяжести бага.

Второй шаг — проверить, не откладывали ли вы обновление после октябрьского патча. В середине октября 2026 года GitLab уже закрывал похожую критическую RCE-дыру CVE-2026-97229. Если вы тогда ограничились частичным обновлением, теперь придется ставить еще один релиз.

Третий шаг — посмотреть на логи и сигналы аномальной активности. Для поиска возможных попыток эксплуатации GitLab выпустил правила детектирования Onigmo native worker crash и Org mode render error burst. Они пригодятся тем, кто ведет мониторинг событий и быстро реагирует на странные ошибки рендера или падения воркеров.

В похожих историях полезно держать под рукой и базовую логику анализа. В статье что серверные логи говорят о подозрительных запросах на Linux хорошо видно, какие следы обычно оставляет чужой доступ.

Отдельно стоит помнить: если админская сеть выходит в интернет из чужой или плохо контролируемой сети, лишний слой защиты не помешает. Для повседневной цифровой гигиены подойдут и инструменты для защиты переписки и метаданных — вместе с менеджером паролей и двухфакторной проверкой они закрывают часть типовых рисков.

Кому что делать в первую очередь

Если вы администрируете GitLab on-premise, обновление — без вариантов. Это не тот случай, когда можно подождать «до следующего окна работ». Уязвимость критическая, затрагивает широкую линейку версий и не требует входа в систему.

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

Если GitLab у вас обслуживает CI/CD, риски выше обычного. Компрометация такого сервера может затронуть не только код, но и секреты сборки, токены и конфигурации развертывания.

Практический чек-лист

  • Проверьте текущую версию GitLab CE или EE.
  • Сверьте ее с перечнем исправленных релизов: 19.5.1, 19.4.3, 19.3.6, 19.2.9, 19.1.9, 19.0.10 и 18.11.13.
  • Обновите инстанс без откладывания, даже если у вас старая ветка с бэкпортом.
  • Просмотрите логи на признаки падений Onigmo native worker crash и Org mode render error burst.
  • Проверьте, не оставались ли на сервере лишние токены, ключи и секреты сборки.
  • Сверьте админский доступ и ограничения по сети.
  • Если сервер часто используют из внешних или чужих сетей, заранее оцените дополнительный слой для приватного трафика как часть общей защиты.
Поделиться: