Google заблокировала сертификаты eMudhra: из-за ошибки генерации ключей можно было подделывать HTTPS-сертификаты

У удостоверяющего центра eMudhra обнаружили проблему с генерацией криптографических ключей. Закрытые ключи восьми промежуточных сертификатов оказались скомпрометированы из-за недостаточной случайности при их создании. Это потенциально позволяло выпускать поддельные HTTPS-сертификаты для любых сайтов и выдавать себя за их владельцев.

20 октября Google сообщила о принятых мерах защиты Chrome и Android. Браузер уже блокирует скомпрометированные ключи, а на 27 октября запланировано распространение обновлённого хранилища доверенных корневых сертификатов.

Что произошло

17 октября в 18:05 UTC исследователь безопасности сообщил команде Chrome Root Program о компрометации закрытых ключей восьми промежуточных сертификатов удостоверяющего центра eMudhra.

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

Проблема серьёзная: промежуточные удостоверяющие центры используются для выпуска сертификатов, доверие к которым подтверждается цепочкой до корневого УЦ. Если злоумышленник получает закрытый ключ такого центра, он может создавать сертификаты для чужих доменов. На клиентах, которые продолжают доверять скомпрометированному УЦ, это открывает возможность подменять сайты и перехватывать HTTPS-соединения.

Из восьми затронутых промежуточных сертификатов шесть предназначались для выпуска TLS-сертификатов, ещё два — для подписи кода.

Как защитили Chrome и Android

Google проверила сообщение исследователя и уже к 19:45 UTC 17 октября подготовила обновление CRLSet — механизма блокировки отозванных сертификатов в Chrome.

Блокировка работает по хешам открытых ключей SPKI (Subject Public Key Info). Это позволяет отклонять любые сертификаты, использующие скомпрометированные ключи, даже если один и тот же ключ встречается в нескольких сертификатах. Пользователям Chrome не потребовалось вручную обновлять или перезапускать браузер: защита распространяется автоматически.

19 октября около 22:00 UTC аналогичное обновление через Google Play Services получили устройства Android. По данным Google, большинство устройств уже защищены. Для принудительного получения обновления можно перезагрузить устройство.

Почему поддельные сертификаты не сработали в Chrome

Дополнительную защиту обеспечил механизм Certificate Transparency (CT) — публичные журналы, в которых фиксируется выпуск TLS-сертификатов.

Google установила, что до блокировки скомпрометированных удостоверяющих центров в журналах CT не было зарегистрировано TLS-сертификатов, выпущенных через эти шесть промежуточных УЦ.

Это означает, что поддельные сертификаты не могли пройти проверку у клиентов, требующих соблюдения Certificate Transparency. В Chrome такая проверка по умолчанию обязательна для публично доверенных сертификатов.

На Android она также действует для приложений, ориентированных на последнюю версию SDK, и для приложений, разработчики которых включили её самостоятельно. При этом отсутствие записей в CT не исключает рисков для других клиентов, которые не требуют регистрации сертификатов в этих журналах.

Что теперь делать владельцам сайтов

Одной блокировкой промежуточных сертификатов Google решила не ограничиваться. Компания исключила корневой сертификат emSign ECC Root CA — G3 из Chrome Root Store — хранилища доверенных корневых сертификатов браузера.

Распространение этого изменения на все устройства, использующие Chrome Root Store, запланировано на утро 27 октября по тихоокеанскому времени США. В предварительных версиях Chrome Canary и Chrome Beta оно появится раньше.

Последствия затронут и легитимные сертификаты. Сайты, у которых цепочка доверия ведёт к emSign ECC Root CA — G3, могут перестать открываться в Chrome из-за ошибок проверки сертификата.

Google рекомендует их владельцам как можно скорее получить и установить новый TLS-сертификат с цепочкой доверия к другому корневому УЦ из Chrome Root Store. eMudhra пообещала помочь затронутым клиентам с переходом.

Google также проверила остальные ключи в своих корневых хранилищах и не обнаружила аналогичных проблем с недостаточной случайностью. Компания взаимодействует с другими разработчиками браузеров и сопровождающими хранилищ сертификатов, а также добилась блокировки сертификатов от скомпрометированных УЦ в журналах CT.

Расследование продолжается. Chrome Root Program отдельно рассматривает вопрос о том, следует ли сохранять доверие к остальным сертификатам eMudhra.

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

  • 5 ноября в 20:00. «Как построить SIEM-мониторинг без слепых зон: от сценария атаки до источников событий». Записаться

Больше бесплатных обучающих материалов по инфраструктуре смотрите в дайджесте.

Источник: habr.com

0 0 голоса
Рейтинг новости
1
0
Подписаться
Уведомить о
0 комментариев