DNS 重新绑定:它是如何工作的?

DNS rebinding: how it works?

我一直在研究 DNS 重新绑定攻击,但我不明白实际的重新绑定是如何发生的。最有用的资源是 Robert Hansen 的 video

有一件事我不太明白:攻击者是否必须拥有 DNS 服务器才能使攻击生效?如果是这样,目标是否必须向攻击者的服务器发出请求?或者它适用于任何可用的 DNS,并且浏览器内部有一些东西强制重新绑定?

攻击者必须拥有自己的 DNS 服务器,这将是 DNS 搜索其域名的最后一跳。这就是妥协。该服务器在它所服务的 DNS 记录上有一个非常小的 TTL,第一次将向该站点提供实际的 DNS 记录,第二次调用它时将指向某个隐藏服务器的恶意 DNS 记录(通常由恶意java 正在网站上提供脚本。