【论文分享】DHCP与DNS交互中的隐私风险测量

渗透技巧 1年前 (2022) admin
411 0 0

今天分享的论文主题为DHCP与DNS交互中的隐私风险。该工作由来自荷兰特温特大学的研究人员完成。作者指出,当DHCP客户接入网络时,由于DHCP服务器会向DNS服务器创建反向DNS记录,用户的隐私存在泄露风险。攻击者有可能通过全局DNS对网络动态和客户设备进行探测。论文发表于网络测量顶级会议 IMC 2022(录用率:20%)。


【论文分享】DHCP与DNS交互中的隐私风险测量

全文约4400字,阅读时间约10分钟。


01

【背景介绍】


动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)和 域名系统(Domain Name System,DNS) 都是互联网重要的组成部分。其中,DHCP 作用于用户接入互联网的准备阶段,为用户动态分配 IP 地址。在接入互联网后,为了访问特定的网络资源,DNS 可以向互联网用户提供域名查询服务,实现从域名到互联网资源(如,IP 地址等)的映射。


【论文分享】DHCP与DNS交互中的隐私风险测量

图表 1:DHCP客户端与服务器的交互过程


图表1显示了DHCP客户端和服务器的交互过程,主要包括四个阶段:1)发现阶段(Discover),DHCP客户端寻找DHCP服务器的阶段;2)提供阶段(Offer),DHCP服务器收到客户端的请求,向客户端提供IP地址的阶段;3)选择阶段(Request),DHCP客户端选择IP地址的阶段;4)确认阶段(ACK),DHCP服务器确认客户端选择的IP地址的阶段。四个阶段的交互后,客户端就可以从DHCP服务器获得分配的IP地址。在交互的过程中,除了服务器给客户端分配的IP地址及其租期之外,还可能包含其他信息,例如服务器可以告知客户端默认网关和默认DNS服务器,以及客户端也可以告知服务器其主机名。以往的研究发现,主机名中可能编码了许多有价值的信息,例如地理位置信息[1]和链路接口类型 [2]。

同时,DHCP交互可能伴随着对域名系统的更改。具体来说,DHCP服务器可以更新本地域名服务器,将本地网络中的设备与一个名称关联起来。不仅可以更新本地域名服务器,DHCP服务器还可以对全局DNS进行更改,例如为已分配的IP地址添加主机名。针对添加主机名的IP地址,网络用户可以利用反向DNS(rDNS)查询,获得IP地址对应的主机名。不同于正向DNS解析,即把域名解析为IP地址,反向DNS解析是通过查询PTR记录,将IP地址解析为其对应的域名,图表2显示了一个反向DNS解析的示例。


【论文分享】DHCP与DNS交互中的隐私风险测量

图表 2:一个反向DNS解析的例子


02

【数据收集】


RFC 7844 [7] 提到,将客户端标识符从DHCP转移到DNS会造成隐私风险,但在实践中这种情况很少受到关注。因此,论文针对 DHCP 和 DNS 交互中存在的隐私风险,开展了系统的测量研究工作。论文通过调查反向DNS解析数据以发现这种威胁的存在,进而做进一步的分析。针对论文要研究的问题,论文收集了一系列数据集,主要包括两个现有的数据集,同时还有一个作者自行构建的数据集以进行补充。下文中详细介绍论文使用的数据集。

I. 全网地址空间反向DNS测量数据

首先论文使用了两个公开的数据集,来获取对全网地址空间的反向DNS测量结果,即OpenINTEL数据集[8] 和 Rapid7[9] 数据集,两个数据集的情况如图表3所示。具体来说,Rapid7会每周收集一次反向DNS解析的数据,该数据集的收集时间从2019年10月1日一直持续到2021年1月1日;OpenINTEL的收集密度更高,每天会收集一次反向DNS解析的数据,该数据集持续从2020年2月17日收集至2021年12月1日。总的来说,这两个数据集都覆盖了研究者关注的时间段,即2019年10月1日至2021年12月31日。


【论文分享】DHCP与DNS交互中的隐私风险测量

图表 3:两个公开rDNS数据集的总体情况


II. 响应式细粒度测量

除了上述两个公共数据集之外,论文还根据研究需求设计了补充的细粒度测量,包括ICMP测量和响应式DNS细粒度测量,数据统计结果如图表4所示。该部分数据收集,是为了验证“PTR记录随用户接入网络而产生,随用户离开网络而消失”的假设。论文对一些目标网络进行持续的ICMP扫描,检测设备接入网络和离开网络的过程。当发现设备接入或离开网络后,随机进行反向DNS查询,以验证假设是否成立。根据作者的测量结果,在动态网络中,PTR记录的存在与客户设备的接入之间有很强的关联关系。更详细的实验信息会在识别方法部分的Step III 中进行介绍。


【论文分享】DHCP与DNS交互中的隐私风险测量

图表 4:响应式DNS细粒度测量结果数据统计


03

【主要发现】


