SNI représente-t-il un problème de confidentialité pour les visiteurs de mon site Web?

10

Tout d'abord, je suis désolé pour mon mauvais anglais. Je l'apprends toujours. Ça y est:

Lorsque j'héberge un seul site Web par adresse IP, je peux utiliser le SSL "pur" (sans SNI), et l'échange de clés a lieu avant que l'utilisateur ne me dise même le nom d'hôte et le chemin qu'il souhaite récupérer. Après l'échange de clés, toutes les données peuvent être échangées en toute sécurité. Cela dit, si quelqu'un renifle le réseau, aucune information confidentielle n'est divulguée * (voir référence).

D'un autre côté, si j'héberge plusieurs sites Web par adresse IP, j'utiliserai probablement SNI, et donc mon visiteur de site Web doit me dire le nom d'hôte cible avant de lui fournir le bon certificat. Dans ce cas, quelqu'un qui renifle son réseau peut suivre tous les domaines du site Web auxquels il accède.

Y a-t-il des erreurs dans mes hypothèses? Sinon, cela ne représente-t-il pas un problème de confidentialité, en supposant que l'utilisateur utilise également un DNS crypté?

Note de bas de page: Je me rends également compte qu'un renifleur pourrait effectuer une recherche inversée sur l'adresse IP et découvrir quels sites Web ont été visités, mais le nom d'hôte voyageant en texte brut à travers les câbles réseau semble rendre le blocage de domaine par mot-clé plus facile pour les autorités de censure.

pagliuca
la source
Qu'entendez-vous par «blocage de domaine par mot clé»? Comment associeriez-vous un domaine à un mot clé?
David Schwartz
Exemples: sites Web d'une région spécifique (* .com.br); d'une organisation (* .google.com); *porno*; etc.
pagliuca

Réponses:

9

Votre analyse est incorrecte. Vous êtes plus sûr avec SNI que sans.

Sans SNI, l'adresse IP identifie de façon unique l'hôte. Ainsi, toute personne qui peut déterminer l'adresse IP peut déterminer l'hôte.

Avec SNI, l'adresse IP n'identifie pas uniquement l'hôte. Quelqu'un devrait intercepter et visualiser une partie du trafic pour déterminer l'hôte exact. C'est plus difficile que d'obtenir simplement l'adresse IP.

Vous êtes donc (légèrement) plus sûr avec SNI que sans lui.

Quiconque va bloquer sur la base d'une analyse intrusive des données de paquets va également bloquer sur la base de l'adresse IP. Ils bloqueront les "mauvais" en fonction de l'adresse IP avec ou sans SNI.

Cependant, la réponse à votre question est "oui". SNI représente un problème de confidentialité. Avec SNI, quelqu'un qui peut intercepter le trafic obtient le nom d'hôte en plus de l'adresse IP.

David Schwartz
la source
Merci d'avoir répondu. Donc, SNI ne serait plus sûr que dans le cas où l'attaquant ne reniflerait qu'après l'échange des clés, ai-je raison?
pagliuca
2
@pagliuca SSL n'est pas vraiment conçu pour cacher à qui vous parlez, il est conçu pour cacher ce que vous leur dites. Vous n'allez pas vaincre un filtre Web en évitant d'envoyer des SNI; ils conservent de vastes bases de données IP vers domaine. Moot point de toute façon, car un navigateur client prenant en charge SNI enverra toujours SNI, que votre serveur en ait besoin ou non.
Shane Madden
@ShaneMadden Intéressant. Sachant cela, maintenant je n'ai aucune raison de ne pas utiliser SNI :), car il est probable que la majorité des utilisateurs disposent déjà de navigateurs qui exposent le nom d'hôte distant dans chaque demande HTTPS.
pagliuca
1
Cette réponse est fausse. Il est beaucoup plus facile de renifler passivement le SNI (et de savoir avec certitude quel site Web le visiteur a demandé), que d'aller activement à une adresse IP pour deviner ce qu'un utilisateur parcourait (qui, avec les caractères génériques, peut contenir de nombreux sites Web, et les adresses IP changent également au fil du temps, tandis que les données SNI collectées restent perpétuellement exactes et détruisent la confidentialité.).
2017
@cnd Vous n'avez pas du tout à "aller activement à une adresse IP". Si vous pouvez renifler passivement SNI, vous pouvez renifler passivement l'adresse IP. Soit c'est sur votre liste de sites que vous regardez ou ce n'est pas le cas. Et sans SNI, une adresse IP identifie de manière unique un site. Avec SNI, ce n'est pas le cas.
David Schwartz
0

Tu as raison. SNI est une préoccupation majeure en matière de confidentialité pour vos visiteurs - il expose les sites Web exacts avec lesquels vos visiteurs se connectent à leur FAI et à d'autres parties à écoute passive. Mais alors, le DNS aussi ... eh bien ... habitué à: Google corrige cela: -

https://thehackernews.com/2017/10/android-dns-over-tls.html

Connaître une adresse IP ne dit PAS au FAI quel site Web se trouve sur cette adresse IP, à moins qu'il ne sorte activement et se regarde, ce qui est très différent de ce qu'il renifle passivement les paquets des clients.

cnd
la source