Вторая за девять дней уязвимость GitLab с CVSS 10: 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
- Обновитесь до исправленной версии вашей ветки. В релизе есть миграции БД: однонодовая установка уйдёт в короткий даунтайм, многонодовые конфигурации можно обновить без простоя по процедуре zero-downtime.
- Если обновиться сразу нельзя — закройте сервер от интернета. Оставьте доступ к веб-интерфейсу и API только через VPN или по белому списку IP, пока патч не установлен.
- Подключите детекты GitLab. Вендор опубликовал два правила для поиска попыток эксплуатации — аварийные падения нативного воркера Onigmo и всплески ошибок рендеринга Org-mode. Сами правила не означают, что атаки уже идут, но помогают их заметить.
- Проверьте журналы за последние недели на аномальные падения процессов и неожиданные запросы от неаутентифицированных клиентов.
- При подозрении на компрометацию ротируйте секреты: токены раннеров, переменные 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 не сообщает об эксплуатации в реальных атаках, публичного эксплойта тоже нет.
Будет ли даунтайм при обновлении? На однонодовой установке — да, из-за миграций БД. Многонодовые конфигурации можно обновить без простоя.
Источники
- GitLab — Critical Patch Release: 19.5.1, 19.4.3, 19.3.6, 19.2.9, 19.1.9, 19.0.10, 18.11.13, 21 октября 2026 (первоисточник).
- Cyber Security Agency of Singapore — Critical Vulnerability in GitLab (AL-2026-152), 22 октября 2026.
- The Hacker News — Critical GitLab Flaw (CVSS 10.0) Could Allow Unauthenticated RCE Across 12 Years of Releases, октябрь 2026.
Свой GitLab открыт в интернет и обновляется раз в квартал?
Закроем инстанс за VPN, настроим регламент экстренных патчей, короткоживущие токены для CI и мониторинг раннеров — чтобы следующая критическая уязвимость не стала инцидентом.