首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有人能使用和我一样的DNS服务器劫持我的域名吗?

有人能使用和我一样的DNS服务器劫持我的域名吗?
EN

Server Fault用户
提问于 2015-12-19 06:25:18
回答 4查看 10.7K关注 0票数 50

当我注册一个新的域时,我通过在寄存器的设置中分配它的域名服务器将它发送给我的托管提供商。例如,使用数字海洋,我输入以下内容:

代码语言:javascript
复制
ns1.digitalocean.com
ns2.digitalocean.com
ns3.digitalocean.com

然后在服务器的A记录中添加域设置。我刚刚想到,在同一个主机提供商中的任何其他人都可以添加一个带有我拥有的域的A记录。

有什么能阻止这种情况发生的吗?如果两个使用相同域名服务器的不同服务器试图通过A记录将域分配给自己,那么当您在浏览器中输入该域时,该域将实际解析到何处?是什么防止同一DNS服务器上的域名冲突?

EN

回答 4

Server Fault用户

回答已采纳

发布于 2015-12-19 06:31:14

不要介意下面的注释部分,也不要介意编辑历史记录中先前的答案。在和朋友们聊了大约一个小时(谢谢你@joeQwerty、@Iain和@JourneymanGeek),以及一些愉快的黑客活动之后,我们彻底了解了你的问题和总体情况。抱歉,一开始就把情况完全误解了。

让我们逐步完成这个过程:

  1. 比方说,你在wesleyisaderp.com买NameCheap.com。
  2. Namec堆作为您的注册员将是您填充NS记录的地方。假设您实际上希望在数字海洋上托管DNS区域。
  3. 您可以将闪亮的新域的NS记录指向ns1.digitalocean.comns2.digitalocean.com
  4. 但是,假设我能够确定您已注册了该域,而且您已将NS记录更改为数字海洋记录,然后我将您打到一个数字海洋帐户,并将区域wesleyisaderp.com添加到我自己的帐户中。
  5. 您尝试将区域添加到*您的*帐户中,但是数字海洋显示该区域已经存在于他们的系统中!哦不!
  6. 我从wesleyisaderp.comwesleyisbetterthanyou.com
  7. 随之而来的是欢乐。

有几个朋友和我刚刚完成了这个方案,是的,很有效。如果@JoeQwerty购买了一个域并将其指向数字海洋名称服务器,但我已经将该区域添加到我的帐户中,那么我就是区域管理员,我可以用它做我想做的事情。

但是,考虑到有人必须首先将区域添加到他们的DNS帐户,然后您必须将您的NS记录指向同一主机的名称服务器,以便发生任何邪恶的事情。此外,作为域所有者,您可以随时切换NS记录,并将分辨率从坏区域主机移开。

至少可以说,这种情况发生的可能性有点低。据说,从统计上说,你可以洗牌52张牌,并得到一个订单,从来没有其他人得到,也没有其他人永远不会。我认为这里也有同样的理由。有人利用这一点的可能性是如此之低,而且有更好的捷径存在,这很可能不会发生在野外偶然。

此外,如果你在注册中心拥有一个域名,而有人碰巧在你遇到的数字海洋这样的提供商上划出了一个区域,我相信如果你提供了所有权证明,他们会要求在他们的账户中创建域名的人删除它,因为它没有理由存在,因为他们不是域名所有者。

但是A唱片

第一个拥有一个区域的人,例如数字海洋,将是控制它的人。在同一个DNS基础结构上不能有多个相同的区域。例如,使用上面这些愚蠢的名称,如果我将wesleyisaderp.com作为数字海洋上的一个区域,数字海洋的DNS基础设施上的其他任何人都无法将其添加到他们的帐户中。

有趣的是:我真的把wesleyisaderp.com添加到了我的数字海洋帐户!去吧,试着把它加进你的。不会有任何伤害的。

因此,您不能向wesleyisaderp.com添加A记录。都是我的。

,但是.

呢?

正如@Iain在下面指出的,我上面的第4点实际上太冗长了。我根本不需要等待、阴谋或计划。我只需在一个帐户中建立数千个区域,然后坐等。从技术上讲。如果我创建了数千个域,然后等待它们注册,然后希望它们使用我设置区域的DNS主机.也许我能做点坏事?也许吧?但很可能不是?

向数字海洋道歉& NameCheap

请注意,数字海洋和NameCheap并不是唯一的,并且与此场景无关。这是正常的行为。他们在所有方面都是无可指责的。我只是用了他们,因为这是给出的例子,他们是非常著名的品牌。

票数 63
EN

Server Fault用户

发布于 2015-12-19 09:31:05

除了卫斯理出色的回答,我想补充的是,已经有一个解决方案来防止这种情况发生。它叫DNSSEC。

基本内容如下:

  • 您注册您的域名(我将在这里使用著名的名称wesleyisaderp.com,仅仅是因为。)
  • 您可以将您的名称服务器注册到您的注册服务器,通常是通过使用用户名/密码组合进行身份验证的web接口注册。
  • 您还创建了一个公钥/私钥对,并以DNSKEY记录的形式将您的公钥上传到您的注册官。(这就是注册商可以为顶级域设置到根服务器的信任链的方式--在本例中,是.com的根服务器。)同样,当你用你自己的用户名/密码组合登录时,你会上传这个,所以它是连接到你的域名(S),而不是别人的。
  • 进入名称服务器,输入记录,并使用私钥对结果区域文件进行签名。或者,如果你有一个网络接口到你的DNS托管服务,你上传私钥给他们,以便他们可以签署区域文件给他们。
  • 当Wesley如此粗鲁地试图劫持您的域并将其转到wesleyisbetterthanyou.com时,他的记录将不会被.com根域服务器接受,因为它们没有用正确的密钥签名。如果您的DNS主机提供商是聪明的,他们会立即检查,甚至不允许他尝试添加记录到该领域,除非他有正确的私钥。
  • 当您输入您自己的记录时,它们将由正确的密钥签名,因此它们将工作。
  • 你现在可以坐下来嘲笑韦斯利了。

(在Wesley描述的原始案例中,主要错误是Digital在允许某人为其设置DNS记录之前没有验证域的所有权。不幸的是,他们并不是唯一这样的人;我知道至少有一位瑞典注册官也有同样的问题。)

票数 32
EN

Server Fault用户

发布于 2015-12-19 10:07:57

只要您在DigitalOcean (即将其与您的帐户相关联)声称对域名拥有所有权,在告诉注册商使用他们的名称服务器之前,您就不会有事。

如果有人已经将您的域名与他们的帐户相关联,您将在DigitalOcean名称服务器变得权威之前找到答案。如果发生这种情况,请与DigitalOcean谈谈如何让这个人从他们的帐户中启动。

根据最佳实践,{ns1、ns2、ns3}.DigitalOcean.com不充当其他托管域的递归解析器。如果是这样的话,如果DigitalOcean托管的服务器使用这些服务器作为通用解决方案,那么就会有一个更大的问题。尽管众所周知,这是一种糟糕的做法,但很可能不难找到错误的托管提供商,这为滥用提供了可能性。

票数 7
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/744147

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档