VMTech
Обсудить проект →

Go заблокировал восемь ключей CA в экстренных обновлениях

Go заблокировал восемь ключей CA в экстренных обновлениях

Команда Go 20 октября выпустила версии Go 1.27.3 и Go 1.26.10, которые отклоняют цепочки сертификатов, проходящие через восемь промежуточных ключей центров сертификации. Обновление проведено по процедуре URGENT: разработчики сослались на «конкретные проблемы безопасности» в работе неназванного CA и рекомендовали установить новые версии без промедления.

Какие сертификаты перестанут проходить проверку

В релизе опубликованы только SHA-256-хеши восьми открытых ключей. Один из участников обсуждения Go сопоставил их с данными сертификатных записей и связал ключи с промежуточными центрами eMudhra, работающими под брендом emSign. Независимой проверки этого сопоставления в исходной публикации не приводится.

Согласно этому сопоставлению, шесть ключей относятся к TLS-промежуточным центрам EM DV TLS CA - G3B и G3C, EM OV TLS CA - G3B и G3C, EM EV TLS CA - G3B и G3C. Ещё два — EM OV CS CA - G3B и G3C — предназначены для подписи кода. Mozilla 17 октября добавила шесть промежуточных сертификатов, выпущенных emSign Root TLS CA - G3, в свой список блокировки OneCRL. Причины этого решения Mozilla публично не раскрывала.

Как работает блокировка в Go

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

Проверка включена как во встроенный валидатор Go, так и в ветки для macOS и Windows, где подтверждение цепочки передаётся операционной системе. При блокировке приложение получает ошибку x509: no valid chains built. Отключить фильтр параметром нельзя.

Судя по устройству изменения, оно действует и в случаях, когда приложение задаёт собственный набор доверенных корневых сертификатов. Значит, частная инфраструктура, намеренно доверяющая одному из этих промежуточных ключей, также может столкнуться с отказом проверки. Команда Go не уточнила, является ли это ожидаемым поведением.

Почему обновление требует пересборки

Документация Go предупреждает, что его валидатор не выполняет проверку отзыва сертификатов и не использует браузерные списки блокировки. Поэтому запрет ключей доставляется вместе с релизом языка: программа начнёт применять новые правила только после сборки с Go 1.27.3 или Go 1.26.10.

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

Что проверить компаниям

Командам эксплуатации стоит обновить поддерживаемые версии Go в сборочных контурах, пересобрать сервисы и проверить цепочки TLS-сертификатов внешних и внутренних точек подключения. Владельцам сервисов важно выяснить у поставщика сертификатов, не используются ли перечисленные промежуточные центры. Это позволит заменить сертификат до того, как обновлённые Go-клиенты начнут отклонять соединения.

#golang#certificates#security#pkisecurity
Открытая аналитика
На сайте 2 просмотров
мин чтения 3 20.10.2026
Instagram

Go заблокировал восемь ключей CA в экстренных обновлениях

Открыть публикацию в Instagram ↗