基于网络入侵检测研究

2024-11-16

基于网络入侵检测研究(精选12篇)

基于网络入侵检测研究 篇1

1、引言

随着信息网络的发展, 信息安全的概念和实践不断深化、延拓。网上信息的安全和保密成为一个至关重要的问题。因此, 计算机网络必须有足够强的安全措施, 否则该网络将是个无用、甚至会危及国家安全的网络。入侵检测 (Intrusion Detection) 是除了用户认证、数据加密等安全保护措施之外的安全防护墙。它能够对网络中发生的安全事件和存在的安全漏洞进行主动实时的监测, 有效地保护被监测网络的安全。利用审计记录, 入侵检测系统能够识别出任何不希望有的活动, 从而达到限制这些活动, 以保护系统的安全。入侵检测系统的作用, 能使在入侵攻击对系统发生危害前, 检测到入侵攻击, 并利用报警与防护系统防止入侵攻击。在入侵攻击过程中, 能减少入侵攻击所造成的损失。想被入侵攻击后, 收集入侵攻击的相关信息, 作为防范系统的知识, 添加到知识库内, 以增强系统的防范能力。

2、入侵检测系统

入侵检测系统 (简称"IDS") 是一种对网络传输进行即时监视, 在发现可疑传输时发出警报或者采取主动反应措施的网络安全设备。它与其他网络安全设备的不同之处便在于, IDS是一种积极主动的安全防护技术。IDS最早出现在1980年4月。1980年代中期, IDS逐渐发展成为入侵检测专家系统 (IDES) 。1990年, IDS分化为基于网络的IDS和基于主机的IDS。后又出现分布式IDS。目前, IDS发展迅速, 已有人宣称IDS可以完全取代防火墙。

入侵检测系统组成一般来说入侵检测系统可分为四个基本组件:事件产生器、事件分析器、响应单元和事件数据库。其结构如下图:

2.1 基于主机的入侵检测系统

系统获取数据的依据是系统运行在的主机, 保护的目标也是系统运行所在的主机。目前大部分计算机使用的操作系统为Windows, 因此分析的攻击方法主要面向Windows。

黑客攻击的步骤一般是:首先通过扫描器扫描来查找可以入侵的机器, 即漏洞探测;接着确定该机器的IP地址;然后利用相应的攻击工具发起某种攻击。

常见的对主机的非法入侵的方式可分为4种:

1、扫描端口, 通过已知的系统漏洞攻入主机。

攻击者通常使用一些扫描软件, 向一群主机的一系列端口发送连接请求, 扫描软件会报告它成功的建立了连接的主机所开的端口。扫描主要包括:地址扫描, 如使用ping命令以及端口扫描。

2、种植木马, 利用木马开辟的后门进入主机。

这是Windows用户面临的另外一种致命的攻击。木马攻击的隐性好、控制能力强。如果某机器运行了木马服务端程序, 那么该机器用户的所有行为均在木马客户端的监控之下。黑客常常把木马服务器安装程序和一个应用软件捆绑在一起。当该软件安装或运行时, 木马服务器程序也就在该机器上运行了。此外还可通过电子邮件的附件, 把木马服务器程序发送给受害者。一般木马入侵步骤为:首先在受害者的机器上安装木马的server程序, 接着试图获取受害者的IP地址。一旦取得IP地址, 攻击者就已经可以完全控制该机器了。

3、采用数据溢出的手段, 迫使主机提供后门进入主机。

4、利用某些软件设计的漏洞, 直接或间接控制主机。

除了以上常见的攻击种类外, 还有利用蓄意编制的恶意HTML或脚本代码, 引诱受害者打开攻击页面或者点击攻击超链接, 不过这种攻击通常是被动式的, 需要受害者自己驱动。非法入侵的主要方式是前两种, 尤其是利用一些流行的黑客工具, 通过扫描端口方式攻击主机的情况最多、最普遍;而后两种入侵方式, 只有一些手段高超的黑客才利用, 涉及面不广泛, 而且只要这两种问题一出现, 软件服务商一般很快就会提供补丁, 及时修复系统, 所以一般入侵不易成功。

因此, 如果能限制前两种非法入侵方式, 就能有效防止利用黑客工具的非法入侵。而且前两种非法入侵方式有一个共同点, 就是通过端口进入主机。

2.2 基于网络的入侵检测系统

入侵检测系统获取的数据来源是网络传输的数据包, 保护的目标是网络的运行。基于网络的入侵检测系统使用原始网络数据包作为数据源。网络级入侵检测系统只需一次安装。程序 (或服务) 会扫描整个网段中所有传输的信息来确定网络中实时的活动网络级IDS程序同时充当管理者和代理的身份。安装IDS的主机完成所有的工作。网络只是接受被动的查询。这种入侵监测系统很容易安装和实施, 通常只需要将程序在主机上安装一次。网络级的IDS尤其适合阻止扫描和拒绝服务攻击, 而且它对处理升级非法账号、破坏策略和篡改日志也并不特别有效, 在扫描大型网络时会使主机的性能急剧下降。所以对于大型、复杂的网络需要主机级的IDS。

3、入侵检测技术

入侵检测技术 (IDS) 可以被定义为对计算机和网络资源的恶意使用行为进行识别和相应处理的系统。包括系统外部的入侵和内部用户的非授权行为, 是为保证计算机系统的安全而设计与配置的一种能够及时发现并报告系统中未授权或异常现象的技术, 是一种用于检测计算机网络中违反安全策略行为的技术。

3.1 异常检测模型 (Anomaly Detection)

检测与可接受行为之间的偏差。如果可以定义每项可接受的行为, 那么每项不可接受的行为就应该是入侵。首先总结正常操作应该具有的特征 (用户轮廓) , 当用户活动与正常行为有重大偏离时即被认为是入侵。这种检测模型漏报率低, 误报率高。因为不需要对每种入侵行为进行定义, 所以能有效检测未知的入侵。

3.2 误用检测模型 (Misuse Detection)

检测与已知的不可接受行为之间的匹配程度。如果可以定义所有的不可接受行为, 那么每种能够与之匹配的行为都会引起告警。收集非正常操作的行为特征, 建立相关的特征库, 当监测的用户或系统行为与库中的记录相匹配时, 系统就认为这种行为是入侵。这种检测模型误报率低、漏报率高。对于已知的攻击, 它可以详细、准确地报告出攻击类型, 但是对未知攻击却效果有限, 而且特征库必须不断更新。

4、入侵检测技术发展方向

随着网络技术的不断发展, 人们对于计算机网络的依赖也不断增强, 与此同时针对网络系统的攻击越来越普遍。攻击手法日趋复杂, IDS也随着网络技术和相关学科的发展而日趋成熟。其未来发展的趋势主要表现在以下方面:

4.1 分布式入侵检测的关键技术

分布式入侵检测的关键技术为检测信息的协同处理与入侵攻击的全局信息的提取。传统的集中式IDS的基本模型是在网络的不同网段放置多个探测器收集当前网络状态的信息。然后将这些信息传送到中央控制台进行处理分析这种方式存在明显的缺陷。对于大规模的分布式攻击。中央控制台的负荷将会超过其处理极限。这种情况会造成大量信息处理的遗漏。导致漏警率的增高多个探测器收集到的数据在网络上的传输会在一定程度上增加网络负担。导致网络系统性能的降低。由于网络传输的时延问题。中央控制台处理的网络数据包中所包含的信息只反映了探测器接收到它时网络的状态。不能实时反映当前网络状态。

4.2 智能化入侵检测

使用智能化的方法与手段来进行人侵检测特别是具有自学习能力的专家系统, 实现了知识库的不断更新与扩展.使设计的入侵检测系统的防范能力不断增强。

4.3 全面的安全防御方案

使用安全工程风险管理的思想与方法来处理网络安全问题.将网络安全作为一个整体工程来处理从管理、网络结构、加密通道、防火墙、病毒防护、入侵检测多方位对所关注的网络作全面的评估。然后提出可行的解决方案总之。入侵检测技术作为当前网络安全研究的热点。它的快速发展和极具潜力的应用前景需要更多的研究人员参与IDS只有在基础理论研究和工程项目开发多个层面上同时发展, 才能全面提高整体检测效率。

5、结束

随着计算机网络技术的飞速发展和连入Interne的用户以指数级增长, 计算机信息系统的安全性问题受到了巨大的威胁。在此现状发展的基础上, 本文研究了基于网络的入侵检测系统, 并阐述了基于主机的入侵检测系统, 进一步说明了入侵检测的最主要的两种技术, 在此研究的基础上, 提出了入侵检测技术的发展方向。

参考文献

[1]唐正军.入侵检测技术.机械工业出版社, 2004.4

[2]曾志峰.杨义先.网络安全的发展.计算机工程与应用.2000.

[3]戴英霞.连一峰.王航.系统安全与入侵检测[M].北京:清华大学出版社, 2002.

基于网络入侵检测研究 篇2

[关键词] 扫描 权限 后门

信息网络和安全体系是信息化健康发展的基础和保障。但是,随着信息化应用的深入、认识的提高和技术的发展,现有信息网络系统的安全性建设已提上工作日程。

入侵攻击有关方法,主要有完成攻击前的信息收集、完成主要的权限提升完成主要的后门留置等,下面仅就包括笔者根据近年来在网络管理中有关知识和经验,就入侵攻击的对策及检测情况做一阐述。

对入侵攻击来说,扫描是信息收集的主要手段,所以通过对各种扫描原理进行分析后,我们可以找到在攻击发生时数据流所具有的特征。

一、利用数据流特征来检测攻击的思路

扫描时,攻击者首先需要自己构造用来扫描的Ip数据包,通过发送正常的和不正常的数据包达到计算机端口,再等待端口对其响应,通过响应的结果作为鉴别。我们要做的是让IDS系统能够比较准确地检测到系统遭受了网络扫描。考虑下面几种思路:

1.特征匹配。找到扫描攻击时数据包中含有的数据特征,可以通过分析网络信息包中是否含有端口扫描特征的数据,来检测端口扫描的存在。如UDp端口扫描尝试:content:“sUDp”等等。

2.统计分析。预先定义一个时间段,在这个时间段内如发现了超过某一预定值的连接次数,认为是端口扫描。

3.系统分析。若攻击者对同一主机使用缓慢的分布式扫描方法,间隔时间足够让入侵检测系统忽略,不按顺序扫描整个网段,将探测步骤分散在几个会话中,不导致系统或网络出现明显异常,不导致日志系统快速增加记录,那么这种扫描将是比较隐秘的。这样的话,通过上面的简单的统计分析方法不能检测到它们的存在,但是从理论上来说,扫描是无法绝对隐秘的,若能对收集到的长期数据进行系统分析,可以检测出缓慢和分布式的扫描。

二、检测本地权限攻击的思路

行为监测法、文件完备性检查、系统快照对比检查是常用的检测技术。虚拟机技术是下一步我们要研究的重点方向。

1.行为监测法。由于溢出程序有些行为在正常程序中比较罕见,因此可以根据溢出程序的共同行为制定规则条件,如果符合现有的条件规则就认为是溢出程序。行为监测法可以检测未知溢出程序,但实现起来有一定难度,不容易考虑周全。行为监测法从以下方面进行有效地监测:一是监控内存活动,跟踪内存容量的异常变化,对中断向量进行监控、检测。二是跟踪程序进程的堆栈变化,维护程序运行期的堆栈合法性。以防御本地溢出攻击和竞争条件攻击。监测敏感目录和敏感类型的文件。对来自www服务的脚本执行目录、ftp服务目录等敏感目录的可执行文件的运行,进行拦截、仲裁。对这些目录的文件写入操作进行审计,阻止非法程序的上传和写入。监测来自系统服务程序的命令的执行。对数据库服务程序的有关接口进行控制,防止通过系统服务程序进行的权限提升。监测注册表的访问,采用特征码检测的方法,阻止木马和攻击程序的运行。

