谁能解释什么是 DNS 区域传输攻击或提供任何链接,纸?
我已经用谷歌搜索了,但找不到任何有意义的东西。
谁能解释什么是 DNS 区域传输攻击或提供任何链接,纸?
我已经用谷歌搜索了,但找不到任何有意义的东西。
DNS 区域传输是 DNS 服务器将其部分数据库(称为“区域”)的副本传递到另一个 DNS 服务器的过程。这样您就可以拥有多个 DNS 服务器来回答有关特定区域的查询;有一个主 DNS 服务器和一个或多个辅助 DNS 服务器,辅助服务器向主服务器请求该区域的记录副本。
一个基本的 DNS 区域传输攻击不是很花哨:你只是假装自己是次要的,然后向主要的请求区域记录的副本。它把它们送给你;DNS 是真正老式的 Internet 协议之一,它是在 Internet 上的每个人都知道其他人的姓名和地址时设计的,因此服务器隐含地相互信任。
阻止区域传输攻击是值得的,因为您的 DNS 区域的副本可能会泄露有关您的内部网络的大量拓扑信息。特别是,如果有人计划通过投毒或欺骗来破坏您的 DNS,他们会发现拥有真实数据的副本非常有用。
所以最佳实践是限制区域传输。至少,您告诉主服务器的 IP 地址是什么,而不是转移给其他任何人。在更复杂的设置中,您签署转移。所以更复杂的区域转移攻击试图绕过这些控制。
SANS 有一份白皮书进一步讨论了这一点。
@GrahamHill 已经很好地解释了区域转移,但我会尝试补充一些。
通过能够从 DNS 服务器查询所有记录,攻击者可以轻松确定哪些机器可以访问。区域传输可能会显示可从 Internet 访问的网络元素,但像 Google(站点:.target.)这样的搜索引擎无法识别。这里的教训是,你不想让坏人免费获得信息!他们应该为此付出最大的努力……
关于 DNS 区域传输的一个有趣事实是,它们通常依赖于 TCP 端口 53 而不是 UDP 端口 53。如果您看到 TCP 端口 53 正在使用中,它可能会告诉您有人在进行区域传输。
要在易受攻击的 DNS 服务器上实际完成区域传输,您可以发出以下命令:
视窗:
nslookup
> server <DNS you are querying>
> set type=any
> ls -d <target>
Unix(在 Unix 上不推荐使用 nslookup):
dig -axfr @<DNS you are querying> <target>
DigiNinja 有一个很好的教程/解释区域传输是如何工作的以及为什么它们应该被限制。查看zonetransferme。