DNSSEC 有关

DNSSEC 有关

我以软件的身份提出这个问题(也是因为这里过去出现过一些 DNSSEC 问题)。

http://en.Wikipedia.org/wiki/DNS_cache_poisoning#Prevention_and_mitigation

我在维基百科上看到这一点,想知道是否有人可以为我解释一下:

“如上所述,DNS 请求的源端口随机化,结合使用加密安全的随机数来选择源端口和 16 位加密随机数,可以大大降低 DNS 竞争攻击成功的概率”

我不明白端口随机化如何防止客户端的 DNS 中毒攻击?或者这仅指 DNS 服务器?客户端可以使用相同的端口随机化吗?

答案1

DNS要求总是从客户端到服务器,因此源端口在客户端,并且是需要随机化的端口。

服务器的回复来自端口 53,发往客户端的原始源端口。您可能已经从阅读中猜到了,如果可以预测客户端使用的下一个源端口,那么回复可能会在真正的回复之前被伪造。

请注意,当 DNS 服务器不是请求域的授权机构并且启用了递归时,它本身就是客户端。因此,您向 DNS 服务器询问 Google.com 的 IP 地址,然后该 DNS 服务器会开始查询根服务器以得出答案。此时,回复的真实性至关重要,因为请求 DNS 服务器将缓存所有响应,并将它们作为对任何后续请求的答案提供。

如果我可以预测你的 ISP 的 DNS 服务器在下一次查询中会使用的源端口,那么我就可以在真正的回复之前将我自己的答案注入到请求中,那么你的 ISP DNS 就会对使用它的每个人造成毒害。

(请注意,为了(希望)清晰起见,此场景已大大简化)

相关内容