2.文件完备性检查。对系统文件和常用库文件做定期的完备性检查。可以采用checksum的方式,对重要文件做先验快照,检测对这些文件的访问,对这些文件的完备性作检查,结合行为检测的方法,防止文件覆盖攻击和欺骗攻击。

3.系统快照对比检查。对系统中的公共信息,如系统的配置参数,环境变量做先验快照,检测对这些系统变量的访问,防止篡改导向攻击。

4.虚拟机技术。通过构造虚拟x86计算机的寄存器表、指令对照表和虚拟内存,能够让具有溢出敏感特征的程序在虚拟机中运行一段时间。这一过程可以提取与有可能被怀疑是溢出程序或与溢出程序程序相似的行为,比如可疑的跳转等和正常计算机程序不一样的地方,再结合特征码扫描法,将已知溢出程序代码特征库的先验知识应用到虚拟机的运行结果中,完成对一个特定攻击行为的判定。

虚拟机技术仍然与传统技术相结合,并没有抛弃已知的特征知识库。虚拟机的引入使得防御软件从单纯的静态分析进入了动态和静态分析相结合的境界,在一个阶段里面,极大地提高了已知攻击和未知攻击的检测水平,以相对比较少的代价获得了可观的突破。在今后相当长的一段时间内,虚拟机在合理的完整性、技术技巧等方面都会有相当的进展。目前国际上公认的、并已经实现的虚拟机技术在未知攻击的判定上可达到80%左右的准确率。

三、后门留置检测的常用技术

1.对比检测法。检测后门时,重要的是要检测木马的可疑踪迹和异常行为。因为木马程序在目标网络的主机上驻留时,为了不被用户轻易发现,往往会采取各种各样的隐藏措施,因此检测木马程序时必须考虑到木马可能采取的隐藏技术并进行有效地规避,才能发现木马引起的异常现象从而使隐身的木马“现形”。常用的检测木马可疑踪迹和异常行为的方法包括对比检测法、文件防篡改法、系统资源监测法和协议分析法等。

2.文件防篡改法。文件防篡改法是指用户在打开新文件前,首先对该文件的身份信息进行检验以确保没有被第三方修改。文件的身份信息是用于惟一标识文件的指纹信息,可以采用数字签名或者md5检验和的方式进行生成。

3.系统资源监测法。系统资源监测法是指采用监控主机系统资源的方式来检测木马程序异常行为的技术。由于黑客需要利用木马程序进行信息搜集,以及渗透攻击,木马程序必然会使用主机的一部分资源,因此通过对主机资源(例如网络、CpU、内存、磁盘、USB存储设备和注册表等资源)进行监控将能够发现和拦截可疑的木马行为。

基于网络入侵检测研究 篇3

【摘 要】采用移动代理实现网络入侵预警框架,通过基本入侵检测模块获得可疑安全事件,动态分派相关移动代理收集进一步的入侵事件,构造基于入侵事件的有限自动机预警模型,预测下一步的入侵事件和可能入侵攻击,降低误报率。同时,通过移动代理降低了网络通信量和系统负载。

【关键词】网络预警;入侵检测;移动代理

【中图分类号】 G250.72【文献标识码】 A【文章编号】1672-5158(2013)07-0012-02

随着因特网技术的快速发展,面向因特网应用逐步普及,如何保障网络的安全成为一个至关重要的问题。入侵检测技术作为一种保证网络安全的防御手段,是当今网络安全保障体系中一个不可缺少的组成部分。入侵检测按照分析方法不同,主要分为异常检测和误用检测。异常检测通过构造正常行为模型作为判断入侵的依据,可以检测新的入侵,但误报率高;误用检测根据已知入侵攻击判断入侵行为,不能发现新的入侵攻击,漏报率高。入侵检测系统,根据检测对象不同可分为基于主机的入侵检测系统、基于网络的入侵检测系统以及混合型入侵检测系统。

一、当前的入侵检测系统主要存在以下的缺点

1)缺乏有效性。入侵检测系统需要实时地评价安全事件。在网络中,面对大量安全事件时,这种实时性很难得到满足。

2)高误报率。误报率高是当前入侵检测系统的一个主要缺点。系统管理员不能从大量的误报事件中判断出真正的入侵事件。

3)有限响应能力。入侵检测系统传统上集中在检测攻击。系统管理员不能立即从入侵检测系统中分析报告,并采取相应的措施。在管理员采取行动之前,给攻击者留下了一个随意操作的时间间隔。针对上述入侵检测系统的缺陷,本文使用移动代理技术,实现一个网络入侵预警框架。主要优点在于:通过移动代理技术降低了用于入侵检测的网络通信量和系统负载,可以降低入侵检测的误报率,具有快速实时响应能力,另外,系统具有较好的灵活性。

二、移动代理技术

一个软件代理被定义为具有一定功能的程序,包括代码和状态信息,具有自治性,在其环境中可以和其他代理进行交互。移动代理在代理平台上,可以实现代码的移动。把移动代理技术应用到网络入侵预警中,具有如下的优点:

1)通过在网络上移动代码代替了大量处理数据的移动,克服了网络数据传输延时,减少了网络负载。

2)具有对环境的动态适应性。

3)具有对入侵的动态跟踪及响应的能力。

三、体系结构

图l 给出了使用移动代理技术的网络入侵预警框架。在本框架中,主要有两种类型的节点,矩形节点实现入侵预警的分析处理,椭圆型节点实现基本入侵事件的采集。移动代理可以在不同节点间根据需要进行移动。

在本框架的实现中,采用IBM公司的aglets作为移动代理的实现平台,安装在相关的主机或网段节点上。入侵检测系统的实现平台为Linux平台。

1、各模块功能

图形用户界面模块:网络入侵预警框架的用户界面,管理员用来完成各种管理功能,包括查看警报、系统初始化配置等。

规则库:入侵预警框架中预测入侵的核心,是判断各种入侵的规则库,规则库可以动态进行维护。

预警分析模块:根据规则库,从已知的安全事件中推断一个入侵,另外,预测可能的入侵意图。

入侵事件收集模块:从位于不同检测节点的基本入侵检测模块中收集可疑安全事件。

移动代理分发模块:激发不同的移动代理,根据需要分派到相应的目的地。

全局共享数据模块:在整个系统中的全局共享数据区。

局部共享数据模块:在特定节点上的局部共享数据区。

基本入侵检测模块:在特定节点上检测可疑安全事件,并把结果传输到入侵事件收集模块。检测可疑安全事件的方法包括查看操作系统安全日志、应用系统安全日志、网络通信量及入侵检测部件检测到的安全事件等。

移动代理:具有不同功能特点的移动代理。

2、工作流程

针对图1中的预警框架,主要的工作流程如下:

1)在每个检测节点。基本入侵检测模块通过观察系统日志或应用日志检测出可疑安全事件。2)基本入侵检测模块区别不同类型的可疑安全事件,并把事件报告给入侵事件收集模块。

3)入侵事件收集模块把得到的各种安全事件传递给预警分析模块。

4)预警分析模块根据入侵规则库推断入侵攻击及可能的入侵意图。

5)移动代理分发模块分派适当的移动代理到特定的节点收集入侵信息。

6)移动代理从局部共享数据模块得到局部信息,检测特定的数据,移动代理检测的结果直接传输给入侵事件收集模块。

7)返回到第3)步,继续这个过程。

四、预警模型

目前的入侵检测系统得到的警报信息是在实际的入侵攻击发生之后,只能进行事后分析及安全策略的改进等,另外管理员很难从大量的入侵警报信息中发现出真正的入侵攻击行为。网络入侵预警的目的就是要解决在实际入侵行为发生之前进行预报,采取相应的防范措施,实现实时响应和降低误报率。

一个复杂的入侵攻击行为往往是由多个步骤协同完成的,每一个步骤对应一个安全事件,假定一个实际的入侵攻击行为由一个安全事件的有序序列来构成,Ii=(j=l,2,…,N)。所有入侵攻击的安全事件序列构造一个有限自动机,不同的入侵攻击在安全事件上可能是部分相同的。图2给出了基于入侵事件的有限自动机模型。

在图2的模型中,圆圈表示状态,箭头表示安全事件。0状态为起始状态,带阴影的状态5、9、12表示一个入侵攻击过程的结束。当有安全事件Il到达时,进入l状态,当有安全事件I2到达时,进入2状态,依此类推,直到安全事件I5到达时,进入5状态(结束状态),表明完成了一个完整的入侵攻击过程。同样,安全事件序列I6、I7、I8、I9,是第2个入侵攻击过程,I6、I7、I10、I1l、I12是第3个入侵攻击过程。

通过已有的入侵攻击行为,分析入侵事件序列,构造有限自动机模型,一方面可以检测出入侵攻击行为,另一方面可以预测出可能的入侵攻击行为。当到达某一个状态之后,就要检测其相应的所有输出状态,便于进行入侵的跟踪。如到达状态7之后,可能会到达状态8或10,进一步到达入侵过程的结束状态9或12。所以当到达状态7后,为了进行预测,需要采集安全事件I8和I10。安全事件的采集通过移动代理技术来实现。这样,一方面可以进行入侵过程的跟踪,另一方面,可及时采取响应措施,保证具有实时的响应能力。

五、结论

目前的入侵检测系统只能在入侵发生后对入侵行为进行报告,而且存在大量的误报和漏报,管理员很难从中快速找出真正的入侵攻击行为,并及时采取措施。本文提出的基于移动代理的网络入侵预警框架,依据入侵事件构造的有限自动机模型,判断入侵攻击行为,预测可能发生的安全事件,采用动态分发相关移动代理来收集安全事件。一方面能够降低由于检测攻击而带来的网络和主机的额外负载。另一方面,具有预测潜在攻击的能力并可进行实时响应,使得对入侵攻击的检测更具有针对性,降低误报率和漏报率。

参考文献

[1] 王欣洁,陈培军,李媛媛.容侵系统节点重构算法设计与实现[J].电脑开发与应用. 2009(02)

[2] 马晓刚,杨勇.遗传算法在入侵检测系统中的应用[J]. 科技信息. 2008(35)

基于网络入侵检测研究 篇4

相对于检测系统静态配置或系统异常行为而言,基于模式匹配检测所具有的易扩充、简单、符合CIDF(公共入侵检测框架)规范而被大多数入侵检测系统(IDS)所采用。据有关部门的报告,国内送检的入侵检测产品中95%是属于使用入侵模板进行模式匹配的特征检测产品,大多数属于采用简单的模式匹配方法基于网络的入侵检测系统(NIDS)。

评价一个入侵检测系统最常用的指标是漏报率和误报率。漏报率是指攻击事件没有被入侵检测系统检测出的概率。误报率则是指入侵检测系统将正常事件识别为攻击事件并对此行为报警的次数比例。

模式匹配就是将收集到的信息与已知的网络入侵和系统误用模式数据库进行比较,来发现违背安全策略的入侵行为。基于这样的假设,一种进攻模式可以利用一个过程或一个输出来表示。这种检测方法只需收集相关的数据集合就能进行判断,检测准确率和效率也相当高。但是,该技术需要不断地升级模式库,以对付不断出现的攻击手法,并且不能检测未知攻击。

