Китай почав блокувати HTTPS-з'єднання, що встановлюються з TLS 1.3 та ESNI

Китай впровадив блокування всіх HTTPS-з'єднань, у яких використовується протокол TLS 1.3 і TLS-розширення ESNI (Encrypted Server Name Indication), що забезпечує шифрування даних про запит хості. Блокування здійснюється на транзитних маршрутизаторах як для з'єднань, що встановлюються з Китаю до зовнішнього світу, так і із зовнішнього світу до Китаю.

Для блокування виконується відкидання пакетів від клієнта до сервера, а не підстановка пакетів з прапором RST, яка раніше виконувалася під час вибіркового блокування вмісту SNI. Після спрацювання блокування пакета з ESNI протягом від 120 до 180 секунд також блокуються всі мережеві пакети, що відповідають зв'язці з вихідного IP, цільового IP та номера порту призначення. HTTPS-з'єднання на основі старих версій TLS та TLS 1.3 без ESNI пропускаються як завжди.

Нагадаємо, що для організації роботи на одній IP-адресі кількох HTTPS-сайтів було розроблено розширення SNI, яке здійснює передачу імені хоста у відкритому вигляді у повідомленні ClientHello, що передається до встановлення шифрованого каналу зв'язку. Подібна особливість дає можливість на стороні інтернет-провайдера вибірково фільтрувати HTTPS-трафік та аналізувати які сайти відкриває користувач, що не дозволяє досягти повної конфіденційності при застосуванні HTTPS.

Нове TLS-розширення ECH (раніше ESNI), яке може застосовуватися спільно з TLS 1.3, усуває цей недолік і повністю виключає виток інформації про запитуваний сайт при аналізі HTTPS-з'єднань. У поєднанні із зверненням через мережу доставки контенту застосування ECH/ESNI також дає можливість приховати від провайдера та IP-адресу запитуваного ресурсу. Системи інспектування трафіку бачитимуть лише звернення до CDN і не зможуть застосувати блокування без заміни TLS-сеансу, у разі якого у браузері користувача буде показано відповідне повідомлення про заміну сертифіката. Можливим каналом витоку залишається DNS, але приховування звернення до DNS клієнтом може застосовуватися DNS-over-HTTPS чи DNS-over-TLS.

Дослідники вже виявили декілька обхідних шляхів для обходу китайського блокування на стороні клієнта та сервера, але вони можуть втратити актуальність і їх слід розглядати лише як тимчасовий захід. Наприклад, в даний час блокуються тільки пакети з ідентифікатором розширення ESNI 0xffce (encrypted_server_name), який використовувався в п'ятої версії чернетки стандарту, але поки що пропускаються пакети з актуальним ідентифікатором 0xff02 (encrypted_client_hello), запропонованим у сьомому чернетці специфікації ECH.

Іншим варіантом обходу є використання нестандартного процесу узгодження з'єднання, наприклад, блокування не спрацьовує при попередньому відправленні додаткового SYN-пакету з невірним номером послідовності, маніпуляціями з прапорами фрагментування пакетів, відправленні пакета з одночасно виставленими прапорами FIN та SYN, підстановці RST-пакету з некоректною контрольною сумою або надсиланням до початку узгодження з'єднання пакета з прапорами SYN і ACK. Описані методи вже реалізовані у формі плагіна до інструментарію Женева, розвивається для обходу методів цензурування.

Джерело: opennet.ru

Додати коментар або відгук