基于混合式蜜罐系统的蠕虫病毒对抗模型的设计与实现

时间:2022-09-30 12:26:47

基于混合式蜜罐系统的蠕虫病毒对抗模型的设计与实现

摘要:介绍了蠕虫病毒及蜜罐的相关知识,阐述了蜜罐的几种分类,并提出了一个基于混合式蜜罐系统蠕虫对抗模型,最后通过实验,证明此模型在与蠕虫病毒的对抗中具有非常高的效率。

关键词:蠕虫病毒;蜜罐;蠕虫对抗

中图分类号TP309.5: 文献标识码:A文章编号:1007-9599 (2010) 05-0000-02

Worm Resistance Model Base on Hybrid Honeypot System

Dong Huiming

(Jinshan Branch Bank of Shanghai Rural Commercial Bank,Shanghai200540,China)

Abstract:Introduction of the related knowledge of worm and honeypot,described classification of honeypots,and presents a honeypot system based on hybrid resistance model worm,finally through the experiment to prove this model in the confrontation with the worm to be very high efficiency.

Keywords:Worm;Honey pot;Worm confrontation

1988年一个由美国CORNELL大学研究生莫里斯编写的蠕虫病毒蔓延造成了数千台计算机停机,蠕虫病毒开始现身网络。而后来的红色代码,尼姆达病毒疯狂的时候,造成几十亿美元的损失。每一次蠕虫的爆发都会给社会带来巨大的经济损失。

目前对抗蠕虫病毒攻击方法有防火墙、入侵检测系统、防病毒软件。但这些方法在抑制蠕虫攻击的时候都存在着一些缺陷。防火墙必须通过对已知类型的蠕虫进行正确配置才能防御蠕虫,因此为了能识别不断出现的新的蠕虫必须不断更新防火墙的知识库。入侵检测系统通常是基于特征来检测蠕虫,为了避免漏报也需要不断更新知识库才能识别新的蠕虫攻击,虽然IDS提供了异常检测功能,可以发现网络中的异常行为,但通常会出现大量误报,也不能很好的抑制蠕虫的传染。防病毒软件也只能检测到已知其特征的蠕虫,不能对未知的蠕虫进行检测。因此从本质上说,防火墙、入侵检测系统和防病毒软件都是被动的防御措施都滞后于各类蠕虫的攻击,更不用说对抗新型的蠕虫病毒。因此需要引入一种全新的主动的蠕虫对抗方法。

一、蠕虫与蜜罐简介

(一)蠕虫病毒

蠕虫病毒是一种智能化、自动化,综合网络攻击、密码学和计算机病毒技术,无须计算机使用者干预即可运行的攻击程序或代码。蠕虫病毒与一般病毒最大的区别在于不需要计算机使用者的干预,且能够自主不断地复制和传播,即蠕虫病毒具有主动性。

(二)蜜罐

蜜网项目组(The Honeynet Project)的创始人兰斯给出了蜜罐的定义:蜜罐是一种安全资源,其价值在于被扫描和攻击。所有流入和流出蜜罐的网络流量都可能预示了扫描和攻击。而蜜罐的核心价值就在于对这些攻击活动进行监视、检测和分析。简单地说:蜜罐就是诱捕攻击者的一个陷阱。

二、基于混合式蜜罐技术蠕虫对抗模型设计与实现

(一)本模型基本结构与设计原理

本模型主要由诱骗模块、检测模块、分析模块、解毒模块,以及受控环境组成。设计原理就是通过诱骗模块使用低交互蜜罐honeyd虚拟出大量虚拟蜜罐,并使这些虚拟蜜罐与局域网中未使用的IP地址绑定,再通过配置honeyd使虚拟蜜罐具有能引诱蠕虫病毒攻击的WINDOWS系统漏洞。然后通过蠕虫病毒检测模块,检测出病毒,将攻击流重定向至受控环境下的物理蜜罐。其次在物理蜜罐上运行分析模块,监测分析蠕虫病毒感染目标主机后产生的行为并产生日志,最后综合分析研究日志,生成解毒程序,从而最终消灭蠕虫病毒。如图:

