毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 论文 >> 正文

基于Web的电子商城管理系统悠悠电子商城后台设计与实现 第22页

更新时间:2007-10-5:  来源:毕业论文

译文:

 

了解VMware

 

MwareHoneynet技术的发展有着重大的意思。我们通过这篇文章一步一步的教你怎样用商业软件VMware搭建和配置这种解决方案。这种情况下,我们将用5种不同的honeypots搭建一个GenII(第二代Honeynets)。前提是你已经阅读并且了解在KYE: Virtual HoneynetsKYE: Honeynets中讨论过的一些概念。同时,如果这是你第一次从事Honeynet技术工作,我们强烈建议你在实验环境中工作。最后,因为面对的是虚拟软件,你必须意识到攻击者识别出,并且秘密逃出虚拟环境的风险。以上是对你的建议。

 

攻击计划

 

这篇文章的格式有点类似于KYE: User-Mode Linux,它被分成5个部分。第一部分我们将描述什么是VMware,它的工作方式,以及怎样安装它。第二部分,我们将描述怎样配置VMware和安装你的honeypots。第三部分我们将描述怎样在VMware Honeynet中使用IPTables来实现数据控制。第四部分我们将描述怎样使用Snort来实现数据捕获。最后,在第五部分中我们将描述如何测试你的各种设置。

 

Part I: VMware

VMware是一种可以让你在同一时刻运行多种操作系统的虚拟软件。和用户模式Linux不同,VMware允许你运行不同的操作系统,只要它们是能够在Intel X86系列上运行的。VMware是由VMware Inc开发和销售的,实际上你可以选择三种不同的软件产品:Workstation, GSX, 或者ESX。我们将使用三者当中的GSXGSX是设计来在同一时刻运行两个以上的操作系统,支持远程管理的,比Workstation功能更强大的版本。但是,我们这里所讨论的大部分信息一样能够应用在Workstation上。鉴于这篇文章的目的,我们将在掌上电脑上搭建我们的虚拟Honeynet,平台为IBM Thinkpad T23 PIII 1G处理器和768MB的内存。操作系统为Red Hat 7.3

 

VMware是通过在电脑上安装虚拟软件来工作的。此虚拟软件允许你在同一时刻启动和运行多个操作系统。你安装的第一个操作系统被称为HostOS。这是VMware将安装于其中的操作系统。一旦你安装了HostOSVMware,你就可以安装其他的操作系统,它们将运行在虚拟环境中。所有这些其他的操作系统被称为GuestOS's,因为它们就像是在主操作系统上的‘客人’。想要对其工作方式获得更好的理解,请参考Figure 1。在我们的Linux HostOS上安装VMware非常简单,你仅仅需要安装一个RPM包即可。命令类似于:

host #rpm -vi VMware-gsx- 2.0.1 -2129.i386.rpm

Preparing packages for installation...

VMware-gsx-2.0.1-2129

 

Part II: 配置VMware和安装Honeypots

安装完成后的下一步就是配置VMware软件。配置是通过执行命令'vmware-config.pl'来完成的。在配置过程中,VMware很可能会重新编译它自己的一些内核模块。这就是说你要为内核准备编译器和源代码。我们的掌上电脑上运行的内核版本是2.4.18-19.7.x。然后我们确保有源代码:

 

host #uname -r

2.4.18 -19.7.x

host #

host #rpm -qa | grep source

kernel-source- 2.4.18 -19.7.x

marge $ls -l /usr/src

total 8

lrwxrwxrwx 1 root root 19 Dec 26 13:53 linux-2.4 -> linux- 2.4.18 -19.7.x

drwxr-xr-x 17 root root 4096 Dec 26 13:53 linux- 2.4.18 -19.7.x

drwxr-xr-x 7 root root 4096 Jul 12 11:52 redhat

 

Part III: 数据控制

