当我们谈到域、DNS和相关数据(如SSL证书或屏幕截图)的基本用例时,通常会对我们所谈论的内容及其重要性有一个基本的理解。这些对话包括以下内容:
但我们通常不会花那么多时间在我们如何发现那些潜在的危险流量以及如何将我们在受保护的环境中看到的东西和从诸如DomainTools虹膜调查或有远见DNSDB数据库。本博客试图深入研究这一领域。
在公路交通工具的世界里,这个术语印迹指的是与路面实际接触的那部分轮胎——汽车是4,摩托车是2(除非它有一个前轮,但那是另一个博客)。这辆车的所有运输方面的花哨工程——发动机、变速器、悬架、刹车和辅助系统——都在轮胎和路面之间相对狭小的接触面上发挥作用。
这就像在一个受保护的环境中的交通流量,而数据可以帮助安全人员理解这些流量。当与internet相关的事件发生时,信息流从客户机设备流向服务器,然后从该服务器返回(是的,这过于简化了,但这个概念适合我们这里的目的)。留下法医“轮胎痕迹”的地方是网络法医接触补丁。下面是一些例子:
如果我们想要尽可能多地了解有问题的流量的背景信息,那么这些就是需要关注的地方,因为一旦我们提取了关键的可观察对象——我们今天的目的是域名和IP地址——我们就可以打开流量的OSINT(开源情报)罐头,以发现更多关于真正发生的事情。
并不是在典型受保护环境中记录的每个事件都有与之关联的域名。事实上,这样做的人相对较少。幸运的是,这少数人存在于每个网络中,所以你有黄金的矿脉;你只需要挖掘它们。
考虑一个基本的Web事务。让我们假设一个用户——我们称她为萨拉——访问了一个网站。如果她在办公环境中工作(或者在家里工作,但通过一个VPN,所有的通信都通过办公室,这在许多远程工作环境中很常见),web事务对我们来说就会不同,这取决于我们在哪里查看它。例如:
为什么在我们的日志和事件中获取域名是特别有价值的,有几个原因——但那些是我们已经做过的事情之前讨论(如果你好奇,请务必看一看!)现在,让我们假设是这样解决(对不起,不是对不起!)域名是有价值的法医文物。
如果萨拉与该网站的连接引起了警报——例如,它的IP地址是否在危险地址的声誉列表中——我们就会想要了解更多有关该事件的信息。但如果我们只有这个IP,我们就会面临一些挑战:
让我们从日志中找到这些域名!
如果我们使用所有的,甚至大部分的日志源,这些日志源可能为我们提供网络事务中的域,我们将得到大量的数据。就像那只多年来一直在追的狗抓住了那辆车一样,收集所有这些木头能给我们带来比我们想象中更多的收获。这就引出了一些我们需要解决的问题,例如:
如果我们要保留每一个DNS记录,我们肯定会遇到相当大的数据管理问题。但如果我们预先过滤数据,缩小范围呢?我们有什么方法可以用来减少记录到更易于管理的水平,同时仍然保留从事件响应或积极防御的角度来看可能重要的东西?答案是肯定的。是的,有。
最有用的预过滤技术之一是消除与流行域请求相关的任何DNS日志数据。这将大大减少工作量,因为大多数用户(甚至在大多数环境中运行的非用户发起的自动化流程)都将流量发送到相对知名的资源。有几个可用的资源(在著名的Alexa网络排名服务的消亡),你可以考虑:
但即便如此,可能也不足以缩小范围。如果非top-million日志数据的数量仍然过高,您可以考虑其他一些过滤标准:
如果您选择使用其中的一种或多种方法,那么您现在就拥有了对域列表进行一些精简的条件。你的目标是一个小得多的域名列表,在网上或你的过滤器是不知名的。其中一些域名可能是无害的,比如你叔叔弗雷德的新虚荣邮票收集网站;但说到恶意域名,其中很大一部分是年轻的(最近创建的),而且相对不知名(所以它们不会出现在前百万的名单上)。
一个好的预过滤脚本可能是这样的:
有了这个缩小的领域列表,我们仍然需要一种程序化的方法来识别那些可能是最危险的——特别是当我们计划进行一些搜索或基于我们所了解的一些检测工程时。这就是丰富域名发挥作用的地方,通常使用SIEM和SOAR等工具。在第2部分中,我们将了解如何进行这种充实。
订阅DomainTools每月通讯,以获得创新的,实用的建议,以改善他们的安全态势。我们的目标是帮助组织在其组织的日常防御中更高效、更有知识、更积极主动。