В GitLab нашли уязвимость с уровнем опасности 10 из 10: удалённое выполнение кода без аутентификации
Компания GitLab выпустила внеплановые корректирующие обновления платформы для совместной разработки. Патчи доступны в трёх поддерживаемых ветках — 19.4.2, 19.3.4 и 19.2.8. Всего они закрывают 24 уязвимости различной степени опасности, но одна из них выделяется на общем фоне.
Речь идёт об уязвимости, получившей идентификатор CVE-2026-97229. Эксперты присвоили ей максимально возможный уровень угрозы по шкале CVSS — 10 баллов из 10. Её эксплуатация позволяет удалённому злоумышленнику, не имеющему учётной записи, выполнить произвольный код на сервере.

Корень проблемы кроется в целочисленном переполнении, возникающем при компиляции регулярных выражений. Злоумышленник может подготовить специальное регулярное выражение и внедрить его в конфигурацию CI/CD, например, через вредоносный Merge Request или шаблон конвейера. Обработка такого выражения приводит к переполнению буфера и последующему выполнению кода.
Особенность атаки в том, что она не требует аутентификации. Атакующему достаточно иметь возможность влиять на настройки CI/CD, что делает публичные репозитории с открытой настройкой конвейеров крайне уязвимыми. Учитывая критичность проблемы, разработчики GitLab настойчиво рекомендуют всем администраторам незамедлительно установить обновления.
Промедление может привести к полной компрометации сервера, краже исходного кода и конфиденциальных данных. GitLab используют миллионы разработчиков по всему миру, от небольших стартапов до крупных корпораций. Уязвимость с рейтингом 10.0 в такой платформе — событие, требующее немедленного реагирования, так как компрометация сервера сборки может скомпрометировать всю цепочку поставки программного обеспечения.
Подробные технические детали уязвимости пока не раскрыты. Согласно стандартной политике ответственного разглашения, GitLab планирует опубликовать полный отчёт через 30 дней после выхода исправлений. Этот срок отведён на то, чтобы большинство пользователей успели обезопасить свои системы.
Сведения о CVE-2026-97229 были переданы компании через программу вознаграждения за обнаружение ошибок (Bug Bounty), действующую на платформе HackerOne. Имя исследователя, нашедшего брешь, не называется. Любопытно, что почти одновременно с исправлением в GitLab похожая уязвимость была устранена в библиотеке libpcre2, которая также используется для обработки регулярных выражений.
Однако там механизм эксплуатации отличался и не был связан с целочисленным переполнением. Совпадение напоминает о том, насколько распространены ошибки в подсистемах работы с регулярными выражениями. Случившееся продолжает серию серьёзных инцидентов в сфере безопасности открытого программного обеспечения.
Буквально на прошлой неделе сообщалось о лавине критических уязвимостей, затронувших Apache, FreeBSD, ядро Linux и десятки других ключевых проектов Лавина опасных уязвимостей накрыла Apache, FreeBSD, ядро Linux и десятки ключевых проектов. Пользователям рекомендуется не ограничиваться обновлением GitLab и провести ревизию всего используемого программного стека. Особое внимание стоит уделить тем организациям, которые используют GitLab CI/CD с шаблонами от сторонних разработчиков или автоматически запускают конвейеры из незащищённых веток.
Даже после установки патча разумно пересмотреть политики безопасности и ограничить возможности по изменению конфигурации CI/CD для непривилегированных участников.