蜜罐技术:如何跟踪攻击者的活动?(上)

你们中的许多人可能对专业术语“蜜罐(honeypot)”和“蜜网(honeynets)”比较熟悉。虽然从严格意义上讲,有人可能认为它们是安全研究人员的工具,如果使用得当,它们也可以使企业受益。在本文中,我们所使用的“蜜罐”和“蜜网”表示的是同一个意思,蜜罐一般试图模拟一个更大更多样化的网络,为黑客提供一个更加可信的攻击环境。

蜜罐是一个孤立的系统集合,其首要目的是:利用真实或模拟的漏洞或利用系统配置中的弱点(如一个容易被猜出的密码),引诱攻击者发起攻击。蜜罐吸引攻击者,并能记录攻击者的活动,从而更好地理解击者的攻击。蜜罐一般分为两种类型:高交互蜜罐和低交互蜜罐。

类型和折中

高交互蜜罐是一部装有真正操作系统(非模拟),并可完全被攻破的系统。与攻击者进行交互的是一部包含了完整服务栈(service stack)的真实系统。该系统的设计目的是捕获攻击者在系统中详尽的活动信息。而低交互蜜罐只是模拟出了真正操作系统的一部分(如,网络堆栈、过程和服务),例如模拟某个版本的FTP(文件传输协议)服务,其中的代码存在漏洞。这可能会吸引蠕虫查找服务脆弱部分的漏洞,由此可以深入观察到蠕虫的行为。

不过,在你使用这两种蜜罐时,需要做出一些折中。用于网络安全的高交互蜜罐提供了真实操作系统的服务和应用程序,使其可以获得关于攻击者更可靠的信息,这是它的优势。它还可以捕获攻击者在被攻破系统上的大量信息。这一点可能会非常有帮助,比如说,在组织想要收集关于攻击者是如何找到攻破特定类型系统的详细真实数据,以便增加适当的防御的时候。另一方面,这些蜜罐系统部署和维护起来十分困难,而且需要承担很高的副作用风险:例如,被攻破的系统可能会被用来攻击互联网上其他的系统。

虽然低交互蜜罐容易建立和维护,且一般对攻击者产生了免疫,但模拟可能不足以吸引攻击者,还可能导致攻击者绕过系统发起攻击,从而使蜜罐在这种情况下失效。到底部署哪种蜜罐取决于你最终的目标是什么:如果目标是捕获攻击者与系统的详细交互情况,那么高交互蜜罐是一个更好的选择;如果目标是捕获针对某个有漏洞的服务版本的恶意软件样本,使用低交互蜜罐就足够了。

在你决定使用哪种蜜罐部署时,另一个需要考虑的重要因素是:蜜罐是安装在物理系统上,还是安装在物理系统的几台虚拟机上。这将直接影响到系统维护的工作量。虽然虚拟系统自身的确有一系列安全问题,但虚拟系统允许快速回复,并能显著缩短部署和重新部署的时间。

在《蜜罐技术:如何跟踪攻击者的活动?(下)》中我们将介绍高交互蜜罐和低交互蜜罐的部署技巧和实际应用。