Auteur Sujet: ECH (Encrypted Client Hello) / ESNI où la fin de la surveillance d'internet  (Lu 28588 fois)

0 Membres et 1 Invité sur ce sujet


adhame95

  • Abonné Orange / Sosh 4G/5G
  • *
  • Messages: 218
  • Monaco
    • Facebook
ECH (Encrypted Client Hello) / ESNI où la fin de la surveillance d'internet
« Réponse #61 le: 02 avril 2023 à 19:01:05 »
Il ya un truc bizarre
j'ai testé aujourd'hui sur le pc de mon pere en egypte de me connecter a RSF (qui est bloqué)
sur chrome c'est en échec une première fois, puis ça recharge automatiquement et ça fonctionne
sur firefox c'est tout le temps en echec

sachant que a l'epoque avec ESNI ca fonctionnait et que ech semble pas actif sur rsf (https://rsf.org/cdn-cgi/trace donne cleartext sni)

voci les pcap en PJ

ajoutez le filtre ip.addr ne 92.184.104.98 pour masquer le rdp

ou

 ip.addr eq 172.67.66.183 pour chrome et ip.addr eq 104.25.93.108 pour firefox

vivien

  • Administrateur
  • *
  • Messages: 47 231
    • Twitter LaFibre.info
ECH (Encrypted Client Hello) / ESNI où la fin de la surveillance d'internet
« Réponse #62 le: 02 avril 2023 à 21:13:00 »
Je ne vois pas d'information sur les deux captures, mais il manque le début (c'est bien d'avoir une connexion TCP depuis le paquet [SYN]).

Autre chose m'interpelle : l'utilisation de TLS 1.2 alors que https://rsf.org gère TLS 1.3 (et les navigateurs aussi). Comment expliquer que TLS 1.2 soit utilisé ?

hwti

  • Abonné Orange Fibre
  • *
  • Messages: 2 237
  • Chambly (60)
ECH (Encrypted Client Hello) / ESNI où la fin de la surveillance d'internet
« Réponse #63 le: 02 avril 2023 à 22:00:26 »
sachant que a l'epoque avec ESNI ca fonctionnait et que ech semble pas actif sur rsf (https://rsf.org/cdn-cgi/trace donne cleartext sni)
Il n'y a pas d'ECH pour rsf.org (cf about:networking#dnslookuptool dans Firefox, pas de "echConfig").
Mais Chrome envoie quand même l'extension (Wireshark indique "Unknown type 65037").
Il s'agit de GREASE ECH : https://datatracker.ietf.org/doc/html/draft-ietf-tls-esni-15#name-grease-ech.
Je suppose que ça a deux rôles :
 - faire comme GREASE (qui est aussi utilisé) : s'assurer que les différents serveurs et intermédiaires (proxy, ...) n'ont pas de bugs quand ils voient des extensions qu'ils ne connaissent pas
 - noyer le trafic ECH dans le reste
Ici, même avec le SNI rsf.org, ça semble permettre de contourner le blocage.

Pour Firefox, il y a :
 - security.tls.ech.grease_probability (pourcentage des connexions TLS qui ont GREASE ECH activé) : 0 par défaut, 50 sur Nightly
 - security.tls.ech.grease_http3 (activation de GREASE ECH en HTTP/3) : false par défaut

Avec security.tls.ech.grease_probability=100, le comportement serait similaire à Chrome, ça peut permettre de contourner les blocages aussi.
Autre chose m'interpelle : l'utilisation de TLS 1.2 alors que https://rsf.org gère TLS 1.3 (et les navigateurs aussi). Comment expliquer que TLS 1.2 soit utilisé ?
Le Client Hello a pour version TLS 1.2, mais l'extension supported_versions indique TLS 1.2, TLS 1.3 (et GREASE pour Chrome).
C'est normal, puisque les navigateurs supportent le deux versions, le serveur répond avec la plus récente qu'il supporte.
Wireshark renseigne probablement la colonne protocole à partir de la version vue dans l'extension supported_versions du Server Hello.

adhame95

  • Abonné Orange / Sosh 4G/5G
  • *
  • Messages: 218
  • Monaco
    • Facebook
ECH (Encrypted Client Hello) / ESNI où la fin de la surveillance d'internet
« Réponse #64 le: 08 avril 2023 à 22:36:38 »
Il n'y a pas d'ECH pour rsf.org (cf about:networking#dnslookuptool dans Firefox, pas de "echConfig").
Mais Chrome envoie quand même l'extension (Wireshark indique "Unknown type 65037").
Il s'agit de GREASE ECH : https://datatracker.ietf.org/doc/html/draft-ietf-tls-esni-15#name-grease-ech.
Je suppose que ça a deux rôles :
 - faire comme GREASE (qui est aussi utilisé) : s'assurer que les différents serveurs et intermédiaires (proxy, ...) n'ont pas de bugs quand ils voient des extensions qu'ils ne connaissent pas
 - noyer le trafic ECH dans le reste
Ici, même avec le SNI rsf.org, ça semble permettre de contourner le blocage.

Pour Firefox, il y a :
 - security.tls.ech.grease_probability (pourcentage des connexions TLS qui ont GREASE ECH activé) : 0 par défaut, 50 sur Nightly
 - security.tls.ech.grease_http3 (activation de GREASE ECH en HTTP/3) : false par défaut

Avec security.tls.ech.grease_probability=100, le comportement serait similaire à Chrome, ça peut permettre de contourner les blocages aussi.Le Client Hello a pour version TLS 1.2, mais l'extension supported_versions indique TLS 1.2, TLS 1.3 (et GREASE pour Chrome).
C'est normal, puisque les navigateurs supportent le deux versions, le serveur répond avec la plus récente qu'il supporte.
Wireshark renseigne probablement la colonne protocole à partir de la version vue dans l'extension supported_versions du Server Hello.

Merci pour ces explications,

Première remarque : security.tls.ech.grease_http3 n’est pas present dans la dernière version de Firefox (stable)

2) dans nightly les 2 options sont actives par defaut et grease probability est a 100
Mais bizarrement, ça ne fonctionne pas

hwti

  • Abonné Orange Fibre
  • *
  • Messages: 2 237
  • Chambly (60)
ECH (Encrypted Client Hello) / ESNI où la fin de la surveillance d'internet
« Réponse #65 le: 09 avril 2023 à 14:52:30 »
2) dans nightly les 2 options sont actives par defaut et grease probability est a 100
Effectivement, ça a changé entre temps.

