28/02/2024
Cybersecurity Insights
ECH : simple évolution de TLS ou petite révolution ?
Ce Cybersecurity Insight a pour but de présenter les enjeux relatifs à la nouvelle extension de TLSv1.3 qui devrait être normalisée prochainement, et est déjà supportée par plusieurs acteurs du web de premier plan.
L’extension ECH (Encrypted Client Hello) a pour objectif de renforcer la vie privée des usages web des utilisateurs. Cependant, cette nouvelle extension pourrait également poser plusieurs challenges aux équipes de sécurité.
Introduction à TLS
Présentation de TLSv1.3
- TLS offre plusieurs garanties de sécurité lors d’une communication client/serveur:
• Confidentialité
• Authenticité du serveur
• Intégrité
• Utilisation par HTTPS pour sécuriser le trafic web
- La sécurité est basée sur la première étape du protocole: la poignée de main (handshake)
• Négociation des algorithmes de chiffrement
• Echange de matériaux cryptographiques
• Authentification du serveur
- La majorité des messages de la poignée de main sont chiffrés en TLSv1.3
- Les informations suivantes sont protégées:
• Certificat X509
• D’autres extensions sensibles
- Le message ClientHello reste en clair
- Les informations suivantes ne sont donc pas chiffrées:
• Le SNI (Server Name Indicator) : indique le nom du site web contacté pour permettre au serveur d’hébergement de présenter le certificat associé
• L’ALPN (Application Layer Protocol Negociation) : indique quels protocoles applicatifs sont supportés par le client
• Les méthodes de chiffrement supportées par le client
Les extensions TLS
À partir de TLS 1.2, une nouvelle notion fait surface : les TLS Extensions
Les extensions permettent d’ajouter des fonctionnalités sans modifier le protocole. L’objectif est de permettre une compatibilité pour les clients/serveurs qui n’auraient pas ces extensions implémentées. Une extension est simplement définie par des bits ajoutés en fin de segment (par exemple le ClientHello), et si le serveur interprète ces extensions, il répond par un ServerHello extended. Il n’y a pas de limites fixées pour les nombres, types et fonctions des extensions.
Les deux exemples les plus importants : la prise en compte des Server Name dans les certificats (champs SNI) et la prise en charge de la cryptographie des courbes elliptiques (ECC).
Fonctionnement d’ECH
La présentation d’ECH
ECH est une extension du protocole TLSv1.3. Elle est en cours de standardisation et validation par l’IETF (la normalisation est attendue courant 2024). Plusieurs acteurs de premier plan ont annoncé supporter au moins partiellement l’extension (Mozilla, Cloudflare, Google Chrome…). L’objectif d’ECH est de chiffrer le contenu du message ClientHello.
Principe de base:
- Encapsuler un ClientHello…. dans un ClientHello
- Partage de la clé de chiffrement via un nouveau type d’enregistrement DNS: HTTPS resource record
- Un « nouvel intermédiaire » récupère le trafic et déchiffre le ClientHello: le client-facing-server
• Le client-facing-server possède la clé privée nécessaire au déchiffrement du ClientHello
• Par exemple les CDN pourront jouer ce rôle et se sont déjà positionnés en ce sens (par exemple Cloudflare)
- Chiffrement du contenu du ClientHello
• Le véritable ClientHello (Inner) est encapsulé et chiffré dans le message ClientHello (outer)
Le fonctionnement d’ECH
Les impacts
Un objectif de protection de la vie privée
L’objectif premier d’ECH est d’améliorer la protection de la vie privée en masquant la destination des sites web lors de la poignée de main TLS. Couplé à des services DoH et DoT (DNS over HTTPS & DNS over TLS), il devient impossible pour un intermédiaire (par exemple le fournisseur d’accès internet) en amont du client-facing-server de connaître la véritable destination des utilisateurs.
Dans des contextes de censure et de répression basée sur les comportements en ligne, ECH pourrait permettre une meilleure anonymisation en ligne.
Néanmoins, cette approche comporte plusieurs limites :
- Pour que cela fonctionne, il faut qu’ECH soit adoptée par les sites web, ce qui n’est pas garanti.
- Certaines dictatures sont susceptibles de bloquer les requêtes DNS qui récupèrent des configurations ECH, ainsi que les services DoH et DoT.
- Les régimes autoritaires pourraient aussi faire pression sur les CDN et autres acteurs susceptibles d’être des « client-facing-servers » pour qu’ils cessent de supporter ECH (ces pressions peuvent aussi s’exercer sur les sites web).
Des impacts sur les solutions de sécurité
- Beaucoup de solutions de sécurité sont susceptibles d’utiliser le SNI pour appliquer des politiques de sécurité sans déchiffrement:
• Détection et blocage de tentative d’accès à des URLs connus comme malveillants
• Implémentation de politique d’entreprise quant aux accès web
- Le client-facing-server devient la seule destination connue des tiers qui observent ou interceptent le trafic sans le déchiffrer comme par exemple:
• Proxy
• Pare-feu
• IDS/IPS
- ECH présente donc certains risques pour les équipes sécurité en entreprise:
• Trafic web utilisateur moins maîtrisé
• Communication avec un serveur « Command and Control » plus difficile à détecter
• Exfiltration de données
• Impossibilité dans certains cas de sélectionner le trafic web à déchiffrer, afin de préserver la vie privée des utilisateurs pour l’accès à des sites sensibles (banques, impôts, santé…)
• Non-conformités par rapport à certaines régulations
Des solutions potentielles
- Pistes à explorer pour réduire les risques liés à ECH:
• Désactivation d’ECH sur les navigateurs et applications maîtrisés par l’entreprise
• Bloquer les requêtes DNS HTTPS resource record au niveau des resolvers DNS de l’entreprise
• Bloquer les services DoH & DoT qui sont susceptibles de masquer la récupération d’une configuration ECH via DNS
- Certaines situations difficiles à gérer à plus long terme:
• Les applications qui rendraient dans le future l’utilisation d’ECH obligatoire (navigateurs web ou autres types d’application)
• L’utilisation des appareils personnels (BYOD) pour lesquels le déchiffrement SSL n’est pas une option, et où les applications ne sont pas maîtrisées par l’organisation
- Des actions à prendre dès à présent pour les organisations:
• Contacter les éditeurs de solutions de sécurité et les régulateurs pour comprendre les impacts d’ECH, ainsi que leur position et roadmap sur cette évolution technique
• Faire une étude d’impact sur les capacités de détection d’attaques et les régulations en application
• Investiguer en interne pour détecter du trafic ECH afin d’évaluer la légitimité et les risques posés par les usages actuels
Sources
Maxime FRATANI
Consultant Infrastructure Security