Публичный проект может открыть дверь
Критическая уязвимость CVE-2026-110264 недавно потрясла self-managed экземпляры GitLab, получив максимальную оценку 10.0 по шкале CVSS. Этот изъян позволяет неавторизованному злоумышленнику выполнять произвольный код на уязвимых серверах, что представляет прямую угрозу целостности данных и непрерывности операций.
Для эксплойта требуется определенное условие: экземпляр GitLab должен содержать хотя бы один публичный проект или запускать рендеринг Org-mode. Специально сформированный ввод регулярного выражения достигает уязвимого кода внутри встроенного в GitLab движка Onigmo, что приводит к переполнению целых чисел и последующему выполнению кода.
Эта уязвимость имеет долгую историю, уходящую корнями в GitLab 7.0, выпущенный в июне 2014 года. Она затрагивает self-managed версии Community Edition (CE) и Enterprise Edition (EE) в широком спектре версий, включая:
- 18.11.x
- 19.0.x–19.4.x
- 19.5.0
Платформы GitLab.com и GitLab Dedicated получили скрытые патчи, но self-hosted развертывания находятся под непосредственной угрозой. Обходных путей нет; организациям необходимо обновить свои экземпляры до исправленных версий, таких как 18.11.13, 19.0.10 или 19.5.1, чтобы нейтрализовать эту серьезную угрозу. Примерно 82 000 self-managed серверов GitLab остаются доступными из интернета, что делает своевременные действия обязательными.
Ошибка скрывалась внутри движка регулярных выражений Ruby
Ошибка находилась глубоко внутри встроенной среды выполнения Ruby в GitLab. В частности, движок регулярных выражений Onigmo, интегрированный в Ruby, некорректно обрабатывал идентификаторы повторов во время компиляции регулярных выражений. Тщательно составленный шаблон мог вызвать переполнение целых чисел, что напрямую приводило к повреждению памяти.
Успешная эксплуатация позволяла неавторизованному злоумышленнику выполнять нативный код на уязвимом self-managed сервере. Этот код выполнялся от имени системного пользователя git в GitLab, создавая серьезный риск для хранящихся репозиториев и потенциально раскрывая конфиденциальные данные CI/CD.
Этот инцидент подчеркивает критическую уязвимость цепочки поставок: сторонние или встроенные компоненты среды выполнения часто избегают тщательной проверки, которой подвергается основной код приложения. Даже надежные внутренние проверки безопасности могут пропустить изъяны в библиотеках вышестоящих разработчиков (upstream).
Для исправления GitLab потребовалось выпустить специально пропатченные бинарные файлы Ruby 3.3, 3.4 и 4.0 в составе пакетов Omnibus, устранив переполнение в Onigmo. Любой сервис на базе Ruby, компилирующий недоверенные регулярные выражения, должен срочно оценить свою подверженность риску, особенно если не были применены последние патчи Ruby (Ruby 4.0.9, 3.4.12 и 3.3.13). Эта уязвимость показывает, что единственный изъян в фундаментальном компоненте может поставить под угрозу годы операционной целостности.
Две оценки 10/10 за девять дней — это не случайность
Недавние показатели безопасности GitLab требуют немедленного внимания. Эта уязвимость в Onigmo, получившая оценку CVSS 10.0, появилась всего через девять дней после другого критического исправления ошибки в компиляторе регулярных выражений CI/CD, также оцененного в 10.0. Такая концентрация беспрецедентна и сигнализирует об изменении профиля рисков.
Исторически GitLab зафиксировал всего четыре уязвимости с CVSS 10.0 в период с 2019 по конец 2025 года. Однако в начале осени 2026 года платформа столкнулась с тремя такими «десятками» всего за шесть недель. Сообщается, что сентябрьская уязвимость была использована в течение дня после выхода патча, что подчеркивает срочность ситуации.
Этот ускоренный темп выпуска критических уведомлений создает значительное операционное давление на self-managed инстансы. Экстренные обновления часто требуют downtime и сложной миграции баз данных, что нарушает процессы разработки. Повторяющиеся уведомления вызывают patch fatigue у администраторов, увеличивая вероятность того, что системы останутся без обновлений.
Каждая задержка оставляет уязвимую систему открытой в течение окна сканирования злоумышленниками. Учитывая, что около 82 000 self-managed серверов GitLab доступны из интернета, поверхность атаки весьма значительна. Для получения подробной информации и ознакомления с новыми уведомлениями посетите GitLab Releases & Security Advisories. Руководители должны осознать, что эта закономерность — не просто досадная случайность; она требует стратегического пересмотра подходов к безопасности и протоколов обновления.
Нравится статья? Получайте такие каждое утро на почту.
одно письмо в день · отписка в два клика · без сторонних трекеров
Сначала установите патч; проводите расследование в процессе ожидания
Немедленные действия критически важны для self-managed инстансов GitLab. Обходных путей для этой CVSS 10.0 уязвимости не существует; администраторы должны без промедления обновиться до исправленной версии. Обратитесь к странице уведомлений безопасности и релизов GitLab, чтобы уточнить свою версию и применить соответствующий backport.
GitLab минимизировал риски для своих облачных сервисов, включая GitLab.com и GitLab Dedicated, применив патчи проактивно. Однако ответственность за обновление до безопасной версии, такой как 18.11.13, 19.0.10 или 19.5.1, лежит на организациях, использующих self-managed инстансы. Невыполнение этого требования оставляет ваши системы уязвимыми.
После установки патча крайне важно провести тщательное расследование. Изучите руководство GitLab по обнаружению индикаторов компрометации, обращая особое внимание на сбои в работе Onigmo worker или необычные всплески ошибок рендеринга Org-mode. Оцените публичную доступность вашего инстанса, учитывая, что примерно 82 000 self-managed серверов GitLab доступны через интернет.
Наконец, если есть подозрение на компрометацию, проведите полный аудит секретов CI/CD и логов доступа. Проактивное обновление и бдительный анализ после инцидента — ваши самые сильные средства защиты от угроз, способных подорвать более чем десятилетнюю операционную целостность.
Часто задаваемые вопросы
Что представляет собой уязвимость GitLab CVE-2026-110264?
Это уязвимость удаленного выполнения кода (RCE) с оценкой CVSS 10.0, связанная с переполнением целых чисел в Onigmo, движке регулярных выражений Ruby, входящем в состав GitLab.
Какие инстансы GitLab затронуты?
Уязвимость затрагивает self-managed версии GitLab CE и EE, начиная с версии 7.0, при наличии публичного проекта или соответствующего триггера рендеринга.
Как администраторы могут защитить self-managed инстанс GitLab?
Обновитесь до исправленного релиза GitLab как можно скорее; в уведомлении указаны исправленные версии для всех поддерживаемых веток релизов.
Был ли затронут GitLab.com?
GitLab сообщил, что GitLab.com и GitLab Dedicated были пропатчены до публичного раскрытия информации. Администраторы self-managed инстансов должны самостоятельно применить обновления.

