Компания GitLab выпустила критическое обновление безопасности для своих продуктов Community Edition (CE) и Enterprise Edition (EE), устраняющее ряд уязвимостей, включая критическую брешь в системе непрерывной интеграции и доставки (CI/CD). Специалисты по кибербезопасности настоятельно рекомендуют незамедлительно установить обновления для защиты инфраструктуры разработки от атак.
Анализ критической уязвимости CVE-2024-6678
Наиболее серьезная уязвимость, обозначенная как CVE-2024-6678, получила критический рейтинг 9,9 из 10 по шкале CVSS. Эта брешь позволяет злоумышленникам запускать пайплайны CI/CD от имени любого пользователя системы, что может привести к несанкционированному выполнению кода и компрометации всей инфраструктуры разработки.
Критичность уязвимости обусловлена следующими факторами:
- возможность удаленной эксплуатации без физического доступа к системе;
- отсутствие необходимости взаимодействия с пользователем;
- низкий уровень привилегий, требуемых для использования уязвимости.
Затронутые версии и рекомендации по обновлению
Уязвимость CVE-2024-6678 затрагивает широкий спектр версий GitLab согласно официальному бюллетеню безопасности GitLab:
- CE/EE версии с 8.14 до 17.1.7;
- версии с 17.2 до 17.2.5;
- версии с 17.3 до 17.3.2.
Разработчики GitLab рекомендуют обновиться до следующих безопасных версий:
- 17.3.2;
- 17.2.5;
- 17.1.7.
Кто находится под угрозой
Уязвимость затрагивает все организации и разработчиков, использующих самостоятельно размещённые (self-hosted) инсталляции GitLab CE или EE с версией ниже исправленных релизов. Особую опасность ситуация представляет для:
- команд разработки, которые используют CI/CD пайплайны для автоматического деплоя в производственную среду;
- компаний с разграничением ролей в GitLab, где пайплайны запускаются от имени привилегированных пользователей;
- организаций с общим GitLab-инстансом для нескольких команд или клиентов (multi-tenant);
- пользователей GitLab.com (облачная версия была исправлена оперативно, но самостоятельные инсталляции требуют ручного обновления).
Значимость пайплайнов в CI/CD и потенциальные риски
Пайплайны GitLab являются ключевым компонентом системы CI/CD, автоматизируя процессы сборки, тестирования и развертывания кода. Компрометация этой системы может иметь серьезные последствия:
- внедрение вредоносного кода в производственные системы через скомпрометированные пайплайны;
- кража конфиденциальных данных и учетных данных, хранящихся в переменных CI/CD;
- нарушение целостности процесса разработки и цепочки поставок программного обеспечения.
История уязвимостей в системе пайплайнов GitLab
Это не первый случай обнаружения критических уязвимостей в системе пайплайнов GitLab. В июле 2024 года была устранена уязвимость CVE-2024-6385, а в июне — CVE-2024-5655. Это указывает на системные архитектурные проблемы в механизме авторизации запуска пайплайнов.
Дополнительные уязвимости и меры безопасности
Помимо CVE-2024-6678, в текущем обновлении устранены ещё несколько серьезных уязвимостей с оценками от 6,7 до 8,5 по шкале CVSS. Эти бреши потенциально позволяют злоумышленникам нарушать работу сервисов, выполнять несанкционированные команды и компрометировать важные ресурсы. После обновления рекомендуется провести аудит логов CI/CD за последние 30 дней на предмет нетипичных запусков пайплайнов от имени привилегированных пользователей, усилить политики защищённых веток и ограничить список пользователей, имеющих право запускать пайплайны вручную.