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.1 | 19.5.1 |
| 19.4 до 19.4.3 | 19.4.3 |
| 19.3 до 19.3.6 | 19.3.6 |
| 19.2 до 19.2.9 | 19.2.9 |
| 19.1 до 19.1.9 | 19.1.9 |
| 19.0 до 19.0.10 | 19.0.10 |
| 7.0 по 18.11, до 18.11.13 | 18.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 утверждает, что многоузловые настройки могут применять патч без простоев, используя процедуру нулевой простоя.