狩猎女神项目组技术报告北京大学计算机科学技术研究所基于Vmware的第三代虚拟Honeynet部署以及攻击实例分析TheArtemisProject/狩猎女神项目组柳亚鑫,吴智发,诸葛建伟一、先决条件在阅读本文前,请先阅读KnowYourEnemy:Honeynets,KnowYourEnemy:GenIIHoneynets和KnowYourEnemy:HoneywallCDROMRoo,对Honeynets的概念和第三代Honeynet(Roo)技术有个清晰的认识,并完全了解Roo的部署软/硬件要求。请首先阅读狩猎女神项目技术报告《基于Vmwareworkstation的虚拟Honeynet》,其中有关类似部分将不再赘述。二、什么是虚拟Honeynet按照Honeynet组织的定义:虚拟Honeynet是一种可让你在单一的机器上运行所有东西的解决方案。之所以称为虚拟是因为运行在机器上的各个操作系统看起来与运行在单独一台机器上的操作系统并没有什么外观上的区别。下面是本文部署的第三代虚拟Honeynet的网络拓扑图。狩猎女神项目组技术报告北京大学计算机科学技术研究所虚拟Honeynet主要分成两类:1.自包含虚拟Honeynet(Self-ContainedHoneynet):这种类别的Honeynet把它的各个组成部分都安装在单一的一台机器上。2.混合虚拟Honeynet(HybridHoneynet):这种类别的Honeynet并不局限与一台机器,而是把它的组成部分分开在多台机器上部署。我们在这里部署的自包含的虚拟Honeynet。下面首先介绍一下VMware的网络连接方式。三、VMwareWorkstation上的网络连接方式VMwareWorkstation是一个虚拟机软件,可以运行在Linux和Windows两种平台下,它可以模拟主板、内存、硬盘、网卡、声卡、USB口等多种硬件。运行在VmwareWorkstaion(下面简称Vmware)上的操作系统的网络连接方式有三种:桥接方式(Bridge):在桥接方式下,Vmware模拟一个虚拟的网卡给客户系统,主系统对于客户系统来说相当于是一个桥接器。客户系统好像是有自己的网卡一样,自己直接连上网络,也就是说客户系统对于外部直接可见。狩猎女神项目组技术报告北京大学计算机科学技术研究所网络地址转换方式(NAT):在这种方式下,客户系统不能自己连接网络,而必须通过主系统对所有进出网络的客户系统收发的数据包做地址转换。在这种方式下,客户系统对于外部不可见。主机方式(Host-Only):在这种方式下,主系统模拟一个虚拟的交换机,所有的客户系统通过这个交换机进出网络。在这种方式下,如果主系统是用公网IP连接Internet,那客户系统只能用私有IP。但是如果我们另外安装一个系统通过桥接方式连接Internet(这时这个系统成为一个桥接器),则我们可以设置这些客户系统的IP为公网IP,直接从这个虚拟的桥接器连接Internet,下面将会看到,我们正是通过这种方式来搭建我们的自包含的虚拟Honeynet的。狩猎女神项目组技术报告北京大学计算机科学技术研究所四、基于VMwareWorkstation的第三代虚拟Honeynet的部署实例下面是部署基于Vmware的第三代虚拟Honeynet的软硬件要求:软件:VmwareWorkstation4.2.5-8848forLinux;vmware-any-any-update93.tar.gzHoneywallCDROM;硬件:P4/1024M/80G/Inteleepro1000部署过程如下:1.Vmwareworkstation的安装及配置1)安装VMware-workstation:我们从VMware的网站上下载了linux平台下的VMware-workstation,使用下面的命令进行安装:安装过程按默认的就行,关于VMware的网络配置会在下面有详细介绍。2)为VMware-workstation安装patch:这个版本在内部的桥接上有点bug,我们下载了补丁vmware-any-any-update93.tar.gz并进行安装:狩猎女神项目组技术报告北京大学计算机科学技术研究所3)对VMware的内部网络进行配置:我们使用的这台电脑有三个物理网卡,分别是eth0,eth1和eth2,其中eth0是千兆网卡。由于Honeywall不能识别千兆网卡,所以我们使用了eth1和eth2作为桥接的网卡,来生成两个不同的网段,一个是Honeynet的网段,一个是管理接口的网段。分别把VMware的vmnet0和vmnet2桥接到eth1和eth2上。具体步骤如下输入命令:vmware-config.pl根据提示进行配置:VMware的虚拟网络桥接应该是下面这样:主机的两个网卡设的IP应该与vmnet0和vmnet2的IP是处于一个网段的,这里我们把eth1的IP设为192.168.0.2,而把eth2的IP设为192.168.1.2,这样管理机和虚拟Honeypot就不在同一个网段上,保证了管理机的安全性。2.RooHoneywall的安装及配置1)安装RooHoneywall:输入命令:vmware&,打开VMware-workstation.从File菜单New一个VirtualMachine,安装方式选择custion,如下:狩猎女神项目组技术报告北京大学计算机科学技术研究所选择2.6内核:设定内存,建议至少256MB:狩猎女神项目组技术报告北京大学计算机科学技术研究所选择网络连接方式,这个虚拟网卡将作为eth0连接外部网络,所以选择了Bridged方式桥接到主机的物理网卡:狩猎女神项目组技术报告北京大学计算机科学技术研究所选择I/O适配器类型:安装方式,我们选择了Createanewvirtualdisk:选择虚拟磁盘类型,由于HoneywallCDROM只支持IDE,故这里选择IDE类型:狩猎女神项目组技术报告北京大学计算机科学技术研究所作为Honeywall,需要有三块网卡,上面已经有了连接外部的虚拟网卡eth0,下面我们添加另外两块虚拟网卡,分别是连接内部网络的eth1和连接管理机的eth2。在左边的Favoriates里选择Honeywall系统,右键点击选择Edit,出现虚拟机配置面板,在Hardware标签下面选择Add,添加一个虚拟网卡,在Usevirtualdevice里选择viance,而不要选择vmxnet,如果选择vmxnet的话,在安装的时候系统将认不到这个网卡,在Networkconnection里选择Custom方式,并选择/dev/vmnet1,这个虚拟网卡即是连接Honeypots的eth1:狩猎女神项目组技术报告北京大学计算机科学技术研究所然后再添加另外一个网卡,对于Usevirtualdevice也选择viance,Networkconnection选择狩猎女神项目组技术报告北京大学计算机科学技术研究所Custom方式的/dev/vmnet2,这个网卡即是连接管理机的eth2:下面就开始安装Honeywall的CDROM了:我们选择从硬盘镜像安装,具体步骤就是在虚拟机配置面板选择DVD/CD-ROM,右面面板的连接选择使用ISO镜像,并选定镜像的位置,这里我们使用的是最新版的RooHoneywall:roo-1.0.hw-139.iso。然后启动虚拟机,进BIOS设定从CDROM启动,就可以开始安装了,安装过程几乎是自动化的。狩猎女神项目组技术报告北京大学计算机科学技术研究所RooHoneywall系统只允许用帐户roo来登陆,然后su–到root帐户,并进行相关操作,roo和root帐户的初始密码都是honey,登陆成功可以更改。如下图:2)配置RooHoneywall首次启动系统时,会进入Honeywall的配置界面,如下,以后在字符界面输入menu也可进入配置界面。几乎所有的honeywall配置和管理功能都可以通过这个用户界面进行配置。我们选择interview的方式来进行配置:狩猎女神项目组技术报告北京大学计算机科学技术研究所下面是配置的五个阶段,没有提到的按默认即可。第一阶段是配置Honeywall的网关信息:防火墙的模式,这里选择bridge:狩猎女神项目组技术报告北京大学计算机科学技术研究所Honeypot的IP地址,多个IP用空格隔开,虚拟主机Honeywall在这里是作为一个桥接器,而VMware的默认桥接vmnet1是桥接到了eth1上,所以Honeypot的IP应该与主机的eth1同一个网段,作为测试,我们设了两个私有IP192.168.0.4和192.168.0.5,而把主机eth1的IP设为了192.168.0.2。局域网CIDR前缀:局域网广播地址:如果网卡已经安装,会提示找到了eth0(外部)和eth1(内部)。狩猎女神项目组技术报告北京大学计算机科学技术研究所第二阶段是管理接口:首先选择是否建立管理接口:我们选择建立,询问以那个网卡作为管理接口,这里是eth2:如果虚拟网卡eth2已经安装,将弹出找到eth2的提示:管理接口的IP地址,子网掩码,网关:狩猎女神项目组技术报告北京大学计算机科学技术研究所管理接口的DNS域,我们填入roo,还有DNS服务器的IP地址:询问是否激活并在下一次启动时使用配置SSH登陆,监听端口,是否允许远程登陆,和管理接口流入和流出的数据的端口号:狩猎女神项目组技术报告北京大学计算机科学技术研究所第三阶段是数据配置控制:连接限制,可选的时间单位有秒,分,小时,天和月。TCP,UDP,ICMP和其他协议分别设置单位时间允许出境连接包的上限,选择防火墙是否将包发给snort_inline,snort_inline对已知攻击包有三种处理方式Drop、Reject、Replace三种选择。狩猎女神项目组技术报告北京大学计算机科学技术研究所第四阶段是配置DNS,设置是否允许对honeypot不受限制的DNS访问以及是否允许不受限制的访问外部DNS。第五阶段是配置自动报警和sebek选项。狩猎女神项目组技术报告北京大学计算机科学技术研究所若选择自动报警,honeywall就会启动swatch,只需设置接收报警的Email地址即可。设置sebek包的目的地址:设置sebek包的目的端口(默认为1101):设置sebek包的选项,sebek包选项有Drop、DropandLog、Accept、AcceptandLog。Drop就是在防火墙丢弃sebek包,但snort会将其记录下来;DropandLog和Drop一样,另外防火墙日志也会记录;Accept是在防火墙接收包;AcceptandLog和Accept一样,同时防火墙日志也会记录。狩猎女神项目组技术报告北京大学计算机科学技术研究所3.Honeypot的安装及配置1)安装Honeypot安装Honeypot时,网络连接方式为:Usevirtualdevice选择vianceNetworkConnection选择Custom的vmnet1。vmnet1为VMware内部的一个虚拟交换机,组成虚拟的蜜网网络。安装的Honeypot主机连接到这个网络,通过Honeywall这个桥接器,与外界网络连通。狩猎女神项目组技术报告北京大学计算机科学技术研究所其他的安装与物理Honeypot的安装就一样了,只是在设置网络IP的时候要设成我们在配置Honeywall的时候填入的IP地址。作为测试,我们只安装了一个Honeypot,是RedHat9.0的操作系统。2)在Honeypot上安装SebekClient在linux环境下安装sebek客户端,需要更改sbk_install.sh文件,找到下面几个变量,更改为右边的相应参数。目的IP,MAC地址,源端口,目的端口DESTINATION_IP=192.168.0.3(MANAGEMENT_IP)DESTINATION_MAC=00:0C:29: