通配符CNAME记录并发症?


2

所以我们使用Route53,我想设置一个通配符CNAME记录,将任何不匹配的子域重定向到我们的主域。我试了一下,一切看起来都运行正常,但当我告诉同事时,他非常反对通配符CNAME记录,说明存在问题/安全问题,但不会详细说明。除了与特定DNS服务器实现隔离的问题之外,网络搜索并未真正找到对此问题的任何解释。

话虽如此,通配符CNAME记录存在安全问题?如果您的顶级域名只有证书,那么SSL证书是否存在问题?即CNAME重定向是否意味着服务器看到的引荐来源将是子域或顶级域?那么跨源问题呢?

他特别喜欢在执行301永久重定向的子域中设置服务器的麻烦。当DNS RFC 1034和2672描述了这种机制并且Route53似乎支持这一点时,这似乎过于复杂。

如果有任何明确建议不设置通配符CNAME记录,你能解释为什么以及在什么情况下你建议反对它?


2
任何无法解释他们所谈论的内容的人都不知道他们在谈论什么,而只是重复他们听到的并且可能不理解的内容。如果没有原始资源或某种备份,请忽略它。(或者,充其量,使用它来寻找原始来源,并对该位置进行某种技术防御。事实上,你甚至不知道这个位置到底是什么。)
David Schwartz

Answers:


1

没有这样的安全问题。

但是,我必须指出,DNS没有提供任何机制来“重定向”本身任何请求; CNAME定义了另一个DNS名称的别名,但实际上“重定向”浏览器需要HTTP服务器 - 否则访问的用户whatever.example.com仍会whatever.example.com在其浏览器地址栏中看到,而不是example.com“重定向”本身就会行动。Web服务器也会whatever.example.com在请求中看到,如果您使用虚拟主机,这可能会导致问题。

这个警告,实际上只有两种情况,通配符DNS记录可能会导致问题:

  1. 您无法提供NXDOMAIN响应,因为每个子域都存在; 这只是一个问题,如果使用DNSSEC,即使这样,它通常无关紧要。
  2. SSL只能保护它所发布的域 - 但是,如您所述,通配符SSL证书可以消除此问题。

在你的情况下(根据我从你的问题中收集的内容),我很可能会使用通配符记录以及提供301重定向到我的“正确”地址的Web服务器; 一些DNS提供商使用“web转发器”使这方便,只需要注意,从技术上讲,这是一个不受您控制的Web服务器,它通过301重定向响应这些请求。(这可能听起来很可怕,但如果它是一个值得信赖的公司,那就没什么好担心的了,如果它不是一个值得信赖的公司,你首先就不应该让你的DNS托管它们!)


因此,只要请求来源与证书上的域不匹配,顶级A记录另一端的服务器就会执行301重定向,那么应该没有问题,对吗?
安德鲁德安德拉德2014年

1
这当然是一种解决方法,如果你不从该服务器服务任何其他虚拟主机应该没有任何问题。实际上,即使你是,如果你从“默认”虚拟主机进行重定向,你实际上可以“覆盖”任何主机名 - 所以,是的,我会这么认为。
Kromey 2014年

此外,通配符CNAME记录是否也能防止不太严格的ISP劫持NXDOMAIN?您能否详细说明DNSSEC的NXDOMAIN问题,因为我不熟悉DNSSEC。
安德拉德2014年

是的,当然,它会阻止NXDOMAIN劫持,尽管只针对您域名的子域名。关于DNSSEC的问题在于,它不仅应该能够提供响应的认证,还能够提供经过认证的“非响应”,即签名的NXDOMAIN响应。在实践中,我想不出一个实际上这个问题的单一案例,但是当我走出规范时,我总是犹豫不决。换句话说,“真正的”答案很可能是“无关紧要,期限”,但由于规范要求通过身份验证的NXDOMAIN,我不愿意直截了当地说。
Kromey 2014年

1
不。如果客户端发出HTTPS请求,并且您没有该域的有效证书,则只有两个选择:SSL证书错误或根本没有响应。在证书错误之后,您当然可以重定向您想要的所有内容,但是如果没有获得有效的证书,则无法解决该错误。
Kromey 2014年

1

我现在使用通配符多年了,从来没有遇到任何问题。到目前为止,我发现2003年的Windows手机是唯一没能正确处理通配符的设备。

使用通配符的恕我直言今天很常见,问题很少出现。从安全角度来看,您可以获得一些额外的攻击媒介。例如,您可以参考“someevilXSScode.yourdomain.com”并仍然可以访问原始网站。只有一个小问题恕我直言。


你能举一个例子或进一步解释邪恶的XSS代码示例吗?
安德鲁德安德拉德2014年

基本的想法是,您的域中有一个“可自定义”的部分。想想可能包含在另一个页面中的引用者。或者可以在PHP脚本中处理调用URL。只是猜测...
fr00tyl00p 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.