Совсем недавно веб-сайты с Let's Encrypt (225 миллионов доменов) рисковали остаться без трафика с устройств на старых версиях Android (34% от всех девайсов). По заявлениям Let's Encrypt они нашли выход из ситуации и IdenTrust выпустил для них новый трехлетний перекрестный знак для корня ISRG X1 со своего корневого центра сертификации DST X3. Но действительно ли владельцам сайтов с Let's Encrypt можно расслабиться?


Истекающий срок действия корневого сертификата Let's Encrypt означает, что каждое третье устройство Android (более 34% устройств используют версии 7.1.1 и ниже) будет заблокировано с миллионов сайтов, защищенных системой Let's Encrypt.


Данная проблема – результат того, что Let's Encrypt больше не использует перекрестную подпись со сторонним корневым сертификатом. Из-за этого посетители веб-сайтов на старых версиях Android будут заблокированы от доступа к сайтам, защищенным с помощью Let's Encrypt.



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


Что именно привело к такому повороту событий? Кого могут коснутся изменение? Что могут сделать владельцы сайтов, чтобы минимизировать ущерб?


Предыстория проблемы


Корни проблемы исходят из 2015 года, когда компания Let’s Encrypt была основана группой Internet Security Research Group (ISRG) и их партнерами. Поскольку могут потребоваться годы на то, чтобы все ОС и браузеры начали доверять их собственному сертификату, они подписали свои сертификаты перекрестно с доверенным корнем существующего ЦС (IdenTrust и их сертификатом DST Root X3), что является типичным поведением для новых центров сертификации.


Это позволило Let’s Encrypt немедленно начать выпуск сертификатов, которым можно было бы доверять в Интернете. Но перенесемся в наши дни: IdenTrust DST Root X3 приближается к дате истечения срока действия 30 сентября 2021 года.


Let's Encrypt попыталась подготовиться к истечению срока действия, выпустив собственный корневой сертификат ISRG Root X1. К сожалению, у него пока нет того всеобъемлющего доверия, которое было у их корня IdenTrust, поэтому пользователи на некоторых старых платформах будут заблокированы от доступа к любому веб-сайту, который использует сертификат Let's Encrypt SSL/TLS.


Кто именно пострадает?


Пользователи старых версий Android


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


Стоит уточнить, что основная проблема появилась не по вине Let's Encrypt, а в медленном обновлении ПО для многих платформ.


Почему устройства на Android не обновляются?


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


Java


Старые версии Java также подвержены изменению корневого каталога. Любые клиенты, использующие версии Java до 1.8.0_141-b15, будут получать предупреждения или ошибки при обнаружении сертификатов Let’s Encrypt.


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


Решение проблемы: два сертификата вместо одного


IdenTrust согласился выпустить трехлетний перекрестный знак для ISRG X1. Новый перекрестный знак немного необычный, так как действует после истечения срока действия DST Root CA X3. Это решение работает, потому что Android намеренно не устанавливает даты истечения срока действия сертификатов, используемых в качестве якорей доверия. Таким образом, Let’s Encrypt собирается предоставить своим подписчикам цепочку, содержащую как ISRG Root X1, так и DST Root CA X3, обеспечивая бесперебойное обслуживание всех пользователей и избегая потенциальных сбоев.



Ранее запланированное на 11 января переключение цепочки не состоялось, а переход на новую цепочку будет произведен в начале февраля. Тем не менее, во избежание возможных проблем совместимостью можно использовать следующие рекомендации:


Предложить посетителям обновить Android


Как вариант можно предупредить посетителей со старыми версиями Android о том, что нужно обновить их перед использованием вашего сайта, но:


  • Пользователь – существо ленивое, а просьба обновить Android может привести к тому, что посетитель уйдет на другой сайт.
  • Android обычно не обновляют не потому, что не хотят, а потому что не могут. Например, планшет или телефон не поддерживает новые версии, а просить пользователя купить новый девайс явно перебор.

Предложить использовать Firefox Mobile


Firefox Mobile полагается на собственный (регулярно обновляемый) список корневых сертификатов, а не на список операционных систем. Но заставить пользователя перейти на другой браузер, пожалуй, сложнее, чем заставить его обновиться.


Прекратить поддержку более старых версий


Можно прекратить поддержку более старых версий, но это может привести к:


  • Сокращению трафика
  • Увеличения запросов в службу поддержки

Владельцы сайтов на ACME


Владельцы сайтов, использующие ACME, могут изменить настройки своих клиентов, чтобы продолжать использовать сертификаты Let's Encrypt с перекрестной подписью. Однако это будет работать только до сентября 2021 года. Тем не менее, это поможет выиграть время, чтобы разработать долгосрочное решение.


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


image