铬对根DNS流量的影响

2020-08-21 13:51:06

Chrome是一个开源软件项目,它构成了Google的Chrome Web浏览器以及其他几个浏览器产品的基础,包括Microsoft Edge、Opera、Amazon Silk和Brave。自2008年推出以来,基于Chromium的浏览器的受欢迎程度稳步上升,目前约占市场份额的70%。

从早期开始,Chrome就包含了一项名为omnibox的功能,允许用户输入网站名称、URL或搜索词。但这款全功能机型在界面上存在挑战。用户可以输入可以指(内联网)网站和搜索项的类似于“市场营销”的词。浏览器应该选择显示哪一个?Chrome将其视为一个搜索词,但也会显示一个信息栏,上面写着“您是说http://marketing/?吗”如果对该名称的后台DNS查找结果是IP地址。

在这一点上,一个新的问题出现了。Somenetworks(例如,ISP)使用旨在拦截和捕获来自输入错误的域名的流量的产品或服务。这有时被称为“NXDomain劫持”。这类网络上的用户可能会在每一次单项搜索中看到“你是说真的吗”的信息栏。要解决这个问题,Chromium需要知道它是否可以信任网络来提供未被拦截的DNS响应。

在Chromium源代码中,有一个名为intranet_redirect_Detector.c的文件。此文件中的函数尝试加载三个URL,其主机名由随机生成的单标签域名组成,如下面的图1所示。

这段代码导致三次url获取-例如http://rociwefoie/,、http://uawfkfrefre/和http://awoimveroi/-而这又导致对随机主机名的三次dns查找。根据源代码可以推断,这些随机名称的长度为7-15个字符(第151行),并且仅由字母a-z组成(第153行)。在2014年2月之前的代码版本中,随机名称的长度始终为10个字符。

每次启动浏览器、每次更改系统/设备的IP地址以及每次更改系统/设备的DNS配置时,都会执行Intranet重定向检测器功能。如果这些提取中的任何两个解析到相同的地址,则该地址将存储为浏览器的重定向来源。

粗略地看一眼根名称服务器流量,几乎都会显示出与Chromium的探测查询中使用的名称类似的名称查询。例如,下面是一个a.root-servers.net实例收到的20个顺序查询:

$/usr/sbin/tcpdump-n-c 20...20:01:34.063474 IP x.7288>;198.41.0.4.域:34260%[1AU]A?IP-10-218-80-155。(45)20:01:34.063474 IP x.31500>;198.41.0.4域名:64756[1AU]aaaa?FWHJXBNOICUU.。(41)20:01:34.063474 IP x.46073>;198.41.0.4域名:13606 A?Cluster1-1.cluster1.etcd。(42)20:01:2001IP6 x::x.9905>;52824:34.064413:ba3e::2:30.域名:2001[1AU]A?Xxnwikspwxdw。(53)20:01:34.064413 ip x.30251>;198.41.0.4域名:9286%[1AU]aaaa?Cxhplqrpuuck.home。(46)20:01:34.064413 IP x.56760>;198.41.0.4域名:60980%[1AU]A?Ofydbfct.home。(42)20:01:34.065295 IP x.15410>;198.41.0.4域名:21829[1AU]A?Wwtsjikkls.。(39)20:01:34.065295 IP6 x::x.58815>;2001:503:ba3e::2:30.域:标志[.],ACK 3919467200,Win 30118,长度0 20:01:34.065295 IP6 x::x.58815>;2001:503:ba3e::2:30.域:标志[F.],序号0,ACK 1,Win 30118,长度0 20:01:34.065295 IP x.17442>;198.41.0.4.域:32435%[1AU]A?很久没见了。(44)20:01:34.065295 IP x.35247>;198.41.0.4域名:1328%[1AU]A?Dev-app.stormwind.local。(52)20:01:34.065295 IP x.18462>;198.41.0.4域名:23433[1AU]aaaa?Liffezmsdw回家。(44)20:01:34.065295 IP x.40905>;198.41.0.4域名:40371%[1AU]A?Sqtpvvmi.home。(42)20:01:34.066283 IP x.18125>;198.41.0.4域名:45688[1AU]A?Kktaruyy。(37)20:01:34.066283 IP x.7986>;198.41.0.4域名:60608[1AU]A?布丁利汉。(40)20:01:34.066283 IP x.53489>;198.41.0.4域名:27734%[1AU]A?IP-100-65-32-140。(45)20:01:34.066283 IP x.54028>;198.41.0.4域名:41670 A?Qvo7-itirqg3g.www.rabbitair.co.uk.notary-production.。(69)20:01:34.066283 IP x.43866>;198.41.0.4域名:21093%[1AU]A?IP-10-0-71-17。(42)20:01:34.066283 IP x.41141>;198.41.0.4域名:49747[1AU]A?艾杜。(32)20:01:34.066283 ip x.36283>;198.41.0.4域名:65449[1AU]srv?_ldap._tcp.dc._msdcs.mwaa.local。(60)