模式匹配IDS存在的问题:1.一个基于模式匹配的IDS不能智能地判断看似不同字符串或命令串的真实含义和最终效果。在模式匹配系统中,每一个这样的变化都要求攻击特征数据库增加一个特征记录。这种技术运算规则的内在缺陷使得所谓的庞大特征库实际上是徒劳的,最后的结果往往是付出更高的计算负载,而且会导致更多的丢包率,也就产生遗漏更多攻击的可能,黑客们往往利用这种缺陷进行攻击。2.基于模式匹配技术的IDS的根本问题在于它把数据包作为一系列随机变换的字节流,它假设数据包的结构不可知。模式匹配软件最初就是为分析数据影像和音频信息而开发的,但很明显,分析数据影像和分析网络通信协议是截然不同的。3.持续该运算法则所需的计算量极其巨大。对于满负载的100Mbps以太网,需要的计算量:攻击特征字节数×数据包字节数×每秒的数据包数×数据库的攻击特征数。假设一个攻击特征有20字节,平均数据包大小为300字节,每秒30000个数据包,数据库有2000个攻击特征,我们每秒就需要有360000000000字节的计算量,计算速率远远超过当今技术允许的范围,折中的方法就是在匹配过程中能够进行不必要字符匹配的跳跃。

由此可见,简单模式匹配的特征检测方法所带来的高漏报率和高误报率是不可避免的。

(二)协议分析技术

1. 协议分析的基本思想

协议分析技术包括协议解码、命令解析等技术,协议分析的方法利用RFC (Request for Comments) 来定义攻击的特征,寻找违背协议定义规则的数据包。协议分析需要对数据包根据其所属协议的类型,将其解码后再分析。简单地说,就是让系统能够读懂协议,知道在数据包的什么位置能够得到什么内容,并且判断出这些内容的真实含义。

(1)协议解码:协议解码的过程,就是数据包从协议栈由底向上升,同时去掉各层附加的报文首部的过程。协议解码带来了效率上的提高,因为系统沿着协议栈向上分析,可以使用当前层已知的协议信息,来排除本层和上层的不属于此协议结构的其他类型的攻击。

(2)命令解析:URL串第一个字节的位置被提交给解析器。解析器是一个命令解释程序,入侵检测引擎包括了多种不同的命令语法解析器,因此,它能对不同的高层协议—Telnet, FTP, HTTP, SMTP, SNMP, DNS等的用户命令进行详细的分析。命令解析器具有读取攻击串及所有可能的变形,发掘其本质含义的能力。解析器将“/./phf"和“/phf”,或者用其他“/.”所做的变换视为同一个攻击,也就是“/phf”攻击。这样,在攻击特征库中只需要一个特征,就能检测这一攻击所有可能的变形,系统只需要一个较小的特征库就能检测较大范围的攻击。

2. 协议分析的过程

协议分析能够检测出违反协议规范的入侵行为,协议分析方法把各个协议的攻击特征分类,然后把捕获的一条数据报文与各个协议的攻击特征相比较,如果匹配,则证明此报文具有入侵行为特征,执行相应的结果处理。各个协议的攻击特征的逻辑结构用树来表示,通常叫做协议树。如图1所示。

在各个叶子结点存放针对结点中协议的入侵行为的特征。比如,在ICMP结点中存放所有针对ICMP攻击的所有攻击特征,同样HTTP, FTP等叶子结点也存放针对它们各自协议的攻击特征。

协议分析方法检测一条数据报文的过程如下: (1) 数据报文解析数据报文的结构是网络协议的层次结构,解析是对该条数据报文进行处理的过程。数据报文解析按照网络协议的层次结构,依次分解出各层协议的首部,然后确定其上一层协议,直到解析到应用层协议为止。这样每解析出一条协议,就相当于在遍历协议树上找到一个相应的分支。解析到应用层协议,也就遍历到协议树的叶子结点。 (2) 报文匹配叶子结点所定义的针对该种协议的入侵特征库,一个数据报文前面通常是协议的首部,而后面才是数据字段。所以最后入侵检测的方法是拿数据字段的相应部分来匹配叶子结点所描述的入侵特征。

(三)基于简单协议分析检测设计

网络通信的核心协议就是TCP协议和IP协议,由于它们的这种格式定义只与协议相关,与网络的结构、类型并无关系,所以协议树分析具有很强的通用性。本文协议树分析就以TCP/IP为基础的以太网为例进行描述。根据以太网的帧结构的定义,在以太帧的第13字节处包含了两个字节的第三层协议标识,0800表示为IP协议,0806为ARP协议,8138为NOVELL协议等。在IP数据包的格式定义中,第10个字节为第四层协议标识,例如:TCP为06, UDP为11, ICMP为01等。而TCP数据包的第3、第4个字节为应用层协议标识 (端口号) 。如:80为HTML协议,21为FTP协议,23为TELNET协议等。根据以上特点,可以把简单协议分析用一棵树来表示,该协议树的结构如下面的图2所示。

简单协议分析步骤如下:1.读取以太帧的第13字节处的2字节协议标识,根据RFC所规定协议规范可以判断这个网络数据包是否为IP包。2.读取IP数据包的第10个字节,可以判断第四层的协议,如果是06,则可以断定这个数据包是TCP数据包。3.读取TCP数据包的第3、第4这两个字节如果为80,则该数据包是一个HTTP协议的数据包,如果是21的话,则是一个FTP协议的数据包。4.其它协议类型的分析可以依此类推而得到。

由此可以看出,简单协议分析的分析过程就是一个从根到某个节点或叶子的路径,而每个叶子、节点就是某一种攻击类型的分析机。在每个分析机的数据结构中包含以下信息:协议名称、协议代号以及对应的攻击检测函数。协议名称是该协议唯一的标识,协议代号是为了提高分析速度用的编号。为了提高检测的准确率,可以在协议树中加入自定义的协议节点,以此来细化分析。

(四)简单协议分析应用

以下是基于简单协议分析的入侵检测系统所捕获的数据包(如图3所示)及检测引擎对数据包的处理过程:

1. 跳过前面12个字节,读取13字节处的2字节协议标识:

0800。根据协议规定可以判断该网络数据包是IP包。

2. IP协议规定以太包的第24字节处有一个1字节的第四层协议标识。

因此系统跳过的15到24字节而直接读取第四层协议标识:06,由此可以得知该数据包是一个TCP数据包。

3. TCP协议在第35字节处有一个2字节的应用层协议标识 (端口号) 。

于是系统可以跳过第25到34字节而直接读取第35字节的端口号:00 50 (转化为十进制即为80) 。由此又可以判断出该数据包是根据HTTP协议传送的数据包。

4. HTTP协议规定第55字节是URL的开始处,我们要检测攻击特征“GET/cgi-bin/.

/phf”。因此只要详实地检测这个URL,就能达到检测入侵攻击的目的。这个URL比原来的数据包长度缩减了很多,而起到的作用则是一样的。由此可见,利用协议分析可以大大减小模式匹配的计算量,提高匹配的精确度,减少误报率。

每种协议数据包的分析过程都由相关的攻击分析程序模块 (函数) —协议分析机来完成。在协议分析机中,采用模式匹配的算法来分析攻击。协议分析机的实现流程如图4所示。

从上面的流程图中可以看出,协议树分析模块的扩张性很好,根据需要可以增加其它协议类型的协议分析机。

(五)结束语

从以上的入侵分析过程来看,简单协议分析检测方法可以根据协议信息精确定位检测域,利用协议分析方法,有针对性地使用详细具体的检测手段,使得攻击的分析过程简单、直观而且使程序具有层次性,可读性强。从而提高了检测的全面性、准确性和效率。针对不同的异常和攻击,可以灵活地定制不同的处理函数来加强检测能力,识别变体攻击等较难检测的攻击;协议分析方法还可用于其它的网络应用系统中,如协议分析器、网络协议栈的开发等。

此外,使用简单协议分析检测方法虽然可以有效准确地检测大量异常和攻击,但是仍有很多复杂攻击不能凭借单一的数据包来检测,需要联合多个数据包中的信息,根据协议执行过程进行识别,并将一个会话的所有流量作为一个整体来考虑,通过研究状态协议分析检测方法,此方法是充分利用了协议运行信息来检测协议相关的异常和多步骤攻击、分布式攻击等复杂攻击,从而提高入侵检测系统能够识别更复杂的攻击。同时,我们也可以融合传统特征模式匹配技术的优点和协议分析技术,为用户提供更加完善、优秀的入侵检测与防护系统。

摘要:在入侵检测系统中, 模式匹配技术是常用的入侵检测分析方法。网络协议分析是网络入侵检测中的一种关键技术, 文章对网络层和传输层协议进行分析, 最后给出一个例子来说明协议分析的实现过程。

关键词:入侵检测,模式匹配,协议分析

参考文献

[1]Ilgun K, Kemmerer R A, Porras P A.State transition analysis:a rule-based intrusion detection approach[J].Software Engineering IEEE Transactions, 1995, 21 (3) :181-199.

[2]唐屹.CIDF框架上的入侵检测规则扩充[J].计算机应用, 2002, 22 (11) :43-46.

[3]唐正军.网络人侵检测系统的设计与实现[M].北京:电子工业出版社, 2002.

[4]戴英侠, 连一峰, 王航.系统安全与人侵检测[M].北京清华大学出版社, 2002.

基于网络入侵检测研究 篇5

2.1案例简介

大学H是四所高校合并而成,所以共有四个校区,且校区并不集中,而是分散在城市各处,形成东南西北四个校区。随着网络技术的发展和教育手段的改进,为了加强学校教学手段和教学管理,学校计划建设覆盖全校的网络系统以进行通讯管理、教育教学。当前,大学已经进行了网络线路的建设,采用光纤进行小区之间的网络连接。由于大学许多资料数据都属于国家机密,因此需要重点考虑网络安全,确保校园网络能够应对入侵,实现安全防护。所以,大学H针对各校区之间现存的网络结构和体系进行了重新设计,欲搭建一个以总校区为中心、分校区和分支机构为辅的三级网络机构。

2.2安全模型具体设计

大学H的网络系统是以总校区为中心,分校区和分支机构为次的分布式网络系统,系统构成包括服务器、邮件服务器、等联网客户机等。为了保障校园网络安全,基于该校的网络具体实际,采用三级集中管理的网络模型是最合适的,并在其中融入防火墙、防病毒软件和入侵检测系统,并搭建从边界防护、传输层防护,到核心主机防护的防御体系,便于多层防护、集中控制。由于该校总部在西校区,因此在此安装全校的管理服务器作为网络防御中心,而后在其他校区分布安装管理服务器作为二级防御管理中心,在分支机构安装服务器作为三级防御中心。根据具体实际,再各级防御中心均进行管理员设置,允许管理员进入网络进行管理工作。通过此模型将整个学校的校园网建设成了有中心到四周的三级集中管理结构。图3总校区管理员视图第一级:西校区总部服务器负责整个学校的网络防御,进行信息的收集和策略的制定,并直管二级服务器。并且进行总服务器的.病毒库和杀毒引擎升级。第二级:二级服务器负责各自分校区的网络安全防御,并受一级服务器管理,对下属的分支机构管理服务器发布命令。如图4:图4分校区管理员视图第三级:三级管理服务器负责分支机构的网络防御和安全命令。如图5:图5分支机构管理员视图根据具体情况,上级管理员可以定期对下级管理员的工作进行检查,并能够进入下级管理员客户端进行该级网络安全的维护,使整个防御体系达到统一和完整,便于管理控制。

2.3边界防护和传输防护

