随着互联网的普及,DNS(域名系统)作为网络基础设施的一部分,其查询隐私问题日益受到关注。近年来,关于DNS查询行为被用于观察终端系统行为并推断用户行为的讨论越来越多。几乎每一次网络交易都始于一个DNS查询,如果能够收集到用户产生的所有DNS查询,就可以构建出他们在线活动的相对完整画面。然而,DNS查询和响应通常是不加密的,这使得它们容易受到中间人攻击,并向第三方泄露多余信息。为了解决这一问题,业界提出了两种主要方法:一是使用加密技术保护DNS查询,如DNS-over-TLS(DoT)和DNS-over-HTTP(DoH);二是通过减少每个DNS查询中的信息量来降低信息泄露。本文将详细介绍QNAME最小化技术,并分析其在当前互联网中的使用情况。
QNAME最小化技术原理
QNAME最小化技术是基于RFC 6973中提出的“隐私考虑因素”原则,即“你发出的数据越少,你遇到的隐私问题就越少”。DNS传统上为了简单性和性能而优化其行为。在DNS名称解析协议中,DNS递归解析器并不一定事先知道给定区域的权威服务器,因此需要发现这些信息。在具有多个标签的名称中,解析器也不一定知道标签之间的区域切割位置。在没有关于命名空间结构的元信息的情况下,它使用完整的域名进行查询。
QNAME最小化技术实现
IETF提出了使用QNAME最小化技术来实现这一目标,该技术描述在实验性RFC文档RFC 7816中。该技术通过减少DNS查询中的信息量来降低信息泄露。具体来说,它通过省略查询名称中的某些部分来实现,例如省略域名中的顶级域名(TLD)部分,从而减少查询的长度。
QNAME最小化技术测量结果
本文对当前互联网中QNAME最小化技术的使用情况进行了测量。测量结果显示,尽管QNAME最小化技术已经存在一段时间,但其使用率仍然较低。这可能是因为许多用户和运营商对这一技术的了解不足,或者是因为他们担心其性能影响。
结尾:对运维/网络工程师的实际意义
QNAME最小化技术为网络工程师提供了一种有效的DNS查询隐私保护手段。通过减少DNS查询中的信息量,可以降低信息泄露的风险,从而提高用户的隐私保护水平。网络工程师应关注这一技术,并在实际工作中考虑将其应用于DNS服务配置中,以提升网络安全性。
原文: APNIC Blog(2019-08-12)|编译自 APNIC Blog,事实以原文为准。
来源:APNIC Blog