Главная / Пресс-центр / Статьи

Статьи

2 декабря 2020

TLS 1.3 на веб-узлах Рунета

Автор статьи: Александр Венедюхин, ведущий аналитик ТЦИ


TLS 1.3 на веб-узлах Рунета


Введение

Версия 1.3 протокола TLS получила статус RFC 8446 в августе 2018 года, успев к этому моменту некоторое время поработать на многих узлах Интернета в формате эксперимента. TLS является одним из основных защищённых транспортов современной глобальной Сети. Основной объём защищаемого при помощи TLS трафика относится к вебу: это и страницы сайтов, и видеотрансляции. TLS широко используется и в других ситуациях, например, в качестве транспорта для каналов VPN или для защиты передаваемых сообщений в мессенджерах.

Сейчас уже можно сказать, что массовый переход к поддержке версии 1.3 произошёл очень быстро, особенно, если сравнивать этот процесс с «жизненным циклом» предыдущих версий: выход RFC TLS 1.3 от RFC предыдущей версии (1.2) отделяет десять лет, а широкое распространение новая версия получила менее, чем за пару лет.

TLS 1.3 существенно отличается от 1.2 (и, соответственно, всех предыдущих версий). Например, полностью изменён алгоритм установления соединения: за исключением первого шага, новый алгоритм несовместим с предыдущими версиями. Одно из самых существенных отличий состоит в том, что узлы переходят к защищённому обмену данными гораздо раньше, чем в 1.2, что позволяет скрыть от прослушивающей канал третьей стороны большой объём метаинформации (данных, которые позволяют косвенно судить о характеристиках защищённого соединения). Так, в TLS 1.3 серверные TLS-cертификаты уже на начальном этапе соединения передаются в зашифрованном виде. Кроме того, изменена логика аутентификации управляющих соединением сообщений, механизмы генерации сеансовых ключей и другие критически важные элементы протокола. TLS 1.3 является более современным, защищённым и «скрытным» (в смысле утечек метаинформации о соединении) протоколом. Как и прежде, протокол не скрывает сам факт установления TLS-соединения, но успешно снижает поток информации об особенностях конкретной сессии.

Предполагается, что в ближайшем будущем (через несколько лет) предыдущие версии TLS (1.0, 1.1) будут вытеснены современными, по крайней мере, из веба. То есть, версии TLS 1.2 и 1.3 должны стать основными для веб-сайтов. При этом для серверов, поддерживающих актуальные инструменты защиты информации, 1.3 должна стать версией по умолчанию, а 1.2 может потребоваться лишь для использования устаревшими клиентами.

В ноябре 2020 года версия 1.3 TLS поддерживается всеми распространёнными веб-браузерами и может быть настроена на подавляющем большинстве веб-серверов. Мы исследовали поддержку версии 1.3 веб-серверами Рунета.

Цель исследования

Целью настоящего исследования является количественная оценка распространённости узлов с корректно настроенным протоколом TLS версии 1.3 и валидным TLS-сертификатом среди всех доступных узлов TLS, адресуемых именами в зонах .RU, .SU, .РФ. Узлы исследуются в рамках сценария, характерного для обычных интернет-пользователей, а именно — с точки зрения доступа к веб-сайту при помощи браузера, то есть, HTTPS.

Методика

Исходная выборка узлов сформирована на основании списка делегированных доменных имён второго уровня в российских национальных зонах: .RU, .SU, .РФ. Для каждого имени делается попытка определить значение A-записи (IPv6 — в настоящем исследовании не используется), после чего выполняется опрос узлов по IP-адресам из полученного списка специальным TLS-ботом (не браузером).

Так как исследование проводится в разрезе HTTPS, бот пытается установить TLS-соединение, обращаясь по 443/tcp, с использованием соответствующего доменного имени в качестве имени сервера (SNI). При этом, для обнаружения поддержки TLS 1.3 бот отправляет начальное сообщение, указывая (в соответствующем расширении) версию 1.3 (0x0304).

Узел считается полностью поддерживающим TLS 1.3, если боту удалось получить серверные сертификаты в рамках сессии версии 1.3 и успешно валидировать хотя бы один сертификат, подходящий по имени. Со стороны сервера, согласно RFC 8446, требуется обязательная поддержка (хотя бы) шифра AES со 128-битным ключом в режиме GCM (AES_128_GCM_SHA256) и протокола ECDH в группе кривой NIST P-256 (secp256r1). Также определялся приоритет поддержки серверами шифронаборов из следующего списка:

  • AES_128_GCM_SHA256,
  • AES_256_GCM_SHA384,
  • CHACHA20_POLY1305_SHA256,
  • AES_128_CCM_SHA256,
  • AES_128_CCM_8_SHA256

Валидация сертификатов проводилась относительно списка корней, сходного со списком современной версии библиотеки NSS (используется, в частности, браузером Mozilla). Метод валидации отличается от валидации сертификатов браузером, но близок к последнему. Бот анализирует только TLS, каких-то HTTP-запросов не выполняется.

Дата исследования: октябрь-ноябрь 2020, данные приведены по состоянию на ноябрь (8-12 ноября).

Входные данные

Всего исследованных доменных имён (имена, для которых удалось получить A-запись)
.RU 3165422
.SU 62068
.РФ 413657


Результаты

  .RU .SU .РФ
Имена, указывающие на доступные TLS-узлы (поддерживается TLS версий 1.0, 1.1, 1.2, 1.3), количество 1551680 28773 145731
Уникальные имена, указывающие на узлы с поддержкой TLS 1.3, количество 954439 16942 80961
Доля узлов с поддержкой TLS 1.3, по именам, процент ~62% ~59% ~56%
Уникальные IP-адреса узлов с TLS 1.3, количество 117745 12771 20895
Рейтинг выбранных шифронаборов, по количеству IP-адресов узлов AES_128_GCM_SHA256 829895

AES_256_GCM_SHA384 548885

CHACHA20_POLY1305_SHA256 1005
AES_128_GCM_SHA256 14047

AES_256_GCM_SHA384 9933

CHACHA20_POLY1305_SHA256 22
AES_256_GCM_SHA384 60903

AES_128_GCM_SHA256 33343

CHACHA20_POLY1305_SHA256 59


Общий (.RU, .SU, .РФ) рейтинг AS по количеству IP-адресов узлов с поддержкой TLS 1.3, на которые указывают имена в исследованных зонах, с учётом валидности сертификатов и совпадения имени (десятка лидеров)

ASN Описание Количество IPv4-адресов, соответствующих
узлам Рунета с TLS 1.3 на 443/tcp
1 AS13335 CLOUDFLARENET – Cloudflare, Inc. 642462
2

AS198610 BEGET-AS 254437
3

AS197695 AS-REGRU 109017
4

AS47846 SEDO-AS (доменный паркинг) 86451
5

AS9123 TIMEWEB-AS 72762
6

AS15169 GOOGLE – Google LLC 47873
7

AS8342 RTCOMM-AS 40176
8

AS24940 HETZNER-AS 27973
9

AS60357 MEGAGROUP-AS 18003
10

AS57724 DDOS-GUARD 16650


Итоги и комментарии

TLS версии 1.3 является достаточно новой технологией. Тем не менее, по состоянию на ноябрь 2020 года существенная часть (более половины) веб-сайтов, доступных под именами второго уровня в российских национальных доменных зонах, уже полностью поддерживают новую версию TLS. Скорее всего, в ближайшие месяцы проникновение TLS 1.3 на веб-узлах Рунета возрастёт, так как технология поддерживается типовым ПО и на стороне клиента, и на стороне сервера.



Возврат к списку