防火墙是被动进行防御的系统,存在着诸多不足,因此在防火墙的基础上还需要进行入侵检测系统作为补充防护,针对内外部攻击进行实时监测、实时防御。它能够主动检测,进行入侵者和入侵行为的检测并进行监视和信息的收集,以便采取措施。在边界防护中采用基于专家系统和基于人工神经网络结合的入侵检测技术,即通过专家设置的规则,并针对所涉及的入侵行动进行分析。再加上人工神经网络进行实时的处理,根据不同特征进行不同攻击的识别,收集信息、实时检测,主动对内外部攻击行为进行检测并记录证据报警。在传输防护中,由于校区之间需要进行信息的传输,因此需要校区之间不需要代理的移动,只能允许校区内的主观集合,但校区与校区之间的主管集合是不可以的,避免攻击者发现其他校区的安全主机位置信息。

2.4核心主机防护

通常,核心主机安全防护都是采用双网卡复合防火墙结构。但在该校核心主机安全防护上进行升级优化,在原有双网卡的基础上,再额外配置一块网卡,进行内外部网和DMZ,采用屏蔽子网防火墙体系结构。将核心主机放在子网之内,通过两个分组过滤路由器进行网络连接并进行过滤,将内外网分开。防火墙可以使用公开的IP地址进行外部请求连接,内网保留地址并进行地址转换技术,改变网络地址进行外部网络访问。还需要配备上述入侵检测系统以便进行实时防护,保证数据安全。

3结束语

随着网络技术的发展和网络环境的复杂化,构建绿色安全的校园网是当前普遍关心的话题。在当前的网络技术下,通过数据加密和被动的防火墙防御已经不能对抗日益更新的骇客入侵技术,只有采用入侵检测技术、进行主动防御才是校园网安全的出路所在。通过使用入侵检测技术作为防火墙的补充防御,主动进行入侵的检测和防御,使校园网络能够实现安全化、绿色化。对于建设现代化高校有重要的推动作用。

引用:

[1]李春霞,齐菊红.校园网安全防御体系的相关技术及模型[J].自动化与仪器仪表,.

[2]张t江.数字化校园网络安全防范机制构建与应用[J].科教文汇,.

[3]杨巍.校园网络信息安全模型的设计[J].福建电脑,.

[4]钟彩虹.基于PDRR的校园网络安全体系研究[J].无线互联科技,2013.

[5]陈锦琪,陈晓语.校园网络安全防范体系的构建与策略[J].计算机与络,2013.

[6]姚恺荣.基于校园网的多校区网络安全设计[J].卷宗,.

[7]刘炳奇.动态网络安全模型校园网应用研究[J].硅谷,.

基于免疫的网络安全风险检测 篇6

关键词 网络安全 免疫系统 安全防控 检测流程 分析

中图分类号:TP393 文献标识码:A

0前言

网络安全检测技术存在两种格式形态,包括静态和实时动态调控。其中,静态处理结合既定目标存在的安全隐患和事件演变效应进行等级设定。此类方案可以将传统网络控制的诱导因素实现大面积挖掘,并同期处理评估细则;然而处于受攻击状态下的网络同步更新速率有所不殆,灵活的智能适应效率由此下滑。关于这部分研究工作,目前尚未有任何部门完成突破目标,相关经验积累更是严重欠缺。

1我国免疫系统网络安全风险检测现状论述

人体免疫系统属于某种免疫组织和器官混合搭配形成的架构基础,其主体功能是将自体和非自体元素进行区分,主要是借由人体内部各类淋巴细胞实现,其间如若抗原与调控细胞临界点环境稳定效果超出既定阈值范围,免疫系统内部活性元素剧增,抗体滋生能效会呈线显性效应,抗体浓度开始逐渐扩散。如果抗原抵抗能力有所不足并出现消散状态,某种活性元素释放力度会产生一定的阻碍回应,令免疫系统回转至稳定形态。

按照人体免疫系统内部抗体支撑能度和病原入侵力度进行对应联系,有关技术人员制定某种实现免疫安全风险检测的模型工具,并对不同要素个体进行宏观管制,包括抗体、免疫细胞等数学机理在内。结合免疫系统的原理内容分析,包括自体耐受限度和免疫记忆功能等,进行数学模型塑造;同时在此种理论基础上完善抗体浓度网络安全风险检测和定量计算模型素质。在使用该种制备方案环节中,技术人员可以将不同情境之中的风险指标和强度要求提炼,维持对应措施的指导价值地位。这种分析措施证明网络安全风险实施在线检测技术是存在某种有效介质突破口的,探索过程之中需要联系网络与免疫机理进行长期配对校验,有关细微调控节点的提炼工作需要投入更多集中精神。

2模型仿真流程拆解与透析

结合某地网络攻防环境试验机理进行监控驱动装置搭建,被控网络结构会对不同端口进行服务流程区分,经过网络环境内部攻击行为类别规划,流程中主要采取32位源地址信息和16位协议标志形成创新二进制抗原队列。正常状况中,因为网络运行环节中的跳跃反应不大,所以对未成熟细胞耐受期就可以认定为1;在函数匹配环节中采用某种连续对应原则对外部物理限制因素进行验证,并限制系统内部免疫细胞仿真延展能度。细胞克隆体延展环节中的细胞比例系數要做到尽量满足扩散需求,这样尽管存在外部物理因素的限制影响,有关比例系数也可暂定为数值1。然而对于抗原更新周期的选择,需要保证流程中不存在丢包隐患基础上实现大幅度提升,这样就能够提供免疫细胞合理的识别处理时限,维持后续操作的有效渗透价值。

经过系统性的验证流程分析,模型计算得出的风险值与既定网络共同面临的攻击强度存在必要的匹配效用特征,这就说明关于网络风险的实际状况反映要求已经基本达成。配合系统在网络攻击后的性能质量以及波动效果观察,技术人员在后期试验中将网络风险等级标准化为7个层次。试验流程中发现这样某种规则原理,当风险等级逐步提升时,系统性能会出现同步下降反应。为合理鉴定模型控制功能的延伸地位,技术人员针对不同攻击连锁反应标本进行多次验证;为了进一步稳固模型疏导性能,可以实现针对性的对比处理,这种对象比较措施已经成为现下网络安全评估模型改造的必要渗透途径。

实时定量的风险检测手段在固定网络安全防治工程中得到一定程度的响应。例如:在整体免疫控制环节中如果风险隐患过于突出,可以选取危险端口即时关闭手段,将处于高风险阶段的不同服务项目收回,必要时可以直接将主机关闭。这样能够确保当网络系统处于入侵危机状态时,系统稳定地位能够落实,而不致于产生崩溃结果,影响经济效益的收取规模。

3结语

按照免疫系统网络制备安全和风险积极抗拒效应进行同步验证分析,目前既有网络安全防控技术将生物免疫系统中相关抗体浓度实现扩展处理,并将转化后的数据直接应用在网络风险检测流程当中;在同期阶段中依托抗体浓度延展效应进行网络风险预控模型改造。此类手段能够很好地适应目前网络技术调控标准需求,因此实现应用价值比较广阔。

参考文献

[1] 时翠霞.基于攻击模拟的网络安全风险分析方法研究[J].北京理工大学学报,2008.15(04).

[2] 李涛.基于免疫的计算机病毒动态检测模型[J].中国科学(F辑:信息科学),2009.23(04).

[3] 黄晋英.人工免疫机制在网络安全方面的发展[J].机械管理开发,2009.13(01).

[4] 熊敬一.基于AHP的网络安全风险评估研究及应用[J].黄石理工学院学报,2010.22 (01).

基于鸟群神经网络入侵检测的研究 篇7

随着网络安全技术的不断发展, 网络安全的概念也不断得到深化, 不断具有新的特性和含义。网络的安全性问题实际上包括两方面的内容:一是网络系统安全, 主要指的是网络资源、实体和载体的安全, 其主要任务是保证各种网络资源稳定可靠的运行以及受控合法的使用;二是网络的信息安全, 它是指信息的存储、传输和应用的安全, 其主要任务是保证信息的机密性、完整性、抗否认性和可用性。

目前, 常用的网络安全技术有:访问控制机制、用户认证和授权、数据加密解密、VPN、防火墙等。但总的来说这些技术都属于静态的防御系统, 为保证网络的安全, 有必要对系统进行实时的、主动的监控, 及时发现并报告系统中未授权或异常的现象。入侵检测技术就是这样一种动态安全防御技术, 它是通过对计算机网络和主机系统中的关键信息进行实时采集和分析, 从而判断非法用户入侵和合法用户滥用资源的行为, 并做出适当反应。入侵检测需要采集处理的数据很多, 利用传统的入侵检测方法己经不能适应。传统的模式匹配检测是基于己知的攻击或系统的明显漏洞识别入侵, 这种方法的缺点是无法检测未知的攻击。而传统的异常检测技术利用统计学的方法建立常规状态库, 对不满足常规条件的行为判断为异常。这种方法缺点是漏报率和误报率高。并且现存的入侵检测系统缺少有效性、适用性和扩展性。

由此, 本文将鸟群神经网络技术应用于入侵检测的研究中。鸟群神经网络其内在对不确定性的学习与适应能力, 恰好能满足入侵检测分类识别的需求。另外鸟群神经网络的非线性映射能力也保证了其成功实现各种简单或复杂的分类, 它将信息分布式存储于连接权系数中, 使网络具有更高的容错性和鲁棒性。

1 入侵检测技术

入侵检测就是通过从计算机网络或计算机系统中的若干关键点收集信息并对其进行分析, 从中发现网络或系统中是否有违反安全策略的行为和遭到攻击的迹象, 同时做出响应。

1.1 入侵检测的功能

入侵检测能帮助系统管理员对付网络攻击, 扩展了系统管理员的安全管理能力 (包括安全审计、监视、进攻识别和响应) , 提高了信息安全基础结构的完整性。入侵检测被认为是防火墙之后的第二道安全闸门, 在不影响网络性能的情况下能对网络进行检测, 从而提供对内部攻击、外部攻击和误操作的实时保护。总体来说其主要功能有: (1) 用户和系统行为的检测和分析; (2) 重要的系统和数据文件的完整性评估; (3) 系统配置和漏洞的审计检查; (4) 异常行为模式的统计分析; (5) 已知的攻击行为模式的识别; (6) 操作系统的审计跟踪管理及违反安全策略的用户行为的识别。

1.2 入侵检测的组成与结构

一般来说, 一个入侵检测系统由以下组件组成:

(1) 数据源:数据源是入侵检测监视并发现未授权或异常行为的原始网络数据包。通常数据源包括原始网络数据包、操作系统审计记录、应用程序审计记录以及系统校验数据等等。

(2) 感应单元:感应单元从数据源收集数据。不同的入侵检测系统, 其感应单元收集数据的频率也不同。

(3) 分析单元:分析单元分析处理感应器收集到的数据 (如未授权或异常行为和其他有用事件等) 并产生告警。在现有入侵检测系统中, 感应单元和分析单元往往是统一组件的一部分。

(4) 管理单元:通常, 管理单元的功能包括分析单元配置、事例、告知管理、数据综合和报表等。

(5) 响应单元:响应单元是对告警做出反应的功能单元等强烈反应, 也可以只是简单的报警。在一些系统中, 管理单元和响应单元的功能由同一个模块执行.既可称为响应单元, 也可称为管理单元, 如告知模型和告知——询问模型。

(6) 行为:行为是数据源的实例, 如某个网络连接、某个用户执行的一个操作和某个应用程序的触发的一个事件等。行为既可以是危险的恶意攻击, 也可以是无害的用户偶然异常操作。

(7) 事件:事件是对源数据进行分析的结果。事件 (一个或多个) 触发告警。

(8) 告警:告警消息由分析单元产生并发送到对应的响应单元。告警消息通常包括事件的类型、事件发生的时间、事件处理的优先级等信息。

(9) 反应:反应是对事件发生采取的措施。反应可能由系统自动触发.也可以由安全管理人员发动。其中, 通知管理员是普遍反应。其他反应包括行为记录、原始数据特征记录、切断网络连接、终止用户进程、改变网络或系统存取属性等。

