W Firefox i Cloudflare włączono wsparcie ECH do ukrywania domen w ruchu HTTPS

Firma Mozilla ogłosiła dodanie w stabilnej wersji Firefox wsparcia dla mechanizmu ECH (Encrypted Client Hello), który kontynuuje rozwój technologii ESNI (Encrypted Server Name Indication) i ma na celu szyfrowanie informacji o parametrach sesji TLS, takich jak żądana nazwa domeny. Początkowo kod obsługi ECH został dodany w wersji Firefox 85, ale był domyślnie wyłączony. W Chrome wsparcie dla ECH zaczęto stopniowo włączać od wersji Chrome 115.

Ponieważ oprócz połączenia z serwerem wyciek informacji o żądanych domenach odbywa się również przez DNS, dla pełnej ochrony oprócz ECH konieczne jest zastosowanie technologii DNS over HTTPS lub DNS over TLS do szyfrowania ruchu DNS. Firefox nie będzie korzystał z ECH bez włączenia DNS over HTTPS w ustawieniach. Można sprawdzić wsparcie dla ECH w przeglądarce na tej stronie.

Jednym z czynników aktywacji domyślnego wsparcia ECH w Firefox było włączenie przez firmę Cloudflare wsparcia ECH w swojej sieci dostarczania treści kilka dni temu. Z praktycznego punktu widzenia, ponieważ dane o żądanych hostach przy użyciu ECH są ukryte przed analizą, do filtrowania i blokowania niepożądanych stron internetowych korzystających z CDN Cloudflare będzie teraz wymagana blokada całej sieci Cloudflare, blokada wszystkich żądań z ECH lub zorganizowanie przechwytywania HTTPS przy użyciu fałszywych certyfikatów root na systemie użytkownika.

Początkowo do organizacji pracy wielu witryn HTTPS na jednym adresie IP stosowano rozszerzenie TLS SNI, w którym nazwa żądanego hosta była wskazywana w wiadomości ClientHello, przesyłanej przed ustanowieniem zaszyfrowanego kanału komunikacyjnego. Tego rodzaju cecha umożliwiała na wczesnym etapie przetwarzania połączenia rozdzielanie żądań do wirtualnych hostów, ale także pozwalała po stronie dostawcy internetu na selektywne filtrowanie ruchu HTTPS i analizowanie, jakie strony otwiera użytkownik, co nie umożliwiało osiągnięcia pełnej prywatności przy użyciu HTTPS.

W celu rozwiązania tego problemu i wyeliminowania wycieków informacji o żądanej stronie zaproponowano rozszerzenie ESNI, które implementuje szyfrowanie danych zawierających nazwę hosta. W trakcie wdrażania ESNI zidentyfikowano, że zaproponowany mechanizm nie obejmuje wszystkich możliwych źródeł wycieków danych o hoście, a jego zastosowanie nie jest wystarczające do zapewnienia pełnej poufności sesji HTTPS. W szczególności przy wznawianiu wcześniej nawiązanej sesji nazwa domeny w otwartej postaci dalej była podawana wśród parametrów rozszerzenia TLS PSK (Pre-Shared Key). Ponadto próby wdrożenia ESNI ujawniły problemy z kompatybilnością i skalowalnością, które utrudniały jego powszechne wprowadzenie.

Z uwagi na zidentyfikowane wady ESNI opracowano nowy uniwersalny mechanizm ECH, który pozwala na szyfrowanie parametrów dowolnych rozszerzeń TLS. Technicznie główną różnicą ECH od ESNI jest to, że zamiast oddzielnych pól szyfrowane jest od razu całe wiadomość ClientHello. ECH zakłada podział ClientHello na dwie oddzielne wiadomości — szyfrowaną wiadomość ClientHelloInner (SNI Inner) i nieszyfrowaną podstawową wiadomość ClientHelloOuter (SNI Outer). W nieszyfrowanym SNI Outer przesyłane są niepoufne dane, takie jak wersja TLS i lista używanych szyfrów, a także ogólna nazwa domeny, która nie pokrywa się z faktyczną nazwą żądanej domeny. Na przykład, dla wszystkich klientów Cloudflare w nieszyfrowanym SNI Outer podawany jest ogólny host „cloudflare-ech.com”, a faktyczna nazwa żądanej hosta jest przesyłana w zaszyfrowanym SNI Inner i nie jest dostępna do analizy.

W Firefox i Cloudflare włączono wsparcie ECH do ukrywania domen w ruchu HTTPS

ECH wykorzystuje także inną schematykę dystrybucji klucza do szyfrowania — informacja o otwartym kluczu jest przesyłana w rekordach DNS HTTPSSVC, a nie w rekordach typu TXT. Do uzyskania i szyfrowania klucza stosowane jest uwierzytelnione szyfrowanie end-to-end oparte na mechanizmie HPKE (Hybrid Public Key Encryption). ECH obsługuje również bezpieczne ponowne przesyłanie klucza z serwera, co może być stosowane w przypadku rotacji kluczy. serwerze i do rozwiązania problemów związanych z uzyskiwaniem przestarzałych kluczy z pamięci podręcznej DNS.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster