我正在尝试利用 Kaminsky 错误来完成学校作业。我想利用的特定版本的错误是发送一个伪造的数据包,其中包含有关 www.domain.com 的虚假信息,以便所有尝试访问 www.domain.com com 的用户都将被定向到其他地方。我的数据包看起来像这样,
标志:8580
查询:???.domain.com
答案:???.domain.com A IN xxxx
权限 RR:domain.com NS IN ns www.domain.com
附加 RR:www.domain.com A IN xxxx
我的问题是我的受害者 DNS 服务器正在缓存地址 www.domain.com 作为附加信息,但在我向服务器查询 www.domain.com 时没有使用它。相反,它会出去并获取正确的记录。DNS 服务器位于我的 LAN 上的 VM 上。它是bind9,我相信9.9。我已经尝试关闭 dnssec,端口随机化已关闭,我的想法是绑定已经有足够的时间来修补服务器,足以避免这种特殊的利用。有什么想法或建议吗?我应该尝试旧版本的绑定吗?我开始这个项目是为了了解有关 DNS 的更多信息,并且我学到了很多东西,但是现在我已经到了这一点,这只是令人沮丧。如果您想从我的设置中查看任何内容,我应该可以为您提供。提前感谢您的任何建议。
我想问这个问题而不说“帮我破解这个东西”的更好方法是已经采取了哪些安全措施来修补 Kaminsky 错误?特别是在 bind9 上,但总的来说也很好。