由于DHCP 的更新可能向DNS通告用户主机名,同时用户主机名可以蕴含多种有价值的信息,因此,攻击者可以通过不断查询DNS的方式感知网络动态甚至定位用户设备。论文期望通过复现这种攻击模式,对其可行性进行评估。具体研究方法可分为三个步骤。

Step I:筛选动态网络

为了让后续实验更容易通过动态感知PTR记录的方式窥探用户隐私,论文首先以启发式的方法,对OpenINTEL和Rapid7两个数据集中涉及到的网络进行筛选,将动态性较强的网络保留,具体包括:


  1. /24网段分组。对OpenINTEL和Rapid7两个数据集中涉及到的IP地址按照24前缀进行分组,去除那些仅包括不超过10个IP地址的前缀。随后,计算每个前缀下每天出现的IP地址数量,以及每个前缀下每天最多出现的IP地址数量。

  2. 计算/24网段动态变化程度。具体来说,论文会计算每个/24网段每天出现的IP地址数量增加值(或减少值)。论文定义一个/24网段在某天的变化率,为图表5中所示的运算。

    1. 【论文分享】DHCP与DNS交互中的隐私风险测量

图表 5:网段在某一天的变化率的计算公式


  1. 根据变化率阈值筛选网段。具体来说,论文任务一个/24网段是动态的条件为,当且仅当这个网段至少有7天(在三个月的实验时间内)变化率超过10%。


Step II:进一步过滤动态网络

由于不同的动态网络可能存在不同的隐私泄露风险,为了聚焦于更容易出现隐私泄露问题的网络,作者对Stepo I中筛选出来的动态网络进行了进一步过滤,主要包括五个方面:


  1. 提取常见短语,分析PTR记录中各个短语出现的次数,并找出常见短语;

  2. 识别共同后缀,作者发现,有关联的IP地址的主机名往往有共同的后缀;

  3. 识别通用短语,在非后缀关键词中,作者发现了许多通用短语,其更可能会传达路由器信息或位置信息,而不是具体的主机信息,因此可以利用这些短语排除更可能属于路由器的PTR记录;

  4. 提取新生儿姓名,如果一个PTR记录中,包含着一个人的名字,那么这个设备很可能是一个客户设备;

  5. 处理城市名称,有些城市名称可能和新生儿姓名一样,而这些城市名称更可能表示这是一个路由器而非用户个人设备。


经过对动态网络进一步过滤,论文总共发现了197个,更可能出现隐私问题的网段。


Step III:验证反向DNS记录的出现和消失

最后,为了验证“PTR记录随用户接入网络而产生,随用户离开网络而消失”的假设,论文又针对“动态性”较强的网络进行了补充的ICMP测量和PTR测量实验。


针对这个假设,论文认为网络上的客户端设备会经历三个阶段,主要包括:


  1. 阶段一:客户端加入网络,DHCP服务器给其分配IP地址,并更新反向DNS记录,至此,客户端设备开始响应ping请求;

  2. 阶段二:客户端在网络中处于活动状态,在此阶段它持续响应ping,并且PTR记录保持不变。

  3. 阶段三:客户端离开网络,不再响应ping请求。其IP地址可能被释放,PTR记录也可能被修改或删除。但是如何处置PTR记录,取决于DHCP服务器的行为,也取决于客户端是否释放其租约。


因此,作者为了证实这个假设,进行了ICMP扫描和PTR查询的补充测量。为了使样本更加均衡,作者在197个可能出现隐私问题的网络中,选择了3个学术网络,3个公司网络和3个运营商网络,组成了包含9个网络的子集,结果显示在图表6中。作者对这9个网络持续进行ICMP扫描,扫描频率为每小时一个轮次。


【论文分享】DHCP与DNS交互中的隐私风险测量

图表 6:论文挑选出的9个网络及其ICMP测量情况


为了探究反向DNS记录出现和消失的出现,论文设计了扫描实验,扫描思路如图表7所示。具体来说,如果一个IP地址从不能ping通变为能ping通,就说明某个设备接入了互联网并使用了这个IP地址。于是论文立刻对这个IP地址进行反向DNS查询。另外,作者继续对相应的IP地址进行ping扫描,但是扫描间隔逐渐拉大。直到对应IP地址不能ping通,作者开始对这些IP地址进行反向DNS查询,查询的时间间隔也逐渐拉大,直到最终反向DNS记录消失。


【论文分享】DHCP与DNS交互中的隐私风险测量

图表 7:究反向DNS记录出现和消失的扫描模式


从扫描实验的结果中,作者发现,客户端离开网络(即,ping不通)往往伴随着PTR记录删除,其时间间隔的统计如图表8和图表9所示。根据这个结论,作者认为,在动态网络中,PTR记录的存在与客户设备的接入之间有很强的联系。在9/10的案例中,PTR记录在客户消失后不到60分钟也随之消失。


【论文分享】DHCP与DNS交互中的隐私风险测量

