SNI是否代表我的网站访问者的隐私问题?

首先,我很抱歉我的英文不好。 我仍然在学习它。 这里是:

当我为每个IP地址托pipe一个网站时,我可以使用“纯粹的”SSL(没有SNI),并且在用户甚至告诉我他想要检索的主机名和path之前进行密钥交换。 密钥交换后,所有数据都可以安全地交换。 也就是说,如果有人正在嗅探networking,就不会泄露任何机密信息*(见脚注)。

另一方面,如果我按照IP地址托pipe多个网站,我可能会使用SNI,因此我的网站访问者需要告诉我目标主机名,然后才能向他提供正确的证书。 在这种情况下,有人嗅探他的networking可以跟踪他正在访问的所有网站域名。

我的假设是否有错误? 如果没有,这不代表隐私问题,假设用户也使用encryption的DNS?

脚注:我也意识到,一个嗅探器可以对IP地址进行反向查找,找出哪些网站被访问过,但是通过networking电缆以明文forms传输的主机名似乎使得对于审查机构而言,基于关键字的域阻塞更容易。

你的分析是不正确的。 SNI比没有SNI更安全。

没有SNI,IP地址唯一地标识主机。 因此,任何可以确定IP地址的人都可以确定主机。

使用SNI,IP地址不会唯一标识主机。 有人将不得不实际拦截和查看一些stream量,以确定确切的主机。 这比获取IP地址更困难。

所以你对SNI(稍微)更安全,而不是没有它。

任何基于对数据包数据的入侵分析将要阻塞的人也将基于IP地址进行阻塞。 他们将阻止基于IP地址的“坏的”有或没有SNI。

但是,您的问题的答案是“是”。 SNI的确代表了隐私问题。 通过SNI,可以拦截stream量的人除了获得IP地址之外,还能获得主机名。

你是对的。 SNI是您的访问者关心的主要隐私问题 – 它将您的访问者连接的确切网站暴露给ISP和其他被动聆听方。 但是,那么DNS也是如此…以前,谷歌正在修复这个问题:

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

知道一个IP地址不会告诉ISP那个IP地址是什么网站,除非他们主动出去看看自己,这与他们被动地嗅探客户数据包是非常不同的。