齐智江
(黑龙江幼儿师范高等专科学校,黑龙 江牡丹江 157011)
在互联网时代,计算机信息技术已经渗透到日常生活、工作办公等各个领域。由于互联网具有开放性的特点,一些黑客通过植入木马、传播病毒的方式,破坏计算机安全系统,窃取网络用户的隐私信息、重要数据,对网络信息安全构成了巨大威胁。随着人们对网络安全重视程度的提升,近年来也出现了大量的网络安全技术。例如防火墙保护、用户权限认证。入侵检测是通过实时收集和分析用户行为数据,一旦发现异常行为可以立即采取隔离、防御或清除等措施,不仅识别精度高,而且能够从源头上解决入侵行为,将损失降到了最低,是现阶段网络信息安全保护中应用效果较好的技术之一。
获取用户行为数据是进行入侵检测的基础步骤,保证数据全面、及时、准确,对降低入侵检测的误报率、漏报率有积极帮助。基于数据挖掘的入侵检测,主要包含了两个步骤:第一是数据的准备。在计算机网络系统运行中,每时每刻都会产生大量的用户行为数据。这些数据被收集起来并统一存储到了历史数据库中。在数据准备步骤中,需要将数据库中的用户行为数据提取出来,并按照特定的规则完成数据预处理。在经过清洗、整理后,所得数据被暂时存放到知识规则库。第二是数据的检测。将实时产生的用户行为数据作为检测数据,采集之后同样经过一道预处理工序,进行特征提取后,与知识规则库中存放中的数据进行对比、分析。根据分析结果,如果未发现入侵风险,则继续采集实时用户行为数据,进入到下一周期的入侵检测中;如果检测到入侵风险,则进行预警。整个检测流程如图1 所示。
图1 基于数据挖掘的入侵检测流程图
1.2.1 流量异常检测模型
入侵检测流量异常是在管理员设定的监测范围中,用基线模板(Baseline Template)对所有封包流量进行检测的一种模型。它将网络中正常流量形成的模型作为参照物,并与网络中实时产生的流量进行配对,如果配对成功,则说明运行正常;如果配对失败,则说明存在流量异常,这样就可以实时发现问题流量。管理员可灵活设定网络监测范围及监测对象,并且能通过参数调节划分异常敏感度从而实现分级告警,例如中度异常、高度异常等。流量异常检测模型在识别异常流量后,还会对其展开分析,判断异常流量的状态。通常来说有4 种状态,分别是该异常流量正在进行(Ongoing)、已经复原(Recovered)、已经检查(Checked) 和设定无效(Obsolete)。
1.2.2 协议滥用异常检测模型
DDoS 攻击与协议滥用是常见的网络入侵形式,构建面向协议滥用的入侵检测模型,可以根据封包长度、通讯协议、端口号、网络非法地址等流量特征,实现对DDoS 攻击、协议滥用异常的入侵检测,从而达到保护网络安全的目的。协议滥用异常的攻击流量模式定义如表1 所示。
表1 协议滥用异常的常见攻击模式
基于协议滥用异常的检测模型,不仅提供了几种常见的攻击特征定义(如Sasser、Code Red 等),而且支持管理员自定义添加一些病毒的特征信息。通过不断丰富检测模型,进一步提高该模型对协议滥用异常的识别精度。例如,Sasser病毒的特征是每个联机传送两个封包,每个封包长度为96字节;而Code Red 病毒的特征是每个联机传送三个封包,每个封包长度144 字节。基于这些病毒特征,该模型能够准确检测异常并且根据异常信息识别出具体的攻击类型,从而提高了网络安全保护的能力。
早期基于数据挖掘的入侵检测,主要采用单一的关联规则算法,其原理是在挖掘海量数据的前提下,在实时数据与标准数据之间建立起某种关联,根据特定的关联规则计算两者之间的异同点。如果差异明显,则认为是异常数据,判定为入侵行为。实践表明,基于单一关联规则算法的入侵检测模型存在数据比较分析时间长、异常识别准确度低等问题。因此,本文提出了一种关联规则与决策树相结合的混合算法,并基于混合算法构建了入侵检测模型,其结构如图2 所示。
图2 基于混合算法的入侵检测模型
关联规则与决策树在数据挖掘机制方面存在差异。如上文所述,关联规则主要是对比两种或多种数据的某种关联性、规律性,根据对比结果是否存在异常来判断有无入侵行为;而决策树则是基于用户行为,首先判断该行为是否存在风险,若识别出风险,则直接完成入侵检测。若用户行为无风险,则确定行为名称,划分行为主体和行为客体。再根据行为路径判断是否存在风险。基于决策树的入侵检测模型虽然提高了对入侵行为的识别精度,但是由于决策树中包含的分类较多,也会耗费较长的检测时间。因此,采用关联规则与决策树相结合的方式,做到有机互补。在基于混合算法的入侵检测模型中,一方面利用关联规则来减少决策树的条件属性个数,提高决策树分类精度,以便于更高效率检测出入侵行为;另一方面利用决策树的强关联规则,进一步提高了入侵识别的精度。因此,该入侵检测模型可以在异常行为检测效率和识别精度上达到统一。
该系统采用集中控制模式和分布式数据采集模式。基于数据挖掘和流量分析发现入侵行为后,系统进入防御状态,同时发出预警,提醒管理员尽快解决问题,降低负面影响。从系统功能实现方式上来看,入侵检测主要流程为:从日志样本数据库中提取出数据并做预处理,包括数据清洗、数据训练等。将预处理完毕的数据输入到由ID3 决策树模型和强关联规则结合的混合模型中。然后与保存好的训练参数进行配对,根据配对结果判断是否存在风险。如果识别出风险,则进行预警。基本流程如图3 所示。
图3 入侵检测原型系统实现流程
该系统的核心功能模块有4 个,分别是数据预处理、数据挖掘模型、数据挖掘检测和基础管理模块。其中,数据预处理模块提供数据的采集和标准化处理两项功能。主要作用是从网络运行日志中提取数据,并根据模型训练需要,将数据转化成标准数据格式,提高异构数据的兼容性。在数据获取方式上,支持读取事件源日志文件获取,或者SNMP Trap 获取等。数据挖掘检测模块支持在线监测和离线监测两种模式,并且在获得检测结果后,根据有无入侵行为决定是否向管理员发送预警消息。如果检测到入侵行为,则自动生成并发送预警消息,内容包括入侵时间、入侵目标、入侵路径等。
为进一步验证基于混合算法的入侵检测系统对于入侵行为的检测精度,创建了适用于该系统运行的实验环境。硬件方面,包括1 台主机服务器,使用P4 2.4G 处理器,4G 内存,500G 硬盘;1 台控制台主机服务器,配置同上;100M 局域网。软件方面,使用Windows 10 操作系统,SQLevrer 2018 数据库。
本次实验重点对系统基础管理、数据预处理和入侵检测功能3 项内容展开测试。测试内容及结果如下:
3.2.1 系统基础管理测试。测试内容包括登录测试和退出测试两部分。在登录测试中,首先给定“用户名:ABC,密码:”,测试时验证ABC 用户身份,并提示该用户输入对应的密码,与期望一致。然后给定“用户名:ABC,密码:1234”,测试时验证ABC 用户身份,并提示该用户成功登录,与期望一致。在退出测试中,用户点击“退出系统”选项,测试时提示用户成功退出系统,并返回至登录界面,与期望一致。
3.2.2 数据预处理功能测试。向日志样本库中导入10000 条系统用户行为历史数据。然后由该系统对上述数据进行预处理,包括数据清洗、整理等。最后得到4160条有效使用的用户行为数据记录。数据预处理用时为13ms。
3.2.3 基于预处理所得数据,使用本文提出的基于决策树和强关联规则的混合算法入侵检测系统进行用户异常行为检测,检测结果如表2 所示。为了验证该系统的应用效果,实验中还另外设计了未使用关联混合模型的入侵检测系统作为对比,检测结果如表3 所示。
表2 基于混合模型入侵检测系统的实验验证
表3 未使用关联混合模型的入侵检测系统对比实验
对比表2、表3 数据可以发现,传统基于单一关联规则的入侵检测系统,检测正确率在58.3%-71.4%之间,平均63.9%。另外漏报率最高达到了4.2%、误报率最高达到了4.8%。对比来看,基于混合模型的入侵检测系统,检测正确率在66.7%-76.9%之间,平均72.8%,可以发现该系统对于入侵行为的识别率更高,平均检测正确率提升了8.9 个百分点。同样的,该系统的漏报率最高为3.3%,假报率最高为3.1%,也出现了不同程度的降低。
在计算机入侵检测中,使用强关联规则和决策树相结合的混合模型,构建入侵检测系统,在提高入侵行为检测精度,降低误报率和假报率方面效果良好,极大地提升了网络信息安全。