图表 8:客户端离开网络后,PTR记录消失与发现不能ping通的时延


【论文分享】DHCP与DNS交互中的隐私风险测量

图表 9:时延的累计分布函数


04

【案例分析&缓解措施】


根据识别动态网络及扫描实验的结果,论文已经验证了可以通过反向DNS来动态感知网络上的客户端设备,论文进一步使用几个具体的案例进行说明。


I. 学生Brain的生活
论文在选定的9个网络中选取一个了学术网络(Academic A),并追踪其中一个名叫Brain的同学,结果显示在图表10中。作者发现,brians-air(设备的主机名,可能是Brain的耳机),brians-mbp(设备的主机名,可能是Brain的笔记本电脑)和brians-phone(设备的主机名,可能是Brain的手机)的行为极具规律性,尤其是brians-mbp总是在每天中午上线。另外brians-phone和brians-mpb似乎在第五周的周四离开了网络,而周五正好是感恩节。这说明,论文仅通过扫描反向DNS解析的结果就可以详细地分析某个用户的网络行为。


      【论文分享】DHCP与DNS交互中的隐私风险测量

        图表 10:名为Brain的学生(们)的上网模式


II. 居家工作模式
在第二个案例中,作者不再追踪特定的用户,而是分析几个网络的整体动态,结果显示在图表11中。作者结合与Academic-A发布的新冠疫情相关的新闻报道,分析了其网络活动,可以看到两者之间具有明显的联系。具体来说,当新冠疫情严重时,网络活动减少;而当新冠疫情缓解时,网络活动增加。


      【论文分享】DHCP与DNS交互中的隐私风险测量图表 11:三个学术网络和两个企业网络的上网流量趋势


III. 何时实施抢劫
作者随后充分发挥了想象力,认为反向DNS泄露出的隐私甚至还可能帮助抢劫犯确定最佳的抢劫时间。假设犯罪者要在学术机构A实施抢劫,其一定希望周围活跃的人越少越好,以避免被发现。而这反映在网络Academic-A中,就是找一个活跃设备最少的时刻。如图表12所示,网络中的用户在白天和傍晚网络更活跃,而晚上和清晨的活跃性相对更低。根据这个发现,对抢劫者来说,早上6点是抢劫的绝佳时机。


      【论文分享】DHCP与DNS交互中的隐私风险测量

图表 12:两种探测方法得出的某个学术网络一周之内上网流量趋势图


缓解措施

通过大规模的实验证实了DHCP和DNS的交互带来的隐私风险之后,论文也给出了一些缓解措施,比如:


1. 通过哈希等方法消除主机名中包含的有价值信息;

2. 选择一些不会向DNS服务器更新信息的DHCP服务器软件;

3. 手工配置DHCP服务器,使其不向DNS服务器更新PTR记录。


05

【总结】


该论文对DHCP服务器和DNS的交互带来的隐私风险进行了深入研究。论文依据两个大规模全网空间反向DNS测量结果,筛选出动态网络并进一步过滤,进而在这些网络上验证反向DNS记录的出现和消失与设备是否接入网络之间的关系。进一步,论文进行了一些案例分析,证实了上述隐私泄露的安全风险。最后,论文给出了避免上述隐私风险的一些缓解措施。



原文链接
https://arxiv.org/pdf/2202.01160.pdf

参考文献

[1] B. Huffaker, M. Fomenkov, and k. claffy. 2014. DRoP: DNS-based router positioning. ACM SIGCOMM Computer Communication Review 44, 3 (2014), 5–13.
[2] J. Chabarek and P. Barford. 2013. What’s in a Name?: Decoding Router InterfaceNames. In 5th ACM Workshop on HotPlanet (HotPlanet 2013) (Hong Kong, China). ACM Press
[3] S. Bortzmeyer. 2016. DNS Query Name Minimisation to Improve Privacy. RFC7816. RFC Editor.
[4] W. B. de Vries, Q. Scheitle, M. Müller, W. Toorop, R. Dolmans, and R. van RijswijkDeij. 2019. A First Look at QNAME Minimization in the Domain Name System.In 20th International Conference on Passive and Active Measurement (PAM 2019).147–160.
[5] P. Hoffman. 2018. DNS Queries over HTTPS. RFC 8484. RFC Editor.
[6] Z. Hu. 2016. Specification for DNS over Transport Layer Security. RFC 7858. RFC Editor.
[7] C. Huitema. 2016. Anonymity Profiles for DHCP Clients. RFC 7844. RFC Editor.
[8] OpenINTEL. 2021. OpenINTEL: Active DNS Measurement Project.
[9] Rapid7. 2021. Project Sonar.



编辑&审校|刘明烜、张一铭



原文始发于微信公众号(NISL实验室):【论文分享】DHCP与DNS交互中的隐私风险测量

版权声明:admin 发表于 2022年12月2日 下午5:01。
转载请注明:【论文分享】DHCP与DNS交互中的隐私风险测量 | CTF导航

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...