Mozilla anunciou a inclusión do soporte para os usuarios da rama estable de Firefox para o mecanismo ECH (Encrypted Client Hello), que continúa co desenvolvemento da tecnoloxía ESNI (Encrypted Server Name Indication) e está deseñada para cifrar información sobre os parámetros das sesións TLS. , como o nome de dominio solicitado. O código para traballar con ECH engadiuse orixinalmente á versión de Firefox 85, pero estaba desactivado por defecto. Chrome comezou gradualmente a incluír soporte ECH a partir do lanzamento de Chrome 115.
Xa que ademais de conectar con servidor A información do dominio solicitada fíltrase a través do DNS. Para unha protección completa, ademais de ECH, debes usar DNS sobre HTTPS ou DNS sobre TLS para cifrar o tráfico DNS. Firefox non usará ECH sen activar DNS sobre HTTPS na configuración. Podes consultar a compatibilidade con ECH no teu navegador nesta páxina.
Un dos factores que habilitou a compatibilidade de ECH por defecto en Firefox foi a inclusión de Cloudflare da compatibilidade de ECH na súa rede de entrega de contido hai uns días. No lado práctico, dado que os datos sobre os anfitrións solicitados ao usar ECH están ocultos da análise, filtrar e bloquear sitios non desexados usando Cloudflare CDN agora requirirá bloquear toda a rede Cloudflare, bloquear todas as solicitudes de ECH ou organizar a interceptación HTTPS mediante certificados raíz falsos. no sistema do usuario.
Inicialmente, para organizar o traballo nun enderezo IP de varios sitios HTTPS, utilizouse a extensión TLS SNI, na que se indicaba o nome do host solicitado na mensaxe ClientHello transmitida antes de establecer unha canle de comunicación cifrada. Esta característica permitiu distribuír as solicitudes entre hosts virtuais nunha fase inicial do procesamento de conexión, pero tamén permitiu filtrar selectivamente o tráfico HTTPS por parte do ISP e analizar que sitios abre o usuario, o que non permitiu acadar a total confidencialidade cando se utiliza. HTTPS.
Para resolver este problema e evitar a fuga de información sobre o sitio solicitado, máis tarde propúxose unha extensión ESNI que implementa o cifrado de datos co nome de host. Durante a implementación de ESNI, revelouse que o mecanismo proposto non cobre todas as posibles fontes de fuga de datos do host e que o seu uso non é suficiente para garantir a total confidencialidade das sesións HTTPS. En particular, ao retomar unha sesión previamente establecida, o nome de dominio en texto claro continuou a especificarse entre os parámetros da extensión TLS PSK (Pre-Shared Key). Ademais, os esforzos para implementar ESNI identificaron problemas de compatibilidade e escala que impediron a adopción xeneralizada de ESNI.
Tendo en conta as deficiencias identificadas de ESNI, desenvolveuse un novo mecanismo ECH universal que permite o cifrado dos parámetros de calquera extensión TLS. Tecnicamente, a principal diferenza entre ECH e ESNI é que en lugar de campos individuais, toda a mensaxe ClientHello está cifrada á vez. ECH implica dividir o ClientHello en dúas mensaxes separadas: a mensaxe cifrada ClientHelloInner (SNI Inner) e a mensaxe non cifrada ClientHelloOuter (SNI Outer). Un SNI Outer sen cifrar leva datos non relacionados coa privacidade, como a versión TLS e unha lista de cifrados utilizados, así como un nome de dominio común que non se solapa co nome real do dominio solicitado. Por exemplo, para todos os clientes de Cloudflare, o SNI Outer non cifrado especifica o host común "cloudflare-ech.com", pero o nome real do host solicitado transmítese no SNI Inner cifrado e non está dispoñible para a análise.

ECH tamén emprega un esquema de distribución de claves de cifrado diferente: a información da clave pública transmítese en rexistros DNS HTTPSSVC en lugar de rexistros TXT. Para obter e cifrar a clave utilízase o cifrado autenticado de extremo a extremo baseado no mecanismo HPKE (cifrado híbrido de clave pública). ECH tamén admite a retransmisión segura de claves desde o servidor, que se pode empregar en caso de rotación de claves. servidor e para resolver problemas coa recuperación de claves desactualizadas da caché de DNS.
Fonte: opennet.ru