入侵检测系统的大体结构如图1。

2 鸟群神经网络算法

人工神经网络是由人工神经元互连而成的网络, 它从微观结构和功能上实现对人脑的抽象和简化, 具有许多优点。对神经网络的权值系数的确定, 传统上采用反向传播算法 (BP算法) 。BP网络是一种多层前向反馈神经网络, BP算法是由两部分组成:信息的正向传递与误差的反向传播。在反向传播算法中, 对权值的训练采用的是爬山法 (即:δ算法) 。这种方法在诸多领域取得了巨大的成功, 但是它有可能陷入局部最小值, 不能保证收敛到全局极小点。另外, 反向传播算法训练次数多, 收敛速度慢, 使学习结果不能令人满意。

鸟群算法中, 每个优化问题的解都是搜索空间中的一只鸟。我们称之为“粒子”。所有的例子都有一个由被优化的函数决定的适应值 (fitness value) , 每个粒子还有一个速度决定它们飞翔的方向和距离。然后粒子们就追随当前的最优粒子在解空间中搜索。

D维搜索空间中, 有m个粒子, 其中第i个粒子的位置是xi= (xi1, xi2, …, xi D) , i=1, 2, …, m, 其速度为vi= (vi1, vi2, …, vi D) , 将xi带入目标函数可计算出适应值。记第i个粒子搜索到的最优位置为pi= (pi1, pi2, …, pi D) , 整个粒子群搜索到的最优位置为pg= (pg1, pg2, …, pg D) 粒子状态更新操作为:

其中, Ф1和Ф2是随机正数。

BP网络是一种多层结构的前向网络, 其隐层神经元的激活函数为S型函数, 而输出神经元的激活函数可以是S型函数, 也可以实线性函数, 典型的S型函数为:

其中:s为神经元的加权输入函数。

用鸟群算法训练BP网络时, 定义粒子群的位置向量x的元素是BP网络的全体连接权和阈值。首先初始化位置向量x, 然后用鸟群算法搜索最优位置, 使如下均方误差指标 (适应值) 达到最小。

其中, N是训练集的样本数;ydj, i是第i个样本的第j个网络输出节点的理想输出值;yj, i是第i个样本的第j个网络输出节点的实际输出值;C是网络输出神经元的个数。

基于鸟群算法的BP网络学习算法流程如下:

(1) 选定粒子数N;适应值阈值å;最大允许迭代步数TMAX初始化Ф1和Ф2;初始化xid、vid为[0, 1]之间。

(2) 迭代步数t=0;Jg=∞;Jp= (∞, …, ∞) 。

