一种可视化入侵检测系统结构设计
2009-03-02谭宁
谭 宁
[摘要]设计一种可视化入侵检测系统,将可视化入侵检测系统划分为两个子系统:入侵检测数据管理子系统和入侵检测数据分析子系统,并对各个功能模块进行阐述。
[关键词]可视化 入侵检测 系统 子系统
中图分类号:TP2文献标识码:A文章编号:1671-7597(2009)0120045-01
一、一种可视化入侵检测模型
为了保证局域网的安全,本文研究的可视化入侵检测模型共有两个系统,即目标系统与可视化入侵检测系统。目标系统即被保护的系统,可视化入侵检测系统由四个过程构成:
1.历史数据可视化过程:从目标系统获得用户历史行为信息,将历史行为信息采用可视化算法转换为图像信息,传递给安全专家。
2.创建行为轮廓过程:通过与安全专家的交互,创建正常用户行为轮廓,传递给当前数据可视化过程,用以指导检测异常过程的执行。
3.检测异常过程:从目标系统获得用户当前行为信息,以正常用户行为轮廓作为检测基准,采用自动化的检测方法检测当前用户活动是否背离正常行为轮廓。如果发现背离,则认为当前用户活动异常,发出入侵警报,传递给当前数据可视化过程。
4.当前数据可视化过程:将正常用户行为轮廓、当前用户行为信息与入侵警报信息转化为可视图像信息,传递给安全管理员,以便安全管理员根据组织的安全策略做出决策。
为了实现可视化入侵检测模型中的描述的入侵检测的四个过程,将可视化入侵检测系统划分为两个子系统:入侵检测数据管理子系统和入侵检测数据分析子系统。
二、入侵检测数据管理子系统
入侵检测数据管理子系统是可视化入侵检测系统(VIDS)的数据基础,也为入侵检测数据分析子系统提供数据支持。其主要包括三个部分:数据包捕获模块、数据提取模块和数据事件分析库。
(一)数据包捕获模块。该模块捕获的数据包括网络中的原始数据包和目标系统日志。
1.原始数据包:可视化入侵检测系统(VIDS)利用Libpcap的库函数进行原始数据包的采集,这些库函数可以为应用程序提供直接从数据链路层捕获数据包的接口函数。网络数据的解析机制是整个系统实现的基础,其中最关键的是要保证抓包的高效率和较低的丢包率,这不仅仅取决于软件的效率还同硬件的处理能力相关。
2.目标系统日志:用户在目标系统中的活动被以日志形式记录下来,日志数据反映了用户的主要活动信息。由于Web日志易于获得,因此对以Web应用系统为目标系统的入侵检测系统而言,常采用Web日志作为入侵检测的数据源。
(二)数据提取模块。该模块采集数据包捕获模块获取的数据作为来源,进行简单的处理,生成统一格式的安全审计事件,然后将经过处理的数据提交给数据分析模块。数据提取过程主要包括如下步骤:
1.协议分析:数据包捕获模块把捕获的数据提交给协议分析模块后,协议分析模块必须对这些数据进行分析,根据相应的协议把这些分析后的数据放到指定的数据结构中,供上层模块调用。同时协议分析模块还要对这些数据包进行一些基本的校验,如出现错误的数据包,及时丢弃。
2.规则匹配:根据源IP、目标IP,源端口范围和目标端口范围等属性分类组织成为规则集的。当一个数据包被检测时,从左向右检测每个规则集的上述四个参数以决定是检测该规则集还是转移到下一个规则集。然后根据已经建立的规则中查找匹配发现入侵。
3.数据预处理:预处理模块的作用就是对网络数据进行预先处理,从而方便随后的检测分析。另外,我们可以发现,基于规则的检测引擎并不能检测所有的入侵,尤其是针对有效载荷的检测,而像端口扫描、SYN Flooding等攻击,按照前面所述的方法很难对它们的特征进行提取。因此,需要特殊情况特殊处理,而预处理就是一个很好的选择。
(三)事件分析数据库模块。一个好的入侵检测系统不仅仅应当为管理员提供实时、丰富的警报信息,还应详细地记录实时数据,以便于日后需要取证时重建某些网络事件。数据库管理的前端程序通常与控制台模块集合在一起。
三、入侵检测数据分析子系统
入侵检测数据分析子系统是整个可视化入侵检测系统(VIDS)的核心,主要完成用户行为轮廓创建、当前和历史数据可视化和异常检测四个过程。该系统主要完成对前面的数据管理子系统中的当前、历史数据信息,采用可视化入侵检测算法(主要是基于散乱点的算法)实现可视化建模,然后利用直观的图形来显示入侵分析的结果,并根据结果进行异常检测,给出警报信息。为完成上述检测过程,将该子系统划分为:用户行为建模、可视化建模、异常检测、数据绘制与显示和安全响应模块等五个模块。
1.用户行为建模:鉴于历史行为建模与当前行为建模的过程较类似,因此在本节中统一阐述行为建模过程。行为建模过程主要将前面数据库管理子系统中数据提取的结果进行分析,以审计事件为输入,建立描述目标系统用户行为的数学模型,并输出用户行为模型作为可视化建模、异常检测过程的输入。
2.可视化建模:可视化建模过程是将由应用数据表示的行为模型映射为由几何数据表示的可视化模型的过程。
可视化建模过程采用可视化入侵检测算法实现。可视化入侵检测算法的输入为用户行为模型,输出为散乱点可视化模型。
3.异常检测:异常检测过程是将用户当前活动与正常用户行为作比较,比较过程可选用不同的数学分析工具,例如:聚类分析、T2测试等,即可评价当前用户活动与正常行为之间的背离程度。如果发现当前用户活动背离正常行为轮廓,则发出入侵警报。入侵警报信息传递给可视化建模过程,可视化后最终传递给安全管理员。
4.数据绘制与显示:本文主要研究基于散乱点的可视化入侵检测算法。该算法将行为模型及相关信息转换为散乱点可视化模型。
在可视化建模过程完成后,将依次进行数据绘制过程与数据显示过程。数据绘制过程负责将由点、线、面等几何数据构成的散乱点等可视化模型转换成像素点构成的图像数据。
5.安全响应模块:由于入侵警报可能是误报,安全管理员接收到入侵警报后,首先利用可视化控制台深入调查入侵警报产生的原因,然后根据组织的安全策略决定是否启动安全响应过程。
本可视化入侵检测系统,将可视化入侵检测系统划分为两个子系统:入侵检测数据管理子系统和入侵检测数据分析子系统,并对各个功能模块进行了阐述。
参考文献:
[1]薛静锋、宁宇鹏、阎慧编著,入侵检测技术,北京:机械工业出版社,2004.
[2]戴英侠、连一峰等编著,系统安全与入侵检测,北京:清华大学出版社,2002.
[3]唐泽圣,三维数据场可视化,北京:清华大学出版社,1999.
作者简介:
谭宁,男,汉,淄博职业学院信息工程系,副教授,研究方向:计算机网络。