Mozilla, Cloudflare и Facebook представили TLS-расширение для делегирования короткоживущих сертификатов

Mozilla, Cloudflare и Facebook совместно анонсировали новое TLS-расширение Delegated Credentials (DC), решающее проблему c сертификатами при организации доступа к сайту через сети доставки контента. Выдаваемые удостоверяющими центрами сертификаты имеют длительный срок действия, что создаёт трудности при необходимости организации доступа к сайту через сторонний сервис, от лица которого должно устанавливаться защищённое соединение, так как передача сертификата сайта внешнему сервису создаёт дополнительные угрозы безопасности.

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

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

Предложенное TLS-расширение Delegated Credentials вводит в обиход дополнительный промежуточных закрытый ключ, время действия которого ограничено часами или несколькими днями (не больше 7 дней). Данный ключ генерируется на основе выданного удостоверяющим центром сертификата и позволяет сохранить закрытый ключ исходного сертификата в тайне от сервисов доставки контента, предоставив им только временный сертификат с коротким временем жизни.

0_1572676279.png

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

0_1572679482.jpg

Поддерживающие TLS-расширение Delegated Credentials браузеры будут воспринимать подобные производные сертификаты как заслуживающие доверия. Например, поддержка указанного расширения уже добавлена в ночные сборки и бета-версии Firefox и может быть активирована в about: config через изменение настойки «security.tls.enable_delegated_credentials». В середине ноября среди определённого процента пользователей тестовых версий Firefox также планируется провести эксперимент «TLS Delegated Credentials Experiment», в рамках которого для проверки качества реализации нового TLS-расширения будет отправлен тестовый запрос на DC-сервер Cloudflare. Поддержка Delegated Credentials также уже встроена в библиотеку Fizz с реализацией TLS 1.3.

Спецификация Delegated Credentials передана в комитет IETF (Internet Engineering Task Force), занимающийся развитием протоколов и архитектуры Интернет, и находится на стадии черновика, претендующего на звание интернет-стандарта. Расширение Delegated Credentials может применяться только с TLSv1.3. Для генерации промежуточных ключей требуется получение TLS-сертификата, включающего специальное расширение X.509, которое пока поддерживается только удостоверяющим центром DigiCert.

Источник: http://www.opennet.ru/opennews/art.shtml? num=51797

©  OpenNet