https 协议,有什么东西是靠抓包能窃取的?

2021-07-13 23:39:17 +08:00
 LeeReamond
如题,比如访问 Baidu.com/query?p=1 这个网址,印象中上级 dns 服务器能知道你在请求百度.com ,但是子链接和其他信息一概无法获得?

有点不确定,搜了一会没搜到相关信息,有没有大佬来指点一下
4055 次点击
所在节点    问与答
14 条回复
3dwelcome
2021-07-13 23:42:36 +08:00
安全协议里,至少 query?p=1 是没办法中间人截取的,要不然对不起 HTTPS 最后那个 Secure 单词。
crab
2021-07-13 23:48:52 +08:00
就 sni 了啊
3dwelcome
2021-07-13 23:49:55 +08:00
域名没办法,因为是写死在 SSL 证书里的,传递证书相当于握手阶段早期,数据都没加密,大家随便看。

但是握手完成后,数据都走加密流程,GET/POST 这种第三方肯定就没办法偷窥了。
ruixue
2021-07-13 23:51:29 +08:00
服务器名称指示(英语:Server Name Indication,缩写:SNI )是 TLS 的一个扩展协议,在该协议下,在握手过程开始时客户端告诉它正在连接的服务器要连接的主机名称。这允许服务器在相同的 IP 地址和 TCP 端口号上呈现多个证书,并且因此允许在相同的 IP 地址上提供多个安全( HTTPS )网站(或其他任何基于 TLS 的服务),而不需要所有这些站点使用相同的证书。它与 HTTP/1.1 基于名称的虚拟主机的概念相同,但是用于 HTTPS 。所需的主机名未加密,因此窃听者可以查看请求的网站。

SNI 没有加密,所以主要就是主机名(域名),具体的路径看不到
cache
2021-07-14 00:04:40 +08:00
SNI 会暴露目标域名 ,所以 TLS 1.3 搞了个 esni

https://blog.cloudflare.com/encrypted-sni/
Yourshell
2021-07-14 00:09:33 +08:00
LeeReamond
2021-07-14 00:25:37 +08:00
@cache 挺有意思的,学习了,不知道 sni 也能保护,tls1.3 应该是个挺普遍的协议版本,所以现在大多数 https 流量,连域名都是被保护的?不过看了看文章,似乎对 dns 服务器不能保密,只是防止第三方截取而已。其实只能算个半保密吧我觉得,因为 dns 服务商往往也未必可信。
dingwen07
2021-07-14 01:41:37 +08:00
@LeeReamond #7 再加上 DoH
emeab
2021-07-14 01:48:11 +08:00
iseki
2021-07-14 02:08:46 +08:00
@LeeReamond ESNI 并不是强制开启的部分···况且还处于草案状态。另,某些设施会对 ESNI 无差别···
shansing
2021-07-14 08:31:44 +08:00
@3dwelcome #3 @LeeReamond #7 从现状来说,域名没有加密。但不是因为证书暴露,因为在 TLS 1.3 中证书也被加密了。明文的是 SNI 。(也有加密扩展 ESNI,但显然还不成熟,眼看将来也很难铺开。)
NewYear
2021-07-14 09:11:48 +08:00
为了防止楼主偷窥,HTTPS 协议新版连域名部分都藏起来了。。。
dfkjgklfdjg
2021-07-14 10:43:29 +08:00
@NewYear #12,红红火火恍恍惚惚哈哈哈哈哈哈哈哈哈哈
LeeReamond
2021-07-14 20:37:39 +08:00
@iseki 所以意为即使有 esni,在实际操作中实质上在进行某些活动时你是无法向上级服务提供商隐藏自己的访问网址的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/789369

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX