GitLab больше не доверяет сертификатам удостоверяющего центра eMudhra

GitLab

GitLab исключила из поставляемых хранилищ доверия восемь промежуточных сертификатов удостоверяющего центра eMudhra: их закрытые ключи скомпрометированы. Промежуточный сертификат связывает корневой сертификат с сертификатом конкретной службы, поэтому владение его ключом позволяет выпускать сертификаты от имени доверенного центра. Пока такие сертификаты оставались в хранилищах, проверка цепочки могла принять выпущенный ими сертификат за законный. Затронуты самоподдерживаемые установки GitLab Community Edition и Enterprise Edition, а также отдельно устанавливаемые GitLab Runner и AI Gateway: они проверяют сертификаты сами.

CVE-2026-111943 и исправленные версии продуктов GitLab

Компрометация ключей eMudhra стала публичной: компания опубликовала разбор инцидента, и GitLab сослалась на него в бюллетене безопасности от 29 октября 2026 года. В том же выпуске собраны несвязанные исправления ошибок, а снятие доверия получило идентификатор CVE-2026-111943. GitLab.com уже работает на исправленной версии. Арендаторам GitLab Dedicated на версии 19.4.3-internal0 и новее делать ничего не нужно. Остальным самоподдерживаемым установкам GitLab советует перейти на новые версии.

Оценка CISA-ADP по CVSS 3.1 - 6,8 из 10, уровень Medium. Атака идёт по сети, отличается высокой сложностью и требует участия пользователя; учётные данные не нужны. Влияние на конфиденциальность и целостность высокое, на доступность влияния нет. Признаков эксплуатации в реальных атаках нет: в SSVC (методика CISA для оценки эксплуатации уязвимостей) указано отсутствие эксплуатации и невозможность автоматизации. Класс слабости - CWE-299, некорректная проверка отзыва сертификата: недоверенный сертификат проходит проверку вместо отказа.

Ключ промежуточного центра позволяет выпустить сертификат на любое имя. Если проверяющая сторона принимает такую цепочку, подменённый узел не вызывает ошибки проверки, и соединение выглядит доверенным. Для срабатывания нужны подходящие условия и действие со стороны пользователя - отсюда высокая сложность и обязательное участие пользователя в оценке. Именно такой обход политики безопасности исправление и закрывает.

Механику исправления в записи CVE показывают на примере стандартной библиотеки языка Go, которая проверяет сертификаты. В неё добавили список запрета: если проверяемый промежуточный сертификат в него входит, проверка завершается ошибкой. Причина в том, что системные хранилища доверия обновляются не на всех платформах, поэтому обновления корневых сертификатов в операционной системе может не хватить. GitLab поставляет собственные хранилища доверия, так что менять их приходится вместе с продуктом.

Исправление вышло в GitLab CE и EE версий 18.11.14, 19.0.11, 19.1.10, 19.2.10, 19.3.7, 19.4.5 и 19.5.3. GitLab Runner обновляется отдельно, до версии 19.5.1: обновление самого GitLab его не затрагивает. Для AI Gateway исправлены версии 18.11.8, 19.0.13, 19.1.9, 19.2.5, 19.3.3, 19.4.3 и 19.5.3. Если образы заданий CI/CD содержат собственный набор корневых сертификатов, их нужно пересобрать.

Обходных мер GitLab не приводит, и в записи CVE они не указаны. Запись CVE-2026-111943 опубликована 21 октября и обновлена 30 октября 2026 года; в качестве затронутого продукта она называет стандартную библиотеку Go, а исправленную версию не приводит. Поэтому номера исправлений администратору нужно брать из бюллетеня GitLab от 29 октября 2026 года. Частичное обновление оставляет старые хранилища доверия в работе, то есть обновлять нужно все компоненты, включая Runner и AI Gateway.

Значимость зависит от того, сколько установок до сих пор считает сертификаты eMudhra доверенными. После обновления цепочка, построенная на скомпрометированном промежуточном сертификате, проверку не проходит. За дальнейшими изменениями удобно следить по записи CVE и бюллетеню: статус проверки может уточняться.

Ссылки

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