DNS 加密

概述

参考:

HTTPS 协议对网络流量进行了加密,然而这种保护并非完美,事实上。HTTPS 体系存在着两个安全缝隙:DNS 还有 SNI,他们依旧使用着明文传输,因此可能会导致隐私泄露等等的安全风险

DNS 的查询与响应都是 UDP 协议的明文传输,这就意味着可能被网络传输的中间人监听篡改,中间人可以轻易知道用户准备访问哪个网站,用户就会因此泄露隐私

攻击者通过抓取DNS数据包,很轻易的就知道我是要访问哪个网站,中间人甚至可以修改DNS的响应结果,故意误导一个错误的IP地址,让浏览器无法正常工作

这种攻击也就是DNS污染

为了应对这种安全挑战,两种加密版本的DNS协议诞生了

  • DOT # 利用传输层的安全协议 TLS 来加密 DNS 查询。DOT 通常在853端口上运行
  • DOH # 通过HTTPS协议传输DNS查询的方法

这两种方法目前更主流的是DOH

因为 DOH 的优点显而易见,DOH 复用了HTTPS协议,使得DNS查询与普通的外部流量是混合在一起的

DOH 与 HTTPS 共用443端口,从而更难被中间人识别攻击

现在国内已经有了比较成熟的DOH供应商,比如阿里云、腾讯的DNS、国际上也有 CloudFlare、谷歌、etc. DOH 供应商

DOH 已经是比较成熟的技术


最后修改 May 29, 2025: wireshark. dns. ssl_tls (07ace48e)