(二)具体实现

1.诱骗模块设计

本模型诱骗模块采用arpd与低交互蜜罐系统honeyd实现。arpd运行在与honeyd相同的系统上,是honeyd众多协作工具中最重要的一个。Arpd工作时监视局域网内的流量,并通过查看honeyd系统的ARP表判断其它系统的活动与否。当一次企图对局域网内系统的连接发生时,Arpd通过查找ARP表得知目的IP地址不存在后,就会尝试对受害者的IP地址进行ARP广播,如果honeyd得到了响应,说明目标系统确实存在,于是把目标系统的IP地址与MAC地址的对应写入honeyd的ARP表,并对这次连接尝试不动作,因为这可能是合法流量。如果Arpd没有从目标接收到Arp响应,那么它就认为目标系统并不存在,假设这是一次攻击行为,于是就尝试充当受害者的IP地址并对攻击者作出回应。由此可见,arpd将对指定的IP地址范围内未使用的IP 用honeyd主机的MAC地址做出arp应答。这样对指定的IP地址范围内未使用的IP的连接访问都被重定向至honeyd主机。因此这样的设计在局域网别能最大化的诱骗蠕虫病毒的攻击,转移攻击流,为下一步检测和捕获蠕虫病毒奠定了基础。

2.检测模块设计

(1)检测的目的

虽然由honeyd重定向至检测模块大多数都是恶意的攻击行为(IP地址不存在的主机发出的请求,不可能是合法访问),但不能排除其它可能性,如广播、ping操作等行为。因此必须对这些请求进行检测、过滤,为分析模块排除干扰。检测模块运行在honeyd主机上。

(2)检测模块原理

流行的蠕虫病毒扫描策略是随机选择一段IP地址,然后对这段IP地址上某一个或几个端口进行扫描,因此检测模块根据蠕虫病毒的扫描策略,在honeyd主机上统计单位时间内截获的连接同一源地址IP对某一端口扫描的不同目标IP地址的个数是否大于阀值,来判断是否是蠕虫病毒在扫描。

(3)检测模块具体实现

首先修改honeyd配置文件,如config.honeyd:

Create default #建立默认模块

Set default personality“Microsoft Windows XP Professional SP1” #模拟XP SP1

Set default uptime 1728789

Set default maxfds 35

Set default default icmp action open #默认的icmp端口全部开放

Set default default udp action reset#关闭udp端口

Set default default tcp action “sh check.sh $ipsrc $ipdst $dport”

Check.sh具体实现为:首先判断文件名为$ipsrc.$dport是否存在,如不存在则建立之,然后查询此文件中是否存在$ipdst,如没有,则将$ipdst写入此文件,再统计此文件的行数,如行数超过了规定值,则说明是蠕虫病毒正在扫描,然后在配置文件config.honey中的最后一行,添加如下行:add default tcp port “$dport”proxy “物理蜜罐主机IP地址”:”$dport”,最后发SIGHUP信号给honeyd进程,使honeyd重读配置文件,这样就实现了将蠕虫病毒攻击重定向至受控的物理蜜罐中的分析模块。为了实现在单位时间内统计不同的IP地址的个数,必须设计另一个进程reset.sh定时复位计数,reset.sh实现非常简单只需将生成文件$ipsrc.$dport定时全部删除即可。

3.控环境设计

(1)布置受控环境的目的

受控环境主要使目标主机即使感染了蠕虫病毒,也不能对局域网中的其他主机产生影响,也就是说处于可控状态,宽进严出,并且随时了解蠕虫病毒的动向。

(2)受控环境的组成

为了实现上述目的,受控环境应该具有三大机制:数据控制机制、数据捕获机制、数据分析机制。数据控制机制提供了控制攻击者向外攻击的能力,其目标是防止攻击者在攻陷目标主机后将其作为跳板攻击业务网络或第三方网络,从而降低部署此模型所带来的安全风险。 数据捕获机制,即监控记录攻击者在受控环境内的所有攻击行为。数据分析机制则是对捕获到的攻击数据进行整理、融合和解释,以辅助安全分析人员深入剖析这些数据背后蕴涵的攻击行为。因此,本模型采用基于第三代蜜网技术的roo1.4。