完成VMwarehoneypots配置后的下一步就是数据控制了。数据控制的目的就是要获得攻击者进出Honeynet的一切信息。特别的,我们允许所有进入Honeynet系统的数据,但是限制对外的连接。鉴于这篇文章的目的,我们将使用IPTables这种Linux自带的开放源代码的防火墙来解决此问题。IPTables是一种灵活性相当高的正式的防火墙,有连接限制,网络地址转换,日志记录的功能,和许多其他的特性。我们把IPTables配置成我们HostOS上的过滤器,计算流出网络的数据报。一旦对向外的连接到达了限制的数量,之后所有的连接尝试都会被阻止,保证被入侵的honeypot不会对其他系统造成损害。配置和实现这些性能可能会非常复杂。但是,Honeynet Project编写了一个称作rc.firewallIPTables脚本,它可以帮助你完成所有的工作。你仅仅需要修改脚本变量使它适应你的Honeynet,然后运行脚本。

 

你首先要决定的一件事是,你想使网关运行在第三层的路由模式,还是第二层的网桥模式。第二层网桥模式(也叫做GenII, 或者2nd

generation)是首选的方法。当网关扮演网桥的角色时,就没有数据报路由和数据报的TTL消耗,它成为一个不可见的过滤设备,使攻击者更难发觉。但是,要想使IPTables工作在网桥模式,你的内核必须打补丁来支持它。默认情况下,绝大多数内核都不支持IPTables的网桥模式。Red Hat内核2.4.18-3是少数几个默认情况下支持这种模式的内核之一。如果你想修改内核,你可以在

http://bridge.sourceforge.net/download.html

找到补丁。考虑到这篇文章的目的,我们将假设你的内核确实支持IPTables的网桥模式。如果你的内核不支持网桥模式,请查阅文章KYE: UML获取关于配置rc.firewall来支持第三层路由的更多信息。

 

现在,让我们来详细讲述怎样配置rc.firewall脚本来实现GenII的功能。有两个地方需要配置,网络和控制。实际上,网络在网桥模式中远比在路由模式中简单。在网桥模式中,没有路由,或者任何网络地址转换问题。我们只需简单的把HostOS变成网桥,GuestOS's就可以直接和其他网络通讯了。针对连接问题,我们需要配置允许多少对外连接。我们需要配置的选项如下。首先,你需要设置Guest操作系统的对外IP地址。这些是攻击者要攻击的IP地址,是我们honeypots的有效IP地址。既然我们有五个honeypots,我们需要列出五个IP地址。防火墙需要知道它们的范围。

 

其次,你要识别HostOS的内部接口的名字。默认情况是eth1。但是,我们将使用虚拟接口vmnet1,需要修改这个变量。 LAN_IFACE="vmnet1"

 

最后,既然我们要搭建一个GenII Honeynet,你必须考虑尽量使用Snort自带的功能阻止已知的向外的攻击。描述Snort-Inline的细节已经超过了这篇文章的范畴,它将在以后的文章Know Your Enemy: GenII Honeynet 中讨论。你可能会考虑使用Honeynet Snort-Inline工具包,它有静态的,编译好了的二进制文件,有配置文件,规则库和文档,你可以在Honeynet Tools section找到Snort-Inline工具包。如果你确实想测试这个性能,你需要启用QUEUE选项。注意:如果你启用了这个选项,你必须保证已经运行了Snort-Inline,否者所有外出的数据报都会被丢弃。如果没有作到以上要求,请不要启用这个特性。

 

这些是你需要考虑的最少的变量,可能还会有其他的变量,这将取决于你系统的配置。你还可以更新其他的选项,比如说远程管理,限制防火墙可以发起的连接,给你的honeypots无限制的DNS访问。同样,默认情况下,脚本每小时限制每个honeypot对外的连接如下,9 TCP连接,20 UDP连接,50 ICMP连接,和10个其他的IP连接。脚本的具体内容超出本篇文章的范畴。为了更好的了解这些变量,我们建议你回顾一下脚本的具体内容,在实验环境中尝试不同的配置选项。一旦你完成rc.firewall脚本配置,你就可以通过执行脚本来实现你的目标。记住,你将使你的HostOS采用网桥模式。因此,你的HostOS必须要有网桥工具。对Red Hat系统来说,它是"bridge-utils-0.9.3-4"

 

art IV: 数据捕获

完成数据控制后的下一步是数据捕获。数据捕获的目的是在不让攻击者发觉的情况,捕获他们攻击活动的所有信息。有很多种不同的方法可以实现数据捕获,但是我们主要关注两种。IPTable日志和SnortIPTable日志是当有数据进入或者流出时由防火墙产生的日志。Snort是一种开放源代码的IDS产品,我们可以用它来捕获所有的网络活动,对已知的具有攻击特征的信息发出警告。

 

