在过去的几年里,Honeynets证明了他们作为一个主要研究blackhat组织所使用的攻击工具,策略,和动机的安全组织的价值。对于某些组织更好的理解和防御所面临的威胁来说,这些信息是非常重要的。Honeynet的主要问题之一是它们是深奥的,难以构建的,难以维护的资源。Honeynet要求对物理系统和安全机制进行多样的有效的配置。然而,Honeynet工程正在研究一种新的,可能的,虚拟Honeynets。这些系统共享很多传统的Honeynets的价值,但是拥有在一个系统上运行所有系统的优点。这便使虚拟Honeynets构建更廉价,配置更容易,维护更简单。
什么是Honeynet
Honeynets是honeypot的一种形式。Honeypot是用来让人攻击,存在安全风险的资源。而Honeynet是一种交互性很高的Honeypot,这就意味着他要保护和攻击者直接打交道的真正的操作系统。这种高度的交互性能够使我们了解入侵者怎样攻破系统,怎样联系和为什么要入侵系统的一切东西。Honeynets是通过构建一个网络系统来实现这个目的的。这个网络是高度集成的,所有流入和流出的数据都会被控制和捕捉,在这个网络中的每一个系统都是一个真正的Honeypot,每个系统都是为了诱导攻击者的攻击而设计。但是,在目前的大多数组织中,Honeypots是构建相同的,全面的功能系统。当这些系统被攻击时,Honeynets捕获攻击者的所有活动。这些信息使我们能够找到对于我们当前所面临的威胁的一个好的处理方法。关于Honeynets的技术细节,你可以参考Know Your Enemy: Honeynets。我们这篇文章主要讲述构建虚拟Honeynets的不同方法。但这并不是讲述怎样构建一个虚拟Honeynets。怎样建立虚拟Honeynets的细节将在以后讲述。从这个观点出发,你得对Honeynet技术和它们的需求有一个大概了解,特别是数据控制和数据捕获。
虚拟Honeynets
什么是虚拟Honeynet?它是允许你在一个计算机系统上运行你需要的一切东西的一种解决方案。我们之所以用术语虚拟,是因为所有不同的系统都有他们自己的运行‘方式’,而不依赖于电脑。
这些解决方案是可能的,因为有允许在同一时间,同一硬件平台上运行多个操作系统的虚拟软件。虚拟Honeynets本质上不是一种新技术,它们只是简单的采用了Honeynet技术的概念,而把它们在一个系统上实现。和传统Honeynets比较,这种实现有他独特的优点和缺点。
优点是:开销较小,易于管理,因为所有东西都被整合在一个系统中。你可以用一台电脑来配置一个虚拟Honeynet来代替用8个电脑配置的一个全面的Honeynet。但是,这种简单会付出一定的代价。首先,通过硬件和虚拟软件能够配置的操作系统类型具有局限性。比如,大多数Honeynets是基于Intel X86芯片的,所以你只能配置基于这种结构的操作系统。你绝不可能在一个虚拟Honeynet中配置Alteon switch, VAX, 或者Cray computer。其次,虚拟Honeynet会带来风险。特别是攻击者可能会破坏虚拟软件,并且控制整个Honeynet,从而达到对整个系统的控制。最后,有指纹识别的风险。一旦破坏者攻破了你虚拟Honeynet所在的系统,他们就能够确定系统是在一个虚拟环境中运行。
我们把虚拟Honeynets分为两种类别,独立的和混杂的虚拟Honeynet。在这两者当中,独立虚拟Honeynet是比较普遍的。我们将首先定义这两种不同的类型,然后再讲述虚拟Honeynets的不同配置方法。
独立虚拟Honeynet
一个独立虚拟Honeynet是被浓缩到一台电脑上的一个完整的Honeynet网络。这个完整的网络被虚拟的包含在一个单一的物理系统中。一个Honeynet网络的典型组成是,一个用于数据控制和数据捕获的防火墙网关,和在Honeynet中的honeypots。你能够看在这里看到这种配置的图。这种类型的虚拟Honeynet(s)具有的某些优点如下:
l 可移植性。虚拟Honeynets能够搭建于移动电脑上,能被带到任何地方。Honeynet Project在2002年8月的Blackhat简报上证明了这项功能。
l 即插即可捕获。你只需要一台电脑,把他连接到任何一个网络上就可以作好抓获那些blackhats的准备。这使的配置容易许多,因为你仅仅要做的只是物理配置和连接一个系统。
l 资金和空间上的节省。你只需要一台电脑,所以这就减少了你硬件上的开支。他只需要一个很小的空间来放置,仅仅使用一个出口和一个端口!对于我们这些时间和能力有限的人来说,这是一个节省的好办法。
缺点如下:
l 如果硬件出了问题,整个Honeynet将不能使用。
l 高质量的电脑。尽管一个独立的Honeynets只需要一台电脑,但是他必须是一个强大的系统。取决于你的设置,你必须拥有足够的内存和处理能力很强的处理器。
l 安全性。因为所有东西都共享硬件资源,所以存在攻击者攻破系统其他部分的危险。这些大多数取决于虚拟软件,稍后将讨论。
l 软件局限性。因为所有东西都在一个系统中运行,你能使用的软件就会受到限制。例如,在Intel芯片上运行Cisco IOS是非常困难的。
混合虚拟Honeynet
混合虚拟Honeynet是传统Honeynet和虚拟软件的混合体。数据捕获,比如防火墙,数据控制,比如IDS传感器和日志在一个隔离的,孤立的系统中。这种孤立减小了被攻击的风险。然而,所有的honeypots都是虚拟的运行在一个单独的窗口中。你可以在这里看到演示图。
这种设置的优点是:
l 安全性:在独立虚拟Honeynets中,存在攻击者攻破honeynet其他部分(比如说防火墙)的危险。在混合虚拟Honeynet中,唯一的危险只可能是攻击者进入其他的honeypots。
l 灵活性:你可以使用多种软件和硬件来实现混合网络的数据控制和数据捕获。例子之一,你可以在网络上使用OpenSnort或者Cisco pix appliance。你也可以运行你想要运行的任何一种honeypot,而放弃在网络上的另一台主机。(虚拟Honeypot’s主机除外)。
一些缺点:
l 不可移植,既然honeynet网络由多台主机组成,那么移动就很困难。
l 时间和空间的高价性:网络中有多台电脑,你将花费更多的精力,空间和资金。
可能的解决方案
既然我们定义了虚拟Honeynets的两种常见类型,那么让我们重点讲述实现一个虚拟Honeynet的可能途径。这里,我们概述出三种允许你自行配置的技术。勿庸置疑,还有其他的意见,比如说Bochs,但是Honeynet Project已经使用并测试过所有这三种方法。三种方法没有好坏之分。相反的,他们各自都有自己独特的优点和缺点,你采用哪种方案能够工作的更好完全取决于你自己。我们要讲述的三种方案是VMware Workstation, VMware GSX Server, 和用户模式 Linux。
VMware Workstation
VMware Workstation是一个长期使用的和确定的虚拟Honeynet的选择。它是为桌面用户设计的,可以运行在Linux和Windows两种平台下。使用VMware Workstation来做虚拟Honeynet的优点是:
l 多种操作系统的支持,你可以在一个虚拟环境中运行各种各样的操作系统(称之为GuestOS’s),包括Linux,Solaris,Windows和FreeBSD Honeypots。
l 网络选择,工作站提供了处理网络的两种方式。第一种是桥,它对混合虚拟Honeynet网络来说非常有用,因为它使honeypot使用电脑的板卡,就像其他主机位于Honeynet网络上一样。第二种选择是 Host-Only 网络, 这对独立虚拟Honeynets来说很好,因为你可以通过防火墙更好的控制网络传输。
l VMware Workstation为每一个客户操作系统创建一个映像。这些映象单单是一个文件,移植性很高。这意味着你可以把他们转移到其他电脑上。你可以通过拷贝备份来恢复一个honeypot到他的最初状态。
l 挂装VMware虚拟磁盘映象的可能性。你可以使用vwware-mout.pl驱动来挂装一个VMware映像。
l 使用简单。 VMware Workstation 有图形接口 ( Windows 和 Linux) ,使得安装,配置,运行操作系统非常简单。
l 作为一个商业产品,VMware Workstation有技术支持,可以升级,可以打补丁。
一些缺点:
l 成本,每个VMware workstation许可花费$300。这对于某些爱好者或者没有收入的学生来说可能有点昂贵。
l 资源需求,VMware Workstation必须在X环境下运行,每个虚拟机都应该有自己的窗口。所以,除了为GuestOS分配内存外,还要为X系统分配内存。
l GuestOS数量限制,你只能用VMware运行很少数量的虚拟机(1-4)。这可能比较有利于小型的Honeynet。
l 源代码不公开,因为VMware源代码未公开,所以你不能进行真正的自定义配置。
l 指纹识别。在honeypot上VMware软件可能会被识别出来,特别是”VMware tools”装在系统上。这就可能把honeypots暴露给blackhat。然而,VMware提供选项设置,使指纹识别更加困难,比如有为虚拟接口设置MAC地址的功能。
VMware有一些好的特征,如挂起虚拟机的功能。你可以暂停VM,当你恢复暂停时,所有进程继续运行,就象什么都没有发生过一样。一旦某个系统有安全隐患,并且入侵者开始ICMP碎片攻击,同时登录到IRC服务器。我们并不想断开连接,因为这样我们将失去很多重要的信息。所以我们可以挂起VM,配置防火墙来阻止攻击,然后恢复VM。VMware和其他虚拟软件的一个有趣的用处就是可以简单快速的配置出虚拟机。。一旦Honeynet有安全威胁,我们可以通过它尽可能多的了解到一些信息。对于虚拟Honeynet来说,我们所要做的所有工作是拷贝文件或者用不能在VMware Workstation中继续使用的磁盘来抛弃任何发生的改变。VMware工作站的另一个特性是可以在HostOS后运行若干个网络。所以,如果你只有一个窗口,你可以将你的honeynet和所有个人电脑放在一个窗口中,而不必担心双方之间的数据损坏。如果你想对VMware和它架设honeypot技术的能力获得更