Mais bizarrement, ça ne fonctionne pas
Chrome met le SNI vers la fin des extensions, avec notamment le GREASE ECH (282 octets) avant.
Firefox met le SNI en premier, et le GREASE ECH en dernier.
Donc peut-être que le système de DPI est limité dans la taille des données qu'il peut analyser, ou qu'il s'arrête quand il voit l'extension ECH, ou que la taille inhabituelle de l'extension le fait bugger.

Antoinel

  • Abonné Bbox fibre
  • *
  • Messages: 363
  • Bbox Fit FTTH
ECH (Encrypted Client Hello) / ESNI où la fin de la surveillance d'internet
« Réponse #66 le: 04 octobre 2023 à 23:35:43 »
C'est passé inaperçu : Cloudflare a activé le ECH sur toutes les zones DNS gratuites hébergés chez eux (ceux qui paient sont sur OFF par défaut avec un paramètre dans l'espace client).

https://blog.cloudflare.com/announcing-encrypted-client-hello/


Je viens de tester avec Chrome et Firefox, ça marche (en tout cas d'après les divers "testeurs" sur le net) après quelques étapes relativement complexe : j'ai un AdGuard Home qui sert de serveur DNS avec blocklist, j'ai du configuré la partie serveur DoH avec certificat SSL valide notamment et puis forcé dans Chrome / Firefox d'utiliser ECH + DoH.

Antoinel

  • Abonné Bbox fibre
  • *
  • Messages: 363
  • Bbox Fit FTTH
ECH (Encrypted Client Hello) / ESNI où la fin de la surveillance d'internet
« Réponse #67 le: 04 octobre 2023 à 23:46:55 »
Par contre, il y a certains sites qui ne fonctionnent plus* : https://www.nextinpact.com/ me donne un ERR_ECH_FALLBACK_CERTIFICATE_INVALID (Chrome) et MOZILLA_PKIX_ERROR_SELF_SIGNED_CERT (Firefox).

Il commence à avoir des retours négatifs :

https://community.cloudflare.com/t/getting-ech-fallback-certificate-error/565167
https://support.google.com/chrome/thread/237711423/chrome-throws-err-ech-fallback-certificate-invalid-errror

Une discussion technique sur l'activation de ECH par Cloudflare : https://github.com/haproxy/haproxy/issues/1924


* Je sais pas si c'est ma config ...

adhame95

  • Abonné Orange / Sosh 4G/5G
  • *
  • Messages: 218
  • Monaco
    • Facebook
ECH (Encrypted Client Hello) / ESNI où la fin de la surveillance d'internet
« Réponse #68 le: 07 octobre 2023 à 18:41:09 »
Ça coïncide avec l’activation par défaut sur chrome et Firefox
Maintenant il suffit d’activer DoH pour avoir ECH

Antoinel

  • Abonné Bbox fibre
  • *
  • Messages: 363
  • Bbox Fit FTTH
ECH (Encrypted Client Hello) / ESNI où la fin de la surveillance d'internet
« Réponse #69 le: 11 octobre 2023 à 20:14:31 »
Marche arrière pour Cloudflare, ECH est désactivé pour tout le monde suite à des bugs.

https://community.cloudflare.com/t/early-hints-and-encrypted-client-hello-ech-are-currently-disabled-globally/567730