Chiny wszystkich połączeń HTTPS, w których stosowany jest protokół TLS 1.3 oraz rozszerzenie TLS ESNI (Encrypted Server Name Indication) zapewniające szyfrowanie danych o żądanym hoście. Blokada odbywa się na routerach tranzytowych zarówno dla połączeń ustanawianych z Chin do świata zewnętrznego, jak i z świata zewnętrznego do Chin.
Dla blokady wykonywane jest odrzucanie pakietów od klienta do serwera, a nie wstawianie pakietów z flagą RST, co wcześniej było stosowane podczas selektywnej blokady według zawartości SNI. Po aktywacji blokady pakietu z ESNI przez 120 do 180 sekund blokowane są również wszystkie pakiety sieciowe odpowiadające parze z adresu IP źródłowego, docelowego adresu IP i numeru portu docelowego. Połączenia HTTPS oparte na starszych wersjach TLS oraz TLS 1.3 bez ESNI są przepuszczane jak zwykle.
Przypomnijmy, że w celu organizacji pracy na jednym adresie IP kilku stron HTTPS opracowano rozszerzenie SNI, które umożliwia przesyłanie nazwy hosta w jawny sposób w komunikacie ClientHello, przesyłanym przed nawiązaniem szyfrowanego kanału komunikacyjnego. Tego rodzaju właściwość umożliwia dostawcy internetowemu selektywną filtrację ruchu HTTPS oraz analizowanie, jakie strony otwiera użytkownik, co nie pozwala na osiągnięcie pełnej prywatności przy stosowaniu HTTPS.
Nowe rozszerzenie TLS ECH (wcześniej ESNI), które może być stosowane w połączeniu z TLS 1.3, eliminuje tę wadę i całkowicie wyklucza wyciek informacji o żądanej stronie podczas analizy połączeń HTTPS. W połączeniu z korzystaniem z sieci dostarczania treści stosowanie ECH/ESNI również umożliwia ukrycie przed dostawcą oraz adresu IP żądanego zasobu. Systemy inspekcji ruchu będą widziały jedynie zapytania do CDN i nie będą mogły zastosować blokady bez podmiany sesji TLS, w przypadku której użytkownikowi w przeglądarce zostanie wyświetlone odpowiednie powiadomienie o podmianie certyfikatu. Możliwym kanałem wycieku pozostaje DNS, jednak aby ukryć zapytania do DNS, klient może stosować DNS-over-HTTPS lub DNS-over-TLS.
Badacze już istnieją różne metody omijania chińskiej blokady zarówno po stronie klienta, jak i serwera, ale mogą one stracić na znaczeniu i należy je traktować jedynie jako tymczasowe rozwiązanie. Na przykład obecnie blokowane są tylko pakiety z identyfikatorem rozszerzenia ESNI 0xffce (encrypted_server_name), który był używany w , ale pakiety z aktualnym identyfikatorem 0xff02 (encrypted_client_hello), zaproponowanym w .
Inną opcją omijania jest wykorzystanie niestandardowego procesu negocjacji połączenia, na przykład blokada nie działa przy wstępnym wysyłaniu dodatkowego pakietu SYN z błędnym numerem sekwencyjnym, manipulacjach z flagami fragmentacji pakietów, wysyłaniu pakietu z jednocześnie ustawionymi flagami FIN i SYN, podstawieniu pakietu RST z nieprawidłową sumą kontrolną lub wysyłaniu pakietu z flagami SYN i ACK przed rozpoczęciem negocjacji połączenia. Opisane metody zostały już wdrożone w formie wtyczki do narzędzi , do omijania metod cenzury.
Źródło: opennet.ru
