论文部分内容阅读
随着网络的快速发展,人们在使用网络提供的各种服务和信息的同时也面临着日益增加的网络入侵的困扰,网络安全成为迫切需要解决的问题之一。异常检测是目前入侵检测系统研究的主要方向。这种检测技术建立系统或用户的正常行为模式,通过对被监测系统或用户的实际行为模式和正常模式之间的比较和匹配来检测入侵。大部分入侵检测系统对于内部攻击的检测效率很低。内部攻击者比外部攻击者会对系统造成更大破坏,而且其行为更难捕捉。对用户的行为建模是一种有效的检测恶意攻击的方法。随着假冒入侵行为的出现,任何新的异常行为模式都应该通过用户命令行数据被观察到,发现越早越好。 论文首先分析了入侵检测技术,着重分析异常检测的发展和目前待解决的难题。异常检测的一个关键问题就是如何判断哪类数据特征是异常检测的关键特征。对于UNIX命令行数据,基本包含两大类数据特征,一类是数据的时序特征,即数据出现的先后次序,我们称之为动态特征;另一特征是数据的分布特征,如某数据出现的频率,这种特征我们称之为静态特征。本文的研究目的是对这两种数据特征进行比较,观察这两种特征在异常检测中所起的不同作用,为识别模型的选择提供依据。论文介绍了UNIX系统shell命令、隐马尔可夫模型及交叉熵的相关理论。深入分析了隐马尔可夫模型中的全连结、左到右及交叉熵理论应用于异常检测系统中的可行性,简单介绍了与本文相关的其它用户行为异常检测的研究,指出其中的可取之处与不足。然后,为验证交叉熵模型优于隐马尔可夫模型的两种模型,我们通过UNIX用户命令序列来区分正常用户行为和假冒正常用户的入侵者行为或者正常用户的误用行为。从每个用户中选取其shell命令行数据的三分之一作为训练数据,另外三分之一的数据和非本用户的一些数据作为测试数据,通过改变模型的参数(包括隐状态数和序列长度)进行实验。接着详细设计了系统框架,通过多组对比实验发现更适合用户行为的异常检测方法。通过改变各种模型的隐状态数和序列长度,在实验条件完全相同的情况下,通过实验,我们最终发现:交叉熵学习模型的识别效果要优于隐马尔可夫模型,并且交叉熵具有模型简单,训练快速的特点。