Услуги Портфолио Контакты БлогНовости +7 (800) 511‑32‑27 Обсудить проект
Безопасность

Вторая за девять дней уязвимость GitLab с CVSS 10: CVE-2026-110264 открывает сервер без логина

22 октября 2026·5 мин чтения
GitLabCVE-2026-110264
Уязвимость GitLab CVE-2026-110264 в компиляторе регулярных выражений

21 октября 2026 года GitLab выпустил критический патч-релиз 19.5.1 с исправлением CVE-2026-110264 — уязвимости с максимальной оценкой CVSS 10.0. Целочисленное переполнение при компиляции специально составленного регулярного выражения позволяет выполнить код на self-managed сервере GitLab CE и EE без авторизации. Затронуты все версии начиная с 7.0 (2014 год); обновляться нужно сразу.

Для команд, у которых собственный GitLab — это сердце DevOps-процессов и CI/CD, такая брешь означает риск для всего сразу: исходного кода, секретов пайплайнов, токенов деплоя и доступа к продакшену. Захваченный сервер сборки — классическая точка входа для атаки на цепочку поставок.

Ситуация повторяется: 12 октября GitLab уже закрывал другую уязвимость с CVSS 10 в обработке регулярных выражений — о ней мы писали в новости про CVE-2026-97229. Если тот патч вы ещё не поставили, новый релиз закрывает обе проблемы одним обновлением.

Что исправил GitLab 21 октября

Патч-релиз вышел сразу для семи веток: 19.5.1, 19.4.3, 19.3.6, 19.2.9, 19.1.9, 19.0.10 и 18.11.13. Помимо критической уязвимости он закрывает ещё 11 проблем, две из них — высокого уровня: CVE-2026-15723 (CVSS 8.2, некорректная аутентификация при автопривязке OmniAuth к LDAP по email) и CVE-2026-112212 (CVSS 7.5, отравление кэша в discovery-эндпоинтах OAuth/OIDC). Остальные девять — среднего и низкого уровня, часть из них касается только Enterprise Edition.

Уязвимость CVE-2026-110264 нашёл исследователь joaxcar и сообщил о ней через программу bug bounty GitLab на HackerOne. Вектор CVSS — AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H: атака по сети, низкая сложность, без прав и без участия пользователя, с выходом за пределы уязвимого компонента.

Где именно ошибка: движок регулярных выражений Onigmo

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

Кого касается, а кого нет

  • Self-managed GitLab CE и EE версий с 7.0 по 18.11.12, 19.0–19.0.9, 19.1–19.1.8, 19.2–19.2.8, 19.3–19.3.5, 19.4–19.4.2 и 19.5.0 — уязвимы, нужно обновление.
  • GitLab.com уже работает на исправленной версии — пользователям облака ничего делать не нужно.
  • GitLab Dedicated — защищены инстансы на внутренних релизах 19.3.5-internal0 и 19.4.2-internal0 или новее.

Агентство кибербезопасности Сингапура (CSA) 22 октября выпустило отдельный алерт и тоже рекомендует обновиться немедленно. На момент публикации подтверждённых атак и публичного эксплойта нет — но после двух критических патчей подряд в одной подсистеме исследователи и атакующие наверняка будут изучать diff исправлений.

Как действовать командам с собственным GitLab

  1. Обновитесь до исправленной версии вашей ветки. В релизе есть миграции БД: однонодовая установка уйдёт в короткий даунтайм, многонодовые конфигурации можно обновить без простоя по процедуре zero-downtime.
  2. Если обновиться сразу нельзя — закройте сервер от интернета. Оставьте доступ к веб-интерфейсу и API только через VPN или по белому списку IP, пока патч не установлен.
  3. Подключите детекты GitLab. Вендор опубликовал два правила для поиска попыток эксплуатации — аварийные падения нативного воркера Onigmo и всплески ошибок рендеринга Org-mode. Сами правила не означают, что атаки уже идут, но помогают их заметить.
  4. Проверьте журналы за последние недели на аномальные падения процессов и неожиданные запросы от неаутентифицированных клиентов.
  5. При подозрении на компрометацию ротируйте секреты: токены раннеров, переменные CI/CD, ключи деплоя и персональные токены доступа.

Почему две подряд уязвимости — сигнал для процесса, а не только для патча

Два CVSS 10 за девять дней в одной и той же подсистеме — повод пересмотреть, как устроен ваш контур разработки. Self-hosted GitLab, открытый в интернет «потому что так удобнее подрядчикам», и патчи раз в квартал — это та конфигурация, при которой такие уязвимости превращаются в инциденты. Минимальный набор гигиены: подписка на security-рассылку GitLab, регламент экстренного обновления в течение 24–48 часов, доступ к инстансу только через VPN и отдельные короткоживущие токены для CI вместо долгоживущих персональных.

Часто задаваемые вопросы

Нужно ли что-то делать пользователям GitLab.com? Нет. Облачная версия уже обновлена; действовать нужно только владельцам self-managed установок.

Чем CVE-2026-110264 отличается от CVE-2026-97229? Это две разные уязвимости, исправленные разными релизами (12 и 21 октября). Обе получили CVSS 10 и связаны с обработкой регулярных выражений, поэтому актуальный патч-релиз 21 октября нужен в любом случае.

Есть ли подтверждённые атаки? На 22 октября GitLab не сообщает об эксплуатации в реальных атаках, публичного эксплойта тоже нет.

Будет ли даунтайм при обновлении? На однонодовой установке — да, из-за миграций БД. Многонодовые конфигурации можно обновить без простоя.

Источники

Материал подготовлен редакцией YuSMP Group по открытым источникам. Нужна экспертиза по теме или разработка под задачу — обсудим проект.

Свой GitLab открыт в интернет и обновляется раз в квартал?

Закроем инстанс за VPN, настроим регламент экстренных патчей, короткоживущие токены для CI и мониторинг раннеров — чтобы следующая критическая уязвимость не стала инцидентом.

Защитить CI/CD и DevOps-контур