4.分析模块

(1)内部分析

内部分析模块直接运行在目标主机上,即采用capturebat分析蠕虫病毒感染后对目标主机操作系统改变,进而分析得出蠕虫病毒感染行为,做到知己知彼,为生成解毒模块奠定基础。Capturebat是蜜网项目组中的一个项目,由Christian Seifert开发维护。它是一款在WIN32平台下分析软件运行状况的软件,它从文件系统、注册表、进程三个方面全面记录对操作系统的改变,本文通过对capturebat中日志模块做了相应的修改,由原来的产生日志文件改为产生的日志写入SQLSERVER数据库中。

(2)外部分析

外部分析模块主要指roo1.4自带的功能强大的基于浏览器的数据分析工具(Walleye)。它提供了网络连接的详细信息、网络流数据以及进程树视图(与sebek配合)。因此使用Walleye分析工具就能详细了解目标主机感染蠕虫病毒后对外如何传播的。

5.解毒模块设计

与一般的手工清除病毒的原理差不多,步骤一、结束病毒运行进程。步骤二、删除病毒文件,如有病毒文件注入正常可执行文件,则用正常可执行文件替换。步骤三、删除或修改注册表键值。因此,一、进程处理。根据capturebat产生的日志,首先从日志表中查找操作类型是创建进程的日志,并按时间降序排序,然后根据进程名取得进程ID以及父进程ID结束进程,直至全部结束蠕虫病毒产生的进程。二、文件处理。根据capturebat产生的日志,首先从日志表中查找操作类型是文件写操作的日志,并按时间顺序降序排序逐个删除,最后根据capturebat打包的被修改或删除的文件,拷贝至相应的路径即可。三、注册表处理。根据capturebat产生的日志,首先从日志表中查找操作类型是注册表修改的日志,并按时间降序排序,用修改之前的键值去替换当前系统注册表中的键值。如果是新创建的键值,则删除。

三、本模型的实验测试

在单位局域网中,部署了上述模型与冲击波病毒对抗。其中一台DELL755作为honeyd主机、一台hpd330作为蜜网网关、另一台hpd330作为物理蜜罐,一台hp7200做sql server日志服务器。Capturebat分析软件运行在物理蜜罐上。系统运行了15分钟后,查看日志服务器上日志,发现avserve.exe进程被创建,病毒文件avserve.exe写入c:\windows下,并在c:\windows\system32下生成jkksl_up.exe病毒文件,同时在HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Currentversion\Run项中建立名为“avserve.exe”,内容为:“%WINDOWS%\avserve.exe”的病毒键值。根据日志自动生成的解毒程序最后彻底清除了冲击波蠕虫病毒。

四、小结

提出了基于混合式蜜罐的蠕虫病毒对抗模型并实现了其功能,采用低交互蜜罐honeyd虚拟出大量的蜜罐,诱骗蠕虫病毒攻击,并将攻击流引导至受控制的物理蜜罐,利用capturebat软件从文件系统、进程、注册表三方面监控蠕虫病毒对目标主机的行为,最后根据日志分析,自动生成解毒程序。在实际的测试中,与蠕虫的对抗中取得了良好的预期,证明此模型是可行的。

参考文献:

[1]文伟平,卿斯汉等.网络蠕虫研究与进展.软件学报.2004:1208-1219

[2]刘晨,李玲网络蠕虫分析与检测防御[J].华南金融电脑,2005

[3]The Honeynet Project "Honeynets and The Honeynet Project," 2004

[4]陈伟.网络攻击行为及蜜罐技术研究:[学位论文]广西:电子科技大学,2004,28-30

上一篇:高职机械类专业教学模式探索 下一篇:基于CentOS 5.4环境构建LAMP平台