Поставщик сертификатов HTTPS Let’s Encrypt планирует отозвать около 2 млн SSL/TLS-сертификатов 28 января, поскольку они были выпущены ненадлежащим образом.
В сообщении на форуме инженер Let's Encrypt по надежности сайта Джиллиан Тесса объяснила, что во вторник третья сторона сообщила о «двух нарушениях» в коде, реализующем метод проверки «TLS с использованием ALPN» (BRs 3.2.2.4.20, RFC). 8737) в Boulder, программном обеспечении для автоматической среды управления сертификатами (ACME).
«Все активные сертификаты, которые были выпущены и проверены с помощью запроса TLS-ALPN-01 до 00:48 UTC 26 января 2022 года, когда было развернуто наше исправление, считаются неправильно выпущенными», — пояснила Тесса. — «В соответствии с Политикой сертификатов Let’s Encrypt у нас есть 5 дней на отзыв, и мы начнем отзывать сертификаты в 16:00 UTC (19:00 мск) 28 января 2022 года».
По оценкам Let’s Encrypt, затронуто менее 1% активных сертификатов; это 2 млн из 221 млн активных сертификатов, выпущенных Let's Encrypt.
Затронутые владельцы сертификатов будут уведомлены об отзыве по электронной почте, после чего им потребуется продление сертификата.
Это не исправление эксплойта. «Обновление типа запроса TLS-ALPN-01 было сделано в соответствии с базовыми требованиями, которые требуют использования TLS 1.2 или выше», — сообщил представитель Let’s Encrypt в комментарии The Register. При получении сертификата Let’s Encrypt серверы организации пытаются подтвердить, что владелец контролирует соответствующие ресурсы в соответствии со стандартом ACME. Эта задача может выполняться с использованием HTTP, DNS или TLS. Процесс напоминает отправку ссылки для подтверждения по электронной почте, чтобы завершить настройку учетной записи в Интернете.
TLS-ALPN-01 доступен для тех, кто не может или не хочет использовать порт 80 для HTTP-01. Согласно Let’s Encrypt, он «лучше всего подходит для авторов обратных прокси-серверов с завершением TLS, которые хотят выполнять проверку на основе хоста, например HTTP-01, но хотят делать это полностью на уровне TLS».
Разработчик Let’s Encrypt Аарон Гейбл сообщил в отдельном посте, что в проверочный код организации были внесены два изменения, затрагивающие клиентские приложения, которые специально используют TLS-ALPN-01. Во-первых, программное обеспечение теперь обеспечивает сетевое согласование с использованием TLS 1.2 или выше. Ранее код позволял подключаться через TLS 1.1, который теперь считается небезопасным.
Во-вторых, программное обеспечение больше не поддерживает устаревший OID (идентификатор объекта) 1.3.6.1.5.5.7.1.30.1, который служил для идентификации расширения «acmeIdentifier» в ранних версиях RFC 8737. Программное обеспечение Let's Encrypt теперь принимает только стандартизированный OID. 1.3.6.1.5.5.7.1.31.
Попытки проверки сертификата с использованием TLS 1.1 или OID, поддержка которого прекращена, завершатся ошибкой в исправленном программном обеспечении; эти сертификаты, проверенные через TLS-ALPN-01 под старым кодом, не соответствуют политике Let's Encrypt и поэтому должны быть выпущены повторно.
В сентябре 2021 года у Let’s Encrypt истек срок действия корневого сертификата IdentTrust DST Root CA X3. Некоторые старые устройства столкнулись с проблемами в работе.