对于IPTabels来说,日志记录已经通过脚本rc.firewall为我们配置好了。它被配置来记录所有新的对内和对外连接到日志文件/var/log/messages中。任何进来的连接都可能是探测,扫描,或者攻击的迹象。任何对外的连接都表明honeypot可能已经被入侵。IPTable日志的主要价值是警告。而不会告诉我们关于入侵者正在做什么的足够信息。而对于Snort来说,我们可以配置它来捕获进出Honeynet的每个数据报。这里有个捕获和记录入侵者活动的Snort配置文件Snort

config file。你可以在这里看到一个简单的Snort启动脚本,它可以启动Snort并使用推荐的Snort配置文件。别忘了更新启动脚本来监视HostOSvmnet1接口。你可能每天都想运行此脚本,那么你可以通过cron来运行这个脚本。

 

host #./snort-start.sh

 

既然这是第二代Honeynet,你可以考虑运用更先进的数据捕获技术,比如说Sebek。它允许你通过内核来捕获攻击者的活动信息。当然还有其他各种各样的实现数据捕获的方法,但是它们超出了这篇文章的范畴。想了解其他方法,请参考Honeynet

Tools Section

 

Part V: 测试你的VMware Honeynet

搭建我们的VMware Honeynet的第五步,也是最后一步就是测试我们的配置,特别是对数据控制和数据捕获的测试。我们要确保我们的Honeynet和期望的情况一样。数据控制的测试相对来说比较简单。我们要确保honeypot企图向外发起的任何连接都被记录和控制。通过记录,所有连接尝试都被记录在/var/log/messages中,警告我们有向外的连接发起,honeypot可能已经被入侵。同时,一旦到达了连接限制,我们希望确保任何更多的向外的连接都被禁止。这里有个测试Honeynet的技巧,既然我们使用了网桥模式,我们需要另一台电脑,让它充当攻击者。如果网桥不能把目的IP转换成一个有效的MAC地址,它将不会转发任何数据报。如果没有数据报转发,我们将不能测试IPTables。对于那些没有多余电脑的人来说(或者那些舍不得花钱购买电脑的人),你可以通过启动UML系统虚拟出第二台电脑。UML系统将绑定到tap0虚拟接口,同时我们所有的VMware honeypots将绑定到vmnet1虚拟接口。这样,你的HostOS就会网桥接两个不同的虚拟网络。请不要忘了,你还得修改rc.firewall脚本使tap0成为对外的接口。要想了解关于运行UML的更多信息,请参考文章KYE: UMLUML可作为攻击者,探测VMware honeypots。鉴于这篇文章的目的,我们将要示范的只是测试性的概念。我们的UML攻击者的IP地址将是10.10.10.100。它的确也能够工作:)。

 

注意:

这篇文章即将结束,我们现在来做一个最后的回顾,我们用VMware's的其他特性来做更进一步的公开分析。特别是VMware的挂起功能。挂起功能允许你逐个的挂起GuestOS(或者honeypot)映像。它将冻结所有正在运行的进程,然后把内存映像保存在一个文件中。这就是说你可以挂起你的honeypot,关闭你的电脑,然后一周后再打开它,重新加载honeypot,就像以前它运行的时候一样。它有一些不可想象的应用。我们把被攻击电脑的挂起映像保存下来,然后把这些映像转移到其他地方进行分析。这就允许我们在一个被攻击的honeypot仍然处于它的运行状态的时候对它进行分析。这里要注意的是,在分析挂起映像时,你必须保证是在一个孤立网络中进行的,否者,被攻击的honeypot会尝试连接它在挂起之前和它进行通讯的任何系统。

 

结论

这篇文章的目的是一步一步讲述怎样使用VMware虚拟软件来搭建一个虚拟Honeynet。我们的目标是在一台电脑上搭建一个完整的HoneynetVMware的优点是你可以在同一时刻运行许多种不同类型的操作系统。如果你想要尝试搭建自己的VMware honeynet,你可以在 http://www.vmware.com/download/#eval .获得一份试用版的VMware

 << 上一页  [21] [22] 

基于Web的电子商城管理系统悠悠电子商城后台设计与实现 第22页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。