Критический недостаток GitLab (CVSS 10.0) может позволить неаутентифицированный RCE на протяжении 12 лет релизов

GitLab выпустил исправления 21 октября для уязвимости, позволяющей злоумышленнику запускать код на самоуправляемом сервере без входа в систему, и это затрагивает все версии программного обеспечения, начиная с версии 7.0, выпущенной в 2014 году. Исправление важно даже для администраторов, которые сделали патч девять дней назад: обновление от 12 октября охватило только версии 19.2 и выше, а

GitLab выпустил исправления 21 октября для уязвимости, позволяющей злоумышленнику запускать код на самоуправляемом сервере без входа в систему, и это затрагивает все версии программного обеспечения, начиная с версии 7.0, выпущенной в 2014 году.

Исправление важно даже для администраторов, которые сделали патч девять дней назад: обновление от 12 октября охватило только версии 19.2 и выше, а новые исправленные версии находятся на патч выше, так что обновлённый экземпляр снова находится в зоне досягаемости.

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

GitLab не уточнил, что это за условия. Компания сообщает, что нет признаков использования этого дефекта в атаках, и по состоянию на 22 октября он не включён в каталог известных уязвимостей CISA США.

Должны действовать только самоуправляемые установки. GitLab.com уже запускает фиксированную версию, а выделенные арендаторы GitLab на внутренних релизах 19.3.5-internal0 и 19.4.2-internal0 или более поздние уже имеют исправление.

GitLab исправил этот недостаток в семи версиях одновременно.

В таблице ниже каждая ветвь релиза сочетается с версией, которая это исправляет.

Если ты апгрейдишьсяОбновление до
19.5 до 19.5.119.5.1
19.4 до 19.4.319.4.3
19.3 до 19.3.619.3.6
19.2 до 19.2.919.2.9
19.1 до 19.1.919.1.9
19.0 до 19.0.1019.0.10
7.0 по 18.11, до 18.11.1318.11.13

Четыре из этих версий старше обычных патчей GitLab. Политика компании охватывает текущий релиз и два предыдущих ежемесячных релиза, которые на сегодняшний день составляют 19.5, 19.4 и 19.3.

GitLab сообщил, что перенёс это исправление на версии 18.11.13, 19.0.10, 19.1.9 и 19.2.9 поверх стандартных релизов — шаг, который он резервирует для серьёзных проблем.

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

GitLab также опубликовал два правила обнаружения, помогающие самоуправляемым администраторам искать попытки эксплуатации, названные «Onigmo native worker crash» и «Burst error render mode Org». Они являются частью открытого фреймворка TLDR компании, которая записывает каждое обнаружение в формате Sigma на базе собственных журналов приложений GitLab.

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

Это четвёртый недостаток при выполнении кода в движке регулярных выражений GitLab, который тот же исследователь с именем joaxcar сообщил за месяц, и первый, достигший версий до 19.2.

12 октября GitLab исправил CVE-2026-97229, также неаутентифицированный переполнение 10.0 в компиляторе регулярных выражений в версиях 19.2.8, 19.3.5 и 19.4.2. 23 сентября были исправлены ещё два — CVE-2026-93577 и CVE-2026-89078, оба с рейтингом 9.9, но требующими входа в аккаунт. Три предыдущих недостатка прекратились на версии 19.2; Этот — нет.

Релиз от 21 октября исправляет 11 проблем с безопасностью: одна критичная, остальные — высокая, средняя или низкая.

Два других касаются аутентификации. CVE-2026-15723, с высоким рейтингом 8.2, мог позволить войдённому пользователю взять под контроль другой аккаунт, но только если администратор включил автосвязь SAML и LDAP.

Недостаток отравления кэша в конечных точках GITLAB OAuth и OpenID Connect, CVE-2026-112212, с высоким рейтингом 7.5, может позволить злоумышленнику перенаправить определённые потоки входа на контролируемый им сервер в настройках с использованием общего кэша.

Улучшение требует затрат, которые стоит запланировать. Версии версий 19.4.3 и 19.3.6 включают изменения в базу данных, которые выполняются во время обновления, а на сервере с одним узлом это означает простои во время их завершения. GitLab утверждает, что многоузловые настройки могут применять патч без простоев, используя процедуру нулевой простоя.

Сообщество

Продолжите обсуждение на форуме

Перейти на форум