GitLab устранил 13 уязвимостей, включая XSS с оценкой 8,7 по CVSS

GitLab

GitLab выпустила внеочередные патчи для Community Edition и Enterprise Edition, закрыв тринадцать уязвимостей, многие из которых позволяют удалённому атакующему организовать кражу данных, подмену содержимого, межсайтовый скриптинг (XSS) или обход механизмов безопасности. Наибольшую опасность представляют две проблемы межсайтового скриптинга, получившие высокие баллы по шкале CVSS - 8,7 и 8,0. Исправления включены в версии 19.1.1, 19.0.3 и 18.11.6 для обеих редакций продукта.

Детали уязвимостей

Самый серьёзный дефект (CVE-2026-10086, оценка 8,7) затрагивает аналитическую панель GitLab EE. Аутентифицированный пользователь с правами разработчика мог выполнить произвольный клиентский код в контексте сессии другой жертвы из-за некорректной санитизации вводимых данных. Речь идёт о хранимом XSS: вредоносный скрипт сохраняется на сервере и срабатывает при просмотре панели другим участником команды. Уязвимость присутствует во всех EE-версиях начиная с 16.4. Исследователь yvvdwf сообщил о ней через программу bug bounty HackerOne.

Второй скриптинговый дефект (CVE-2026-10712, оценка 8,0) относится к обработчику ресурсов в Web IDE. Неаутентифицированный злоумышленник мог внедрить произвольный JavaScript в браузерную сессию пользователя - для этого потребовалось бы заставить жертву открыть специально сформированную ссылку или страницу. Причина - некорректная проверка пути к файлам в среде разработки. Уязвимость обнаружена исследователем joaxcar и затрагивает как CE, так и EE (все версии с 18.10). Оба скриптинговых дефекта не позволяют напрямую повредить данные на сервере, но в случае эксплуатации открывают доступ к сессионным токенам, личной переписке и действиям от имени пострадавшего.

Среди прочих нарушений выделяется проблема раскрытия конфиденциальной информации в Duo Workflows (CVE-2026-12053, оценка 7,7). Из-за недостаточной фильтрации вывода пользователь, имеющий доступ к проекту, мог прочитать данные, которые уже были закоммичены, но не предназначались для публичного просмотра. Уязвимость относится только к версии 19.1 GitLab EE и была обнаружена силами участника HackerOne 3nvz и инженера компании Dennis Appelt.

Обход авторизации в API политик очистки виртуального реестра (CVE-2026-5309, оценка 5,4) позволял аутентифицированному пользователю без дополнительных прав читать или изменять настройки другой группы. Проблема затрагивает GitLab EE и была найдена исследователем go7f0. Ещё один дефект авторизации (CVE-2026-2238, оценка 5,3) обнаружен в механизме "Быстрые различия" (Rapid Diffs): неаутентифицированный посетитель публичного проекта мог увидеть ссылки на конфиденциальные тикеты из-за отсутствия проверки прав. Исследователь modhanami сообщил о нём через HackerOne.

Некорректная авторизация в управлении профилями DAST-сканера (CVE-2026-11379, оценка 5,3) позволяла пользователю с ролью "Разработчик" при определённых условиях извлечь секреты профиля тестирования безопасности. Данный дефект присутствует в GitLab EE начиная с версии 13.11 и был выявлен внутренней командой GitLab. К разряду утечек относится и недостаточная фильтрация в CI/CD API (CVE-2026-8330, оценка 4,4) - из-за неё конфиденциальные данные могли записываться в логи приложения. Проблема существует начиная с версии 9.3 и была обнаружена сотрудником компании Joel Clarke.

Ряд уязвимостей средней степени тяжести связаны с манипуляцией содержимым. Так, в сниппетах (CVE-2026-1606, оценка 4,3) аутентифицированный пользователь мог скрыть часть содержимого фрагмента кода, что позволяет вводить в заблуждение других разработчиков. В Maven-репозитории (CVE-2026-5952, оценка 4,3) разработчик мог обойти правила защиты пакетов и перезаписать метаданные защищённых артефактов. Оба дефекта исправлены в свежих сборках.

Дополнительные проблемы контроля доступа обнаружены в API групповых пакетов (CVE-2026-5796, оценка 4,3) - пользователь с правами Репортёра мог просматривать метаданные пакетов из проектов, где реестр пакетов отключён. В API защищённых окружений (CVE-2026-0934, оценка 3,8) аутентифицированный с пользовательской ролью мог создавать, удалять или просматривать конфигурации, несмотря на отключённую видимость CI/CD. Утечка информации о проектах через панель безопасности (CVE-2026-3176, оценка 3,1) также исправлена - она позволяла пользователю с ограниченными правами получать данные, не предназначенные для его роли.

Наконец, подделка запроса на стороне сервера (SSRF) при зеркалировании репозиториев (CVE-2026-12635, оценка 3,1) давала возможность мейнтейнеру отправлять HTTP-запросы к внутренним ресурсам сети из-за неполной проверки URL. Уязвимость существует с версии 8.3 и была выявлена сотрудником GitLab Félix Veillette-Potvin. Хотя рейтинг низкий, в изолированных сетях SSRF может служить вектором для разведки внутренней инфраструктуры.

Разработчики рекомендуют администраторам как можно скорее обновить установки до указанных версий. Патчи доступны на официальном сайте. Временные меры защиты, такие как ограничение доступа к Web IDE, отключение Duo Workflows или сегментация сети, могут снизить риск эксплуатации, но полную безопасность обеспечивает только установка обновлений. Компания GitLab продолжает программу bug bounty HackerOne, в рамках которой было выявлено большинство описанных дефектов.

Ссылки

Комментарии: 0