我读到了一个名为“Predict”的恶意软件相关 DNS 查询的免费数据集的发布。研究人员或网络安全团队可以下载或查询此数据集,并使用它来识别使用 DNS 的恶意软件通信。商业供应商已经在提供此类服务。
我知道恶意软件可能使用 DNS 的两种方式。
- 查找为了命令和控制目的而应该与之通信的网站的地址。
- 使用 DNS 本身来建立隧道。
新闻文章中的数据集似乎可以同时防止两者。
在第一次使用中,恶意软件程序会生成多个域名并查询每个域名,直到其中一个被解析为 IP 地址。然后,机器人会联系命令和控制服务器的 IP 地址。这是一种方便的方法 1) 不透露恶意软件本身的特定 IP 地址。2) 如果特定的命令和控制服务器被关闭(或被网络管理员阻止),则恢复。
第二种使用中的 DNS 更难停止,因为它通过 DNS 本身而不是 TCP/IP 进行通信。使用 DNS 服务器来尝试过滤这样的流量可能是不切实际的。
因此,像“预测”数据集这样的合作使得恶意软件使用 DNS 的风险更大,因为它每天都会收集数以万计的 DNS 查询并通知全世界。当然,它不会全部找到它们,但可能足以让使用 DNS 的风险更大。
那么,知道了这一点,为什么还要使用 DNS 呢?从恶意软件的角度来看,仅仅联系一个或多个直接 IP 地址而不是使用 DNS 不是更容易、更安全吗?为什么不跳过注册域而只使用闪烁的IP地址并用于相同的目的?也许通过检查 DNS 流量来减慢 DNS 速度的问题仍然会阻止充分利用像“预测”这样的数据集?