(3) While (Jg<ε&t

(4) For l=1:1:N

(5) xi和训练随机样本, 根据 (4) 计算Ji

(6) If Ji

(7) If Ji

(8) End for

(9) For i=1:1:N

(10) 按公式 (1) 计算vi;按公式 (2) 计算xi;

(11) End for

(12) End while

(13) 以所得权值的阈值为初始值用BP算法对网络进行训练。

图2、图3分别是鸟群神经网络和BP网络的训练对比图。采用的是MATLAB7.0实验环境。

由图2和图3可以看出, 鸟群神经网络在数据训练到第4005次时候就已经收敛, 而BP神经网络在数据达到7317次的时候才收敛。这说明鸟群神经网络有更好的训练速度, 用于入侵检测中去能更好的节约时间提高系统的效率。

3 鸟群神经网络入侵检测仿真

本文入侵检测系统应用的SNORT是一个开放源码的自由软件, 属于基于网络的入侵检测系统。基于鸟群神经网络, 结合成熟的SNORT系统, 设计一种功能更全面的入侵检测系统模型。

3.1 鸟群神经网络入侵检测模型

参照CIDF规范, 一个完善的入侵检测系统在体系结构上应该包括事件产生器、事件分析器、事件数据库和响应单元等四个部分。本文所设计的系统模型的主要目的是验证鸟群神经网络技术同入侵检测系统相结合的可行性和有效性。本文的重点主要集中在事件产生器和事件分析器上, 而且这两部分也舍弃那些一般性的常识和基本内容, 将重点放在数据的预处理 (检测模块的数据准备) 、检测模块的设计和检测模块间的相互协调等内容。对于事件数据库和响应单元仅以日志来简单地代替。系统分为以下几个部分, 其功能框架如图4所示。

结合图4, 对该系统的工作原理进行一下简单的描述:由数据捕捉模块抓取检测系统所监测网段的网络数据包, 经预处理模块对捕获的数据进行分析和整理后, 提取出代表该数据包的完备而准确的特征属性, 分别生成鸟群神经网络模块和SNORT系统的输入, 再分别转交给相应得两个检测模块处理。由于两个检测模块的检测能力的不同, 鸟群神经网络模块除了能检测到己知入侵行为外, 还能够检测到未知的入侵行为, 因此要区别地处理两模块的检测结果, SNORT系统检测到的入侵是己知的, 只要报警并予以记录备查。鸟群神经网络除了向用户发出报警信息, 将攻击事件相关信息记录在日志文件里外, 还要将该数据与样例库中样例对照, 若是新型攻击或是输出异常的实例, 提交给管理人员判断处理来更新样例库和SNORT系统的规则库文件, 提高检测性能。这体现了鸟群神经网络所具有的不断学习的能力, 以识别出更多类型攻击行为的潜能。这是鸟群神经网络入侵检测系统相比基于规则的入侵检测系统突出的优势, 对入侵检测系统的实际应用具有很大的价值。

(1) 数据捕捉模块

负责抓取网络中的数据包, 送入预处理模块。部署时需设定侦听模式, 侦听所有流过该设备的所有数据, 需将网络接口设备设置成混杂模式, 侦听特定对象时, 可以相应更改侦听模式。得到的数据为数据链路层的数据。

(2) 预处理模块

预处理模块的功能是对捕获的数据包进行解析, 为神经网络检测单元和SNORT系统单元提供数据输入。主要实现以下处理:判断该包是否为IPV4包, 根据协议类型逐层解析数据包, 进行格式检查, 有碎片时进行数据重组, 实现语义转化, 去除unicode编码, 进行数据标准化。记录流量和连接特征。分别按神经网络和SNORT系统单元的输入数据结构生成实例。

(3) 检测单元

将预处理模块生成的实例数据分别输入鸟群神经网络检测单元和SNORT检测协议分析单元进行分析处理。该两个检测模块是相互独立又相互补充的, 对于那些攻击特征以字符串形式存在于数据包的数据段中的攻击, 如U2R和R2L攻击, 由SNORT系统来检测。鸟群神经网络模块检测SNORT系统模块检测内容以外的入侵类型。在验证鸟群神经网络模块性能或安全级别较高时, SNORT系统亦可对鸟群神经网络检测的内容也进行初始化, 以提高检测的准确性。但会降低检测速度。根据系统对性能和安全级别要求的不同, 将鸟群神经网络模块和S N O R T系统模块设计出两种不同的配合工作方式:互补式和嵌入式。

(4) 响应模块

记录警告信息, 如有异常情况, 并做出相应的系统响应, 以提醒管理人员。

3.2 仿真试验和结果

为了验证系统的性能, 在一个独立的局域网内对系统的性能进行测试。其中鸟群神经网络的测试样本集参考KDD99中的数据。对于缓冲区溢出类攻击行为, 攻击特征在数据包的数据段内, 因此其网络连接特性与正常网络通讯类似, 在这种情况下, 鸟群神经网络一般将入侵行为误判为正常数据, 造成漏报发生, 不会发出报警信息。而SNORT系统根据已知的入侵模式, 在数据包的数据段内进行模式匹配搜索, 从而检测出入侵行为。

模拟攻击数据包括satan、smurf、ipsweep、normal、buffer_overflow五种类型, 前四种数据类型包括20%的未学习过的样本。由检测数据可得出这样的结论, 鸟群神经网络模块经过训练样本反复充分地学习, 不仅能很好的识别学过的样本, 而且对未知样本也具有一定的检测能力。

4 结论

本文在对入侵检测的技术、功能和组成结构进行分析的基础上, 提出了基于鸟群神经网络算法来对入侵检测系统进行研究。通过对与鸟群算法的结合, 神经网络在训练的过程中获得了更好的收敛效果。通过将鸟群神经网络算法与SNORT相结合, 进行仿真实验。结果表明这种入侵检测系统模型是有效的。

参考文献

[1]戴云, 范平志.入侵检测系统研究综述.计算机工程与应用.2002.

[2]乔建东, 陶兰等.入侵检测工具Snort剖析.计算机工程与设计.2004.

[3]刘振凯, 贵中华, 蔡青.神经网络专家系统的现状及发展趋势.计算机科学.1996.

[4]宋歌.闰巧等.神经网络在异常检测中的应用.计算机工程与应用.2002.

基于网络入侵检测研究 篇8

随着计算机网络的广泛使用和网络技术的快速发展,网络环境变得越来越复杂,因此对网络安全的要求也越来越高。每年由于网络安全问题而带来的损失不可估量。单纯的防火墙技术暴露出的不足和弱点已无法解决网络安全问题,在这种情况下,网络入侵检测技术应运而生。入侵检测是通过对计算机网络或计算机系统中的若干关键点收集信息并进行分析,从中发现网络或系统中是否有违反安全策略的行为和被攻击的迹象。入侵检测系统(IDS)的主要任务是监视分析用户及系统活动,审计系统构造和弱点识别,反映已知攻击的活动模式,并向相关人士报警。

传统的入侵检测方法采用模式匹配的方法,即将数据包的信息与已知的网络入侵和系统误用模式特征数据库进行比较,从而发现违背安全策略的行为。这种传统的模式匹配的方法并没有充分利用协议的规则,而是把网络数据包看作是无序随意的字节流,从头至尾都一一进行匹配,这就导致了其计算量大,效率低。而如果充分考虑到网络数据包是按网络协议来组织的话,只对数据包中特定协议域的数据进行匹配,而不是对整个数据包进行匹配,则将大大减少计算量,提高效率和精确度,这就是基于协议解析的入侵检测方法。本文提出了一种新的基于协议解析的入侵检测系统模型,给出了该网络入侵检测系统的架构设计和算法思想。

1 入侵检测系统的分析

1.1 TCP/IP协议结构原理

由于本系统是对网络数据包进行解析,而网络数据包又是通过TCP/IP协议进行封装的,由此先了解TCP/IP协议之后才可能对网络数据包进行正确的解析。TCP/IP协议族的分层结构如图1所示。

TCP/IP协议是由链路层,网络层,传输层和应用层组成。应用层直接与用户打交道,如简单电子邮件传输(SMTP),文件传输协议(FTP)等等;而传输层则负责差错处理,流量控制,发送与确认数据,超时处理等等;网络层负责路由选择等功能;链路层则将数据封装成帧格式,然后通过网卡转化为电信号发送出去。这四层结构,下一层为上一层提供服务,即为上一层提供接口函数,同时屏蔽下面各层的实现细节,使之对上层透明化。

1.2 数据包封装与分解原理

由于TCP数据包和IP数据包的格式定义只与协议相关,而与网络的结构、类型无关,所以以下分析可以以太网为例进行说明。如图2为应用层数据在网络中传输时候的逐层封装的过程。每层都在前面封装一个该层的首部,再传递给下一层。因此解析时候,要逐层进行解析,就是逐层去掉首部,这就是协议解析时候的基本思路,这样才能正确的提取出所需要的用户数据部分。

本系统模型的主要目标就是从网络中捕获数据包,然后传递给数据包过滤部分,过滤后再送入数据分析部分,通过数据包解析并经过与网络入侵规则库进行分析比较后送入数据显示部分,同时采取相应的入侵响应措施。

2 基于网络协议的入侵检测系统模型的构建

结合入侵检测系统的分析,研究和构建了一个基于网络协议的入侵检测系统模型,模型大致可以分为几个模块进行构建,其模型如图3所示。

根据图3所示模型,下面分别对各模块一一介绍。在网络数据包捕获模块中使用了BPF机制来捕获数据包。BPF有两个主要部件:Network tap和Packet filter。Network tap从网络设备驱动程序中收集数据拷贝并转发到监听程序。Packet filter则决定是否接受该数据包和复制数据包的哪些部分。每个BPF都有一个Buffer,如果filter判断接收某个包,则将其复制到buffer中存起来,等buffer满了后,一次性提交用户进程。其实现的函数库为Libpcap库函数,这是一个以BPF为捕获机制的跨平台的编程接口。网络协议解析模块是入侵检测系统中非常重要的一个模块,只有对捕获到的数据包进行解析完全,才能在此基础上进一步分析是否有入侵行为发生。入侵事件检测模块是通过协议规则解析库进行协议分析来判断是否有入侵行为发生,在这个模块中就转化为协议规则解析库的匹配问题。由于协议规则解析库与入侵事件检测模块联系紧密,在入侵事件检测模块中需要用到协议规则解析库的许多函数,两个模块设计方案是互相配合的。协议规则解析库是设计一个入侵事件描述语言,由本库把定义好的攻击特征库从文件中读取出来,然后进行解析。响应模块用于当系统检测到入侵时候,通过响应来处理相关事情。在本系统中采用被动响应,如使用声音,E-mail或日志记录等对入侵进行响应。

3 基于网络协议的入侵检测系统的算法设计

结合TCP/IP协议结构原理与入侵检测系统模型,就网络中最常用的几个协议,如以太网协议,ARP/RARP协议,IP协议等进行了算法设计分析,其详细设计如下:

(1)以太网解析部分的算法设计:首先获取长度等参数后,检验数据包的长度是否合法,检验遵循的方法是:所捕获的数据包的总长必须大于或等于以太网首部的长度;将指针指向该网络数据包的开始处,并将u_char类型转换为EtherHdr*类型;然后按照协议规定的字节数和字节安排,一一将各字段提取出来;最后移动指针到以太网的数据部分,根据类型字段来进行下一层协议解析工作。

(2)ARP解析部分的算法设计:将ARP/RARP包首指针类型转换为EtherARP*类型;检测ARP/RARP包的有效长度,检测方法:包总长度必须大于等于ARP首部的长度;根据ARP数据结构来一个一个的解析提取数据。

(3)IP协议解析部分的算法设计:将指针指向IP数据包的开始位置,同时将指针类型转换为IPHdr*;接着按照IP数据包首部的协议规定进行协议解析,开始提取数据;然后依次解析出IP协议版本号、IP首部的长度、服务的类型、16位总长度、16位标志、3位标志和13位片偏移、生存时间、协议代码、IP首部校验和;比较判断校验和是否正确,可以使用checksum()函数来计算校验和;解析出源IP,目的IP,判断有无IP分片;最后移动指针到下一层数据包的开始位置,根据所判断的下一层的协议类型来进行下一层的协议解析工作。

(4)TCP协议解析部分的算法设计:取得指向TCP数据包开始部分的指针,并转换类型为TCPHdr*;校验TCP数据包的长度的有效性;按TCP协议规定进行解析提取数据;用swtich…case..结构对TCP各个选项进行处理。

(5)UDP协议解析部分的算法设计:由于UDP协议解析的算法,代码都与前面的协议解析很类似,这里就简化描述一下:将指针指向UDP数据包的开始处,并转换类型为UDPHdr*;检测数据包的长度,判断其数据包是否有效;开始解析数据包,提取各类数据部分。

(6)ICMP协议解析部分的算法设计:先将指针指向ICMP数据包的开始位置,并将类型转换为ICMPHdr*;然后读取8位类型,判断是哪一种类型,是echo应答、不可达、抑制源路由还是重定向;再分析8位代码,具体的来判断是哪一情况。

4 结论

作为新一代入侵检测技术,目前基于网络协议解析的入侵检测系统主要还是处于理论研究阶段。本文提出的一种新的基于协议解析的入侵检测系统,给出了该网络入侵检测系统的模型构建和算法设计。该系统能大大减少数据运算匹配量,为基于协议解析的入侵检测方法提供了一个更加广阔的发展平台。当然,随着攻击技术不断发展,入侵检测技术还有许多问题有待进一步地研究。

参考文献

[1]谢希仁.计算机网络(第4版)[M].北京:电子工业出版社.2003.

[2]张新刚,刘妍,王星辉.基于入侵检测系统(IDS)的分析与研究[J].网络安全技术与应用.2006.

[3]刘学波,孟丽荣.高速网络环境下的网络入侵检测系统的研究[J].计算机工程与设计.2005.

[4]Stephen Northcutt.余青霓.网络入侵检测分析员手册[M].北京:人民邮电出版社.2000.

基于网络入侵检测研究 篇9

关键词:入侵检测,数据挖掘,聚类分析,关联分析

1 入侵检测概念

入侵检测主要过程包括:数据采集、数据分析、响应过程。数据采集是从网络系统的多个点进行, 采集内容包括系统日志、网络数据包、重要文件以及用户活动的状态与行为等。数据分析则通过模式匹配、异常检测和完整性检测三种技术手段对采集的数据进行分析。

2 入侵检测分类

按照检测对象划分:

基于主机:系统分析的数据是计算机操作系统的事件日志、应用程序的事件日志、系统调用、端口调用和安全审计记录。主机型入侵检测系统保护的一般是所在的主机系统。是由代理来实现的, 代理是运行在目标主机上的小的可执行程序, 它们与命令控制台通信。

基于网络:系统分析的数据是网络上的数据包。网络型入侵检测系统担负着保护整个网段的任务, 基于网络的入侵检测系统由遍及网络的传感器组成。

混合型:基于网络和基于主机的入侵检测系统都有不足之处, 会造成防御体系的不全面, 综合了基于网络和基于主机的混合型入侵检测系统既可以发现网络中的攻击信息, 也可以从系统日志中发现异常情况。

3 网络数据收集

以太网数据传输系统正常工作的时候, 应用程序只能接收到以本主机为目标主机的数据包, 其它数据包将被丢弃不作处理。因此要截获到流经网卡的不属于自己主机的数据, 必须绕过系统正常工作的处理机制, 直接访问数据链路层, 截获相关数据, 并进行过滤处理, 这样就可以截获流经网卡的所有数据。

利用Tcpdump就可以实现网络数据包的捕获, 它将网络中传送的数据包的“头”完全截获下来提供分析, 并支持针对网络层、协议、主机、网络或端口的过滤。其中用户对数据包的检查或者处理程序可以通过回调 (Callback) 机制进行调用。

对于TCP协议的数据包, Tcpdump截获的数据信息包含如下:

时间戳源IP地址源端口>目的IP地址目的端口TCP标志数据的序列号

响应序列号接收缓存的窗口大小优先级选项

对于UDP协议的数据包, Tcpdump截获的数据信息包含如下:

时间戳源IP地址源端口>目的端口数据包长度

4 数据预处理

由于从网络上截获的数据是二进制的, 首先要对二进制网络数据进行预处理, 处理成适合数据挖掘的格式。由于在同一段时间内, 网络上可能会同时建立很多连接, 这些连接数据包是按时间顺序排列的, 这样就会导致不同连接的数据包相互穿插。因此, 为了收集有关连接的信息, 需要把所有关于一条连接的所有数据包整理成一条连接记录, 首先把截获的二进制数据包文件转换成ASCII格式的分组数据包, 一个数据包一行, 将这些数据包按照时间戳排序。然后再把这些数据包处理成一组由属性特征组成的连接记录。用一个脚本程序扫描ASCII格式文件中的每行数据, 把属于同一连接的所有数据包总结成一条连接记录, 对每条TCP连接, 脚本程序完成的工作:

在连接建立阶段, 检查TCP三次握手是否正常, 如果没有正常建立连接, 检查连接的结束状态以及连接建立不成功的原因。

在数据传输阶段, 监控所有的数据包和控制包, 记录与连接有关的某些统计值。

在连接结束阶段, 检查连接结束的状态。

5 数据挖掘算法在入侵检测中的应用

数据挖掘从存储的大量数据中识别出有效的、新的、具有潜在用途及最终可以理解的知识。以数据为中心, 把入侵检测看成一个数据分析过程, 利用数据挖掘的方法从审计数据或数据流中提取出感兴趣的知识。提取的知识表示为概念、规则、规律、模式等形式, 并用这些知识去检测异常入侵和已知的入侵。目前应用到入侵检测中的数据挖掘算法有:将它们能起到不同的效果。

(1) 关联分析算法:关联分析算法可以挖掘出记录中不同属性之间的关联关系。利用审计数据中各数据项之间的关系, 作为构造用户所使用的模式的基础。

(2) 序列分析算法:序列分析算法可以获取记录之间在时间窗口中的关系, 可以发现审计数据中一些经常以某种规律出现的事件序列模式。这些频繁发生的事件序列模式可以在构造入侵检测模型时选择有效的统计特征。使用关联分析数据挖掘和序列分析数据挖掘算法可以得到正常行为的模式, 用于异常入侵检测。

(3) 聚类分析对未经标记的训练数据, 进行特征分析, 通过K中心点算法 (或其它算法) 在不具备任何领域知识背景的情况下执行入检测功能。

(4) 分类分析算法:它将一个数据集合映射成预先定义好的若干类别, 利用该算法进行入侵检测的方法是:先收集用户或应用程序的“正常”和“非正常”的审计数据, 然后用一个分类算法得到规则集, 用它来预测新的审计数据属于正常还是异常。

数据挖掘技术的优点在于:系统能够从大量的审计数据中自动产生精确的适用的检测模型, 使入侵检测系统适用于任何计算环境;不需要用户提供主观的评价信息, 善于发现容易被主观忽视和隐藏的信息。

6 入侵检测过程分析

入侵检测过程分为三部分:信息收集、信息分析和结果处理。

信息收集:入侵检测的第一步是信息收集, 收集内容包括系统、网络、数据及用户活动的状态和行为。由放置在不同网段的传感器或不同主机的代理来收集信息, 包括系统和网络日志文件、网络流量、非正常的目录和文件改变、非正常的程序执行。

信息分析:收集到的有关系统、网络、数据及用户活动的状态和行为等信息, 被送到检测引擎, 检测引擎驻留在传感器中, 一般通过三种技术手段进行分析:模式匹配、统计分析和完整性分析。当检测到某种误用模式时, 产生一个告警并发送给控制台。

结果处理:控制台按照告警产生预先定义的响应采取相应措施, 可以是重新配置路由器或防火墙、终止进程、切断连接、改变文件属性, 也可以只是简单的报警。

参考文献

[1]蒋建春, 冯登国.网络入侵检测原理与技术[M].北京.国防工业出版社, 2001.

基于网络入侵检测研究 篇10

随着计算机互联网环境的日益复杂化,以及网络技术的日益普遍化,使得互联网入侵攻击方法日益多样化、智能化以及复杂化,因此使用传统的防火墙以及操作系统加固的方式无法抵挡现如今的入侵攻击,无法满足网络安全的要求,故入侵检测系统应运而生[1⁃2]。入侵检测系统能够针对网络流量数据进行检测分析,从中分辨出异常流量,检测入侵等危害计算机安全的行为。然而网络流量数据庞大,导致了检测系统在需要数据对决策进行支撑时,往往对海量数据无从下手,不能快速而有效率地从中提取出需要的信息和有价值的知识。顺应此需求,数据挖掘技术在近年来发展十分迅速。作为一种高端的数据分析工具,数据挖掘技术具有强大的数据处理和分析能力,而目前通信、计算机和网络等技术的合并使得数据量进一步扩大,所以数据挖掘技术在信息化管理中的地位进一步提升[3⁃4]。

BP神经网络等机器学习算法属于数据挖掘技术中常用的技术手段,能在大量样本集训练和学习后自动找出运算需要的参数和模式,有极好的数据处理能力和自组织学习能力,并且能准确进行识别,但是常规BP神经网络建立的网络入侵检测技术存在由于BP神经网络容易陷入最小值导致检测效率和准确率低下等问题,本文使用粒子群算法对BP神经网络模型进行优化,使用动态惯性权重系数以确定BP神经网络的参数,并将网络入侵流量特征与BP神经网络的参数组合并编码成一个粒子以实现网络入侵流量特征与BP神经网络的参数的同步选取[5]。

1 改进型BP神经网络

1.1 BP神经网络

训练样本设定为(xk,yk),其中xk为输入向量,yk为期望的输出向量,即实际类型。则BP神经网络的输出和实际类型yk的误差之和表示为:

式中:Ek表示为:

BP神经网络的输出和实际类型yk的误差通过对权值的调整而改变。设定BP神经网络隐层中第i个输出表示为:

BP神经网络调整权值方法如下:

BP神经网络中第r层的进行权值调整方法如下:

由于使用BP神经网络建立的网络入侵检测模型在实际应用中,会由于BP神经网络的梯度下降算法优化权值而导致陷入局部最优解等问题,使得网络入侵检测模型的误差逐渐增加,降低检测准确率,因此本文使用粒子群优化算法对BP神经网络的权值进行优化[6]。

1.2 改进粒子群算法

粒子群优化算法是人们受到鸟类觅食行为启发而演化出来的。设定粒子群优化算法中第i个粒子的位置为Xi= {xi1,xi2,⋯,xin},第i个粒子的飞行速度为Vi= {vi1,vi2,⋯,vin},粒子最优位置向量表示为Pi= {pi1,pi2,⋯,pin},整个粒子群的最优位置向量表示为Gi= {gi1,gi2,⋯,gin},则粒子群更新速度和更新位置方法表示为:

由于粒子群优化算法的搜索效率和准确率取决于粒子群优化算法中的惯性权值,因此本文使用动态惯性权重系数以确定BP神经网络的参数:

式中:wmax表示惯性权值的最大值;wmin表示惯性权值的最小值;favg表示适应度函数的平均值;fmin表示适应度函数的最小值[7⁃8]。

本文将网络入侵流量特征与BP神经网络的参数组合并编码成一个粒子以实现网络入侵流量特征与BP神经网络的参数的同步选取。粒子的位置向量表示为:

(1)入侵流量特征,“1”表示特征被选择,“0”表示特征没有被选择;

(2)BP神经网络参数。

粒子的适应度函数表示为:

式中:fi为特征状态;w为检测率权值。

本文研究的网络入侵检测方法步骤如下:

步骤1:对网络入侵流量数据进行采集,提出特征,并对入侵流量特征进行归一化处理;

步骤2:对BP神经网络以及粒子群优化算法的模型进行设置,对粒子群进行初始化,粒子群的粒子是由网络入侵流量特征与BP神经网络的参数组合并编码而成;

步骤3:对各个粒子适应度值进行计算,更新粒子历史及粒子群的最优位置;

步骤4:自适应调节粒子群算法的惯性权重以及对粒子的速度和位置进行更新;

步骤5:如果更新迭代满足终止条件,则由粒子群最优位置得到BP神经网络的最优参数;若不满足终止条件,则从步骤3 继续进行迭代更新;

步骤6:根据得到的BP神经网络的最优参数建立网络入侵检测模型。

本文研究的网络入侵检测方法工作流程如图1所示。

2 实验研究

本文使用KDD CUP99 数据库数据对本文研究的网络入侵检测技术进行实验研究,使用Matlab建立上述研究的入侵检测模型。KDD CUP99 数据库包含了各类入侵流量数据,选取较为经典的Probe(扫描攻击)、DOS(拒绝服务攻击)、U2L(未授权使用本地超级权限访问攻击)以及U2R(远程用户未授权访问攻击)这4 类入侵类型。针对4 类入侵类型各选取200 条数据流,其中随即抽取100 条用于对检测模型进行训练,另外100 条用于对检测模型的检测性能进行测试。针对数据流进行归一化处理以简化模型数据处理[9]:

式中:S为归一化处理之前的值;Smax为归一化处理的最大值;Smin为归一化处理的最小值。

为了对比研究本文提出的粒子群优化BP神经网络算法的网络入侵检测模型的检测性能,使用常规BP神经网络建立同样的检测模型,并使用同样的训练和测试数据进行模型训练和性能测试。

基于两种算法建立的检测模型的检测结果如图2,图3 所示。

其中横纵坐标表示的含义如表1 所示。

通常使用误报率、检测率以及检测时间对网络入侵检测方法的检测性能进行评价[10]:

则两种方法的检测率和误报率结果如表2 所示。

%

使用本文研究的算法以及使用常规BP神经网络算法建立的检测模型的检测效率对比如表3 所示。

从实验数据可以看出,使用本文改进的粒子群优化BP神经网络算法建立的网络入侵检测模型相比于常规BP神经网络算法建立的网络入侵检测模型,其准确率明显提高。针对4 种入侵类型的平均检测率为91.9%,平均误报率为仅8.1%,而常规算法的平均检测率为80.975%,平均误报率为18.95%。同时,本文研究的算法的检测效率也要高于常规算法,针对4 种入侵类型,平均训练时间仅为13.98 s,检测时间仅为8.3 s,而常规算法的平均训练时间为37.6 s,检测时间为16.67 s。

s

3 结语

本文针对使用传统的防火墙以及操作系统加固的方式无法抵挡现如今的入侵攻击,无法满足网络安全的要求等问题,本文对基于数据挖掘技术的网络入侵检测技术进行了研究。BP神经网络等机器学习算法属于数据挖掘技术中常用的技术手段,能在大量样本集训练和学习后自动找出运算需要的参数和模式,有极好的数据处理能力和自组织学习能力,并且能准确进行识别,但是常规BP神经网络建立的网络入侵检测技术存在由于BP神经网络容易陷入最小值导致检测效率和准确率低下等问题,本文使用粒子群算法对BP神经网络模型进行优化,使用动态惯性权重系数以确定BP神经网络的参数,并将网络入侵流量特征与BP神经网络的参数组合并编码成一个粒子以实现网络入侵流量特征与BP神经网络的参数的同步选取。通过使用KDD CUP99 数据库的入侵流量数据对使用本文方法以及常规BP神经网络建立的检测模型进行训练和测试,结果表明,本文研究的算法建立的检测模型具有更高的检测效率以及检测准确率。

参考文献

[1]左申正.基于机器学习的网络异常分析及响应研究[D].北京:北京邮电大学,2010.

[2]吕曼.基于数据挖掘的入侵检测方法的研究[D].大庆:大庆石油学院,2007.

[3]胡秀.基于Web的数据挖掘技术研究[J].软件导刊,2015(1):149-150.

[4]李仕琼.数据挖掘中关联规则挖掘算法的分析研究[J].电子技术与软件工程,2015(4):200.

[5]宋国峰,梁昌勇,梁焱,等.改进遗传算法优化BP神经网络的旅游景区日客流量预测[J].小型微型计算机系统,2014(9):2136-2141.

[6]胡天骐,单剑锋,宋晓涛.基于改进PSO-LSSVM的模拟电路诊断方法[J].计算机技术与发展,2015(6):193-196.

[7]孙卫红,童晓,李强.改进PSO优化参数的LSSVM燃煤锅炉NO_X排放预测[J].数据采集与处理,2015,30(1):231-238.

[8]郭通.基于自适应流抽样测量的网络异常检测技术研究[D].郑州:解放军信息工程大学,2013.

[9]张磊.三种神经网络识别P2P流量的方法比较[D].重庆:重庆大学,2010.

基于网络入侵检测研究 篇11

针对BP算法容易陷入局部极值和粒子群算法易失去多样性的问题,为了克服两种算法的缺点同时能够利用这两种算法的优点,本文提出一种新的算法,在算法前期利用粒子群算法能够较快的找到局部最佳的优点,如果此时粒子群失去多样性的情况下,再继续用BP算法继续训练网络,在局部极值的情况下继续训练网络,从而找到局部更优点,如果在BP算法陷入极值时,转到粒子群算法进行训练神经网络,进而克服BP算法的缺点,同时,本文将新的算法用户网络入侵检测中进行验证,发现本文提出的算法在精度和速度方面都要优于BP算法和粒子群算法。随着移动终端电子设备的使用普及,计算机网络已经渗透到我们生活的每个角落并正在改变我们的生活方式,但是,网络安全问题日渐凸显,当前网络安全防护技术有访问控制,入侵检测等等,其中,网络入侵检测是当前研究的热点问题之一。然而,传统的入侵检测技术正逐渐显示其缺点和不足,基于BP神经网络的入侵检测系统引入使得与人工智能结合的更为紧密,更能识别和检测出各类入侵行为。但是BP算法本身具有训练时间长且不易收敛到局部最小的缺点,本文分析了当前的入侵检测系统及神经网络技术,并且考虑到BP算法的缺陷的基础上提出将粒子群优化算法(PSO)和BP算法相融合的新算法,称之为IPSO-BP算法。主要优点是克服两种算法在入侵检测训练过程中各自的缺点。

改进算法原理

PSO-BP算法用来优化的对象(粒子)主要是BP神经网络的权值和阈值,粒子群空间维度是BP神经网络的权值和阈值的个数之和,每个粒子对应神经网络的权值和阈值,在输入样本时,用粒子群中的粒子来计算出相应的输出,而衡量每个粒子的适应度的是网络的期望值和实际输出值之间的均方误差。公式如下:

(1)

J表示每个粒子的适应值;其中N为训练样本集的总数;Yij为第i个样本的第j个网络输出节点的理想输出值;yij是第i个样本的第j个实际输出值,c是网络输出元的个数。在本算法中还要引入另一个重要指标-粒子群的聚集程度公式如下:

(2)

其中t表示粒子群迭代到第t代;s(t)表示当前粒子和每个粒子历史最好位置的聚集程度;n表示粒子总数;i表示第i个粒子;j表示第i个粒子的第j维;xij(t)表示第i个粒子的第j维坐标值;表示粒子群中所有粒子的第j维坐标的平均值。当粒子的聚集程度低于S(t)时,要进行对当前粒子的每维加上一个(-1,1)之间的随机值进行干扰,同时对每个粒子的最好位置也加上随机值进行变化,提高其多样性。对全局最优值用BP算法进行训练。具体的算法流程如下:(1)设定粒子群中粒子个数N,根据需要确定神经元的个数和相应的权值和阈值,以此确定粒子群中粒子的维数D,设定训练次数iter,设定粒子更新速度的最大值Vmax,学习因子c1,c2,设定适应值精度error。(2)随机初始化每个粒子的位置和速度。并且将每个粒子的pbest和全局最小值gbest设为无穷大。(3)把每个粒子值赋对应的赋给神经网络的权值和阈值。输入样本,计算出对应的实际输出值,按公式(5)计算每个粒子的适应值。(4)取适应值最小的与gbest比较,如果比gbest小,更新gbest,反之gbest不变。每个粒子当前适应值和自身历史最好pbest比较,如果比pbest小,更新pbest和相应的位置,反之pbest不变。如果gbest低于设定的error则,训练结束。如果训练次数大于iter,训练结束,反之进入步骤(5)。(5)根据公式(2)、计算出每个粒子每一维的变化速度,并且与Vmax和 -Vmax比较比Vmax大,值改之为Vmax比-Vmax小的改之为-Vmax,带入公式(3)更新每个粒子。(6)用公式(6)判断当前粒子的聚集程度,如果不低于預先设置的标准时,转到步骤(3)重复执行,反之进入下一步骤。(7)产生随机数对当前粒子进行干扰。对每个粒子的历史最好位置,用随机函数进行干扰,保存为历史最好位置和适应值。用BP算法对全局最优值的位置进行训练,得到的适应值与全局最优值比较,较好的话,更新全局最优值和相应位置。转入步骤(3)重复执行。

实验

本实验数据主要源于麻省理工学院林肯实验室提供的1999年从模拟网络中手机的网络攻评估数据。设计网络中为一个输入单元,8个隐含单元和1个输出单元的三层神经网络。C1=C2=1.5,Vmax=1.5,Wmax=0.95,Wmin=0.25,均方误差设置为error=1e-4;粒子群的大小设置为N=70。通过比较带动量项的BP算法,标准的PSO算法,IPSO-BP算法。在粒子群聚集到一定程度,用rand()对当前粒子群干扰的算法和对粒子群粒子历史最优位置干扰的方法和IPSO-PB算法比较结果。均方误差值如下:

图1:三种算法误差比较曲线

从图1可以看出,在均方误差值方面,IPSO-BP算法优于后两种算法。本文提出的干扰当前粒子群,干扰每个粒子历史最好位置和集合两种方法并且对粒子群最好位置采用BP算法等三种方法在均方误差方面用实验验证。可以看出,对于本实验数据,在粒子群迭代到1500次左右时,干扰当前和干扰粒子历史最好位置两种方法在均方误差方面已经不是很明显了,在IPSO-BP算法中,到1500次左右的时候却下降的很快。

(作者单位:中国人民银行淮安市中心支行)

作者简介

基于复杂网络的遥感图像检测研究 篇12

近年来, 青岛附近海域在每年的6月到8月份频繁爆发赤潮灾害, 赤潮是一种草绿色藻体, 管状膜质, 丛生, 主枝明显, 分枝细长, 高可达1米, 基部以固着器附着在岩石上, 生长在中潮带滩涂, 石砾上严重影响了沿海渔业和旅游业的发展, 浒苔的爆发主要是由于全球气候变化、水体富营养化等原因。

本文基于复杂网络理论提出一种新的使用社团发现的办法在遥感图像中的赤潮检测和识别方法。

1 国内外研究现状

复杂网络能够表达许多真实世界复杂系统的自然结构, 近年来, 许多不同的科学领域产生兴趣关注这些网络的统计特征的研究[1]。尽管许多计算机视觉的论题可以用复杂网络技术建模, 但这仍然是有待探索的领域, 这方面的参考文献很少。涉及复杂网络的研究可以定义为图论和统计机制之间的交集, 这赋予该领域真正的多学科性质。关于复杂网络理论的第一次研究可以再文献Flory[1]、Rapoport[5]以及Erdos和Renyi[6]中看到。

复杂网络变得如此流行的主要原因之一是它实际表示任何自然结构的灵活性、一般性, 包括那些拓扑性质动态变化的。事实上, 每个离散的结构例如列表、树、网络和图像都可以恰当的被表示为一个图。考虑到这些, 各种研究如何把一个问题用复杂网络来描述, 接着分析它的拓扑性质及特征提取。一些应用用这些描述符来区别不同的类别, 因而产生了许多图像识别的技术。

文献中许多文章将真实结构描述为复杂网络, 在文献[1]中, 复杂网络被用来做文本建模, 实验结果显示, 网络参数和文本质量之间有很强的相关性。

在文献[5]中, 纹理特征问题用复杂网络表示, 节点表示像素点, 像素点之间的相似性映射为节点之间的连接。可以看到, 不同类型的纹理变现出不同的节点度分布。传统的网络连通性量度被使用为了得到特征向量, 特征向量可以用来纹理描述和分类。

本文的思想与上述相关的文章类似, 集中于纹理模式识别。由于人类交流的重要性, 在未来几年, 图像描述和分析以及复杂网络提供了一个有希望 (有挑战) 的研究机遇。

2 基于模块度的社团发现算法

基于模块度优化的社团发现算法, 也就是优化模块度Q值的一部分算法。Q值是由Newman在2004年的论文“Fast Algorithm for Dectecting Community Structure in Networks”中提出的 (也就是FN算法) 。通过优化Q值来提高模块度是这类算法的主要思路, 在此基础上, 本文又划分了三个类别: (1) 采用聚合思想, 也就是分层聚类中的自底向上的作法。典型算法有Newman快速算法 (FN算法) 、CNM算法 (Finding Local Community Structure in Networks) 和MSG-MV算法 (Multistep Greedy Algorithm Identifies Community Structure in RealWorld and Computer-Generated Networks) 等。 (2) 采用分裂思想, 也就是分层聚类中自顶向下的方法。代表当然就是Newman的GN算法, 但是GN的复杂度实在是高了些, 所以Newman之后提出的一种谱方法 (Modularity and Community Structure in Networks) 。 (3) 直接寻优法, 这类算法的两个代表EO算法 (Community Detection in Complex Networks Using External optimization) 和整数规划方法, 但是一些基于遗传算法和蚁群的智能划分方法也属于此类。但是在2007年的论文“Resolution Limit in Community”中认为基于Q值的优化方法无法处理粒度小于一定程度的网络, 虽然后续跟进了一些优化的算法, 但是此类方法在处理真实网络时还是很难反映真实的社团结构。

3 本文复杂网络模型的建立

本文中将选定的遥感图像的每个像素点p (B1, B2, B3) (其中B1, B2, B3分别代表遥感图像中像素点p对应的三个波段值) 抽象为一个节点i, 节点i和j之间连边是否连边取决于一个本文定义的相似度, 这个相似度就是根据像素点之间不同的波段值B1, B2, B3来计算任意两个像素点之间的欧式距离, 即

由此构建相似度矩阵

用这个dij来作为阈值衡量节点i和j是否连边, 如果dij小于等于所选阈值那么就在节点i和j进行连边, 否则就没有连边, 这样就将一幅遥感图像转化为了一个无权无向的复杂网络模型G (V, E) 。其中V就是像素点即节点的集合, E就是节点之间连边的集合。

设定不同的阈值就会得到不同的复杂网络模型, 那么得到的社团结构也就不同, 那么如何选取阈值成了一个将一幅遥感图像转化成一个复杂网络模型的关键问题。

4 提出阈值选取的两种方法

4.1 反复测算法

对选定区域的遥感图像计算dij得到一个取值范围[dmin, dmax], 在这个区间内从dmin到dmax以步长为1选取阈值, 即阈值可选为为dmin, dmin+1, dmin+2, …, dmax, 不同的阈值对应不同的复杂网络模型, 然后针对这些复杂网络进行社团划分, 本文所采用的社团划分方法是Newman的针对大规模网络的基于模块度的CNM算法。

在这里本文提出两个指标来作为衡量阈值选取的好坏的标准, 设集合A为匹配到的赤潮节点集合, 集合B为社团划分检测到的赤潮节点集合, 集合C为实际的赤潮节点集合, rate为覆盖率, 即匹配到的赤潮节点个数与社团划分检测到的赤潮节点个数之间的比值,

P为精确度, 即实际的赤潮节点个数与社团划分检测到的赤潮节点个数之间的比值,

当覆盖率最高精确度也最高的情况下对应的阈值就是用来做社团划分最好的阈值选择。

实验结果:本文选取了一块区域的遥感图像 (图1) 为例, 图像中包含1862个像素点, 针对本图像用第2部分中提到的复杂网络建模的方法建立复杂网络模型, 计算节点之间的相似度的取值区间在[1, 60], 采用CNM算法对每一个复杂网络模型进行社团划分, 得到如表1的结果

由表1可以看出, 在阈值选取过小的情况下, 网络连边过于稀疏, 网络中存在多个连通片, 所以划分出的社团个数较多, 只有在阈值取到[5, 59]的时候可比较符合实际情况的划分出两个社团。

计算不同阈值情况下的覆盖率rate和精确度p, 得到结果如图2 (覆盖率) 图3 (精确度) :

由图2和图3可以看出, 在阈值的取值范围内, 覆盖率都在93%以上, 而精确度却在阈值取37的时候达到最大值65%, 因此可以通过计算不同阈值情况下的覆盖率和精确度来确定阈值在选37的时候最好, 也就是在阈值为37的时候进行社团划分得到的结果最接近实际情况, 如下图4:

4.2 抽样计算阈值法

在遥感图像中选取一定数量的海洋图像的像素点S (B1i, B2i, B3i) 和赤潮像素点C (B1j, B2j, B3j) 来计算一个平均阈值:

根据第2部分中的相似度矩阵, 取值小于等于阈值的保留, 大于阈值的取为0, 建立复杂网络模型, 然后利用Newman的针对大规模网络的基于模块度的CNM算法进行社团划分。

实验结果如图5。

5 结论

赤潮灾害是近年来在黄海及渤海海域爆发的影响较大的海洋灾害, 利用遥感图像, 对赤潮灾害进行监测和治理是非常有必要的, 本文提出一种新的利用复杂网络社团发现的方法, 对遥感图像进行处理, 以此检测出遥感图像中可能为赤潮的区域, 为赤潮灾害的监测和治理提供有力的依据。

本文所采用的是Newman的针对大规模网络的基于模块度的CNM算法, 然后提出了两种确定阈值的方法: (1) 反复测算法, (2) 抽样计算法;在反复测算法中提出了两个衡量社团划分好坏的指标: (1) 覆盖率, (2) 精确度, 以此作为确定阈值的指标。最后得出了一种可以再遥感图像中利用复杂网络的方法, 检测出图像中有用信息的可行方法。

摘要:本文提出一种新的利用复杂网络理论处理遥感图像的方法 , 对遥感图像进行复杂网络建模, 然后对复杂网络模型划分社团, 本文所采用的是Newman的针对大规模网络的基于模块度的CNM算法, 然后提出了两种确定阈值的方法: (1) 反复测算法, (2) 抽样计算法;在反复测算法中提出了两个衡量社团划分好坏的指标: (1) 覆盖率, (2) 精确度, 以此作为确定阈值的指标, 最后得出了一种可以再遥感图像中利用复杂网络的方法, 检测出图像中有用信息的可行方法。

关键词:赤潮,遥感图像,复杂网络,社团发现

参考文献

[1]Yueguo Zhang, Lili Dong, A Complex Network-Based Approach for Interest Point Detection in Images[J], 2012.

[2]邵峰晶, 孙仁诚, 李淑静.多子网复合复杂网络及其运算研究[J].复杂系统与复杂科学.

[3]邵峰晶.多子网复合复杂网络[C]//第13届海峡两岸资讯技术研讨会.2012.

[4]隋毅.多子网复合复杂网络模型及其相关性质的研究[J].青岛大学, 2012.

[5]Yueguo Zhang, Lili Dong, Jianhua Li.A complex network-based approach to estimating the number of people in video surveillance[J].2013.

[6]Rozniza Ali, Bo Jiang, Mustafa Man, Amir Hussain.Classification of Fish Ectoparasite Genus Gyrodactylus SEM Images Using ASM and Complex Network Model[J].2014.

[7]汤亚波, 刘晓军, 徐守时.一种遥感图像海上船舶多级自适应聚类分割方法[J].计算机应用, 2005, 9.

上一篇:分层教学的国内外研究下一篇:中国动画创作