基于协议异常的通用结构网络入侵检测器研究文档格式.docx
- 文档编号:19001114
- 上传时间:2023-01-02
- 格式:DOCX
- 页数:10
- 大小:133.37KB
基于协议异常的通用结构网络入侵检测器研究文档格式.docx
《基于协议异常的通用结构网络入侵检测器研究文档格式.docx》由会员分享,可在线阅读,更多相关《基于协议异常的通用结构网络入侵检测器研究文档格式.docx(10页珍藏版)》请在冰豆网上搜索。
LIPei
(InformationCenter,Xi’anInstituteofPostandTelecommunication,Xi’an710049,China)
Abstract
Thenumberofintrusioneventsonnetworkisincreasingrapidlyrecently,securityofinternetisbeingchallenged;
theproblemscausedbythesephenomenonemergeendlesslysynchronous.Facethefact,newtechnologiesinnetworksecurityfieldareappearedcontinuously.Beinganimportantwayofnetworksecurity,intrusiondetectiontechnologyisallalongthehotproblemofworldnetworksecuritytechniqueresearch.Wecanseethatthepracticabilityofintrusiondetectionisbeingprovedbyaperiodstudy;
meantimewealsoknowthatitsresearcharebeingdeeperanddeeper,soitsimplementationisnotenoughcomparedwithitsrequirement.Theexistedsystemsaremostlybasedonmisusedetectionandcannotdetectunknownattack,sointhispaperweresearchonanomalydetection,andusethemorepracticalmethodcalledprotocolanomalydetection,meantimebuiltauniversalstructurethatsuitformanykindsofprotocols.Finallycompleteanetworkintrusiondetectorusingfiniteautostatemachineandtextmatching.Wealsodosometesttovalidateitsfunction,showthefeasibilityandusabilityofthismethodandthisstructure,andprovethemeaningofresearch.
Keywords:
IntrusionDetection;
ProtocolAnomaly;
UniversalStructure
1.引言
现今,随着网络技术的不断发展和广泛应用,网络已成为社会各个领域信息共享与交换的重要平台,从空间上与时间上拉近了人们之间的距离,极大程度上改变了整个社会的行为方式和面貌。
然而,我们除了看到网络技术无限的发展潜力和空间,更要意识到网络发展与推广存在着严重障碍,主要是大量的安全隐患和恶意攻击。
所以,为了防止网络遭受入侵,享受网络带来的方便快捷,人们已经认识到必须采取有效的安全措施来解决网络存在的安全问题。
然而,在目前状况下,想仅仅在计算机操作系统中设置一些安全机制以防范非授权用户对系统资源和数据的访问,来彻底阻止入侵者对系统的破坏与攻击是不现实的。
因此,我们可以尝试检测这些入侵行为,以便以后可以对同类型的攻击采取必要的措施。
这一领域的研究被称为“入侵检测”。
入侵检测是检测和响应计算机误用的学科。
总的来说,根据采用技术的不同可以将入侵检测技术分为:
误用检测,即检测与误用模式匹配的操作;
异常检测,即检测相对于可接受的行为轮廓的偏差。
但是,与诸如防火墙等技术高度成熟的产品相比,现有的入侵检测技术还存在相当多的问题。
在过去,以误用检测技术为基础的入侵检测系统一直是市场上的主流。
不过这种状况在近期的网络型入侵检测系统似乎开始有些改观,许多的网络型入侵检测系统开始陆续加入以异常检测为基础的检测元素,部分的厂商甚至直接以异常检测为其主要诉求,并且强调其可以在特定过去“未出现过的未知攻击”发起时即可检测出这些攻击的行为,这种未知的攻击被称为Zero-DayAttack。
Zero-DayAttack所针对的目标不见得是未知的弱点,也可能是已知的安全弱点,但是因为其攻击在过去并未出现过,对误用检测这种以已知攻击为基础的检测方式而言自然是个不小的挑战。
2.协议异常入侵检测的研究的背景和意义
传统的异常检测采取异常行为检测(BehavioralAnomalyDetection)的策略。
这样的策略是基于每一个人的行为模式有固定的轨迹可寻的假设,认为经过一段时间的学习及观察过程之后,理论上可以分析出使用者的“正常”或是“合法”活动。
当一些偏离这些平常活动的事件出现时,即意味着可能有资源被盗用或是潜在攻击事件的可能。
因此,所有和过去学习得来的行为模式信息不符的都会被认定为潜在可能的入侵意图。
类似的技术其实已经被广泛的利用在信用卡盗刷的检测之上。
但是,对于网络存取行为而言,却并没有这么单纯。
相对于偶尔为之的刷卡行为,网络行为不仅多样而且多变,并且随时会有大量的网络行为出现,因此“异常行为”的检测牵涉相当多,可能必须有人工智能或是专家系统的判断动作,此时不仅需要大量的运算资源,而且因为网络行为的多元化,其出现警报误判的机率也相对高出很多。
因此,行为异常检测尽管已经被提出相当久的时间,至今仍然是一个被研究中并未完全成熟的领域,因此少被采用也就不足为奇了。
由于异常行为检测的困难度,部分的网络安全厂商开始思考其它的异常检测模式。
因为网络间的沟通基本上以网络协议为基础,这些协议提供了一个清楚的准则:
理论上所有的网络活动都必须遵循着网络通讯协议的要求进行,所以只要出现网络活动未依照网络协议进行的状况时,即代表着可能潜藏着可疑的攻击行为。
这种做法被称为协议异常检测(ProtocolAnomalyDetection)。
基本上,协议异常检测可以被视为是异常检测的其中一个特例。
3.对协议异常入侵检测的思考
协议异常检测可能引发一个疑问是:
既然所有的网络活动都必须依着协议的规范而为,违反协议规范的行为理应被接收端拒绝,如此何必去检测?
当然,理论上可能是如此,实际上却全然不是这么一回事。
由于许多网络服务或是客户端软件的程序设计者也存有类似的想法,在其撰写程序时时往往就会假设或预期通讯的另一端“应该”会依照协议的规范来进行通讯,因此就忽略了对通讯的另一端所传送过来的对话数据是否依照协议的规范进行检查,或是对预期以外的对话进行异常处理。
此时,当这些程序在接收到通讯的另一端传送的一些不依协议或程序设计预期的方式进行的状况时,可能就会出现不可预期的结果:
轻则程序停止运作,重则导致数据毁损或是执行不应该执行的程序、把数据当程序执行等。
这些不可预期的结果往往就是攻击者利用的目标。
事实上,许多安全弱点就是因为部分使用者在某些特殊不正常的状况看到程序不正常的反应之后发现的,恶意的攻击者或是专门寻找程序的安全弱点的人员更会刻意的以各种可能的非正常途径:
例如特殊字符、过长的参数、不正常的路径、异常的封包等方式来测试程序是否可以被利用来进行成功的攻击。
BufferOverflow(缓冲区溢出)的攻击在近期的安全弱点的发现更是被发挥的淋漓尽致,部分的安全研究人员或是攻击者尽其可能的尝试着在每一个可以输入参数的地方以程序设计者预期以外的长度喂给对方,再看看这些程序是否会因为预留的变量数据长度不足而产生缓冲区溢出的问题。
观察这几年以来的新被发现的安全漏洞可以清楚的看到,多数的安全漏洞都是因为无法处理预期以外或是过长的资料而产生的。
从这一观点来看,协议异常检测对检测这些利用异常的方式进行的攻击,确实可以取得相当好的检测功效。
对某些具有清楚的状态(State)的协议而言,透过协议异常检测不仅可以检测到可疑的异常事件,或许连攻击者是否已经成功攻击都可能可以透过协议异常检测的方式得到更清楚的判断。
协议异常检测可能引发的另一个问题是:
凡是针对协议的入侵检测技术的实现相对而言会比较困难,一方面是因为需要对现有的至少是常用的协议分别进行入侵行为方面的研究和实现,即使是最常用的几个协议,也需要花费大量的时间。
但是对于基于协议异常检测而言,由于与大量多变的入侵行为相比,每一个协议的正常行为是相对稳定而不变的,因此研究起来相对比较省时,可以达到事半功倍的效果。
另一方面,应用于不同网络层面的协议格式彼此不同,同一层面的协议也是千差万别,因此我们描述不同协议正常模式的时候会出现方式和方法的很多不同。
在真正实现系统的时候会出现规模的无限扩大以及复杂度的加大。
从这一观点来看,协议异常检测在实现时存在着有利因素和不利因素,只有有效的利用有利因素,并尽可能的解决不利因素,才可以真正做到功能和性能的最优组合。
4.网络入侵检测器的设计与实现
在前面分析思考的基础上,首先进行入侵检测器的结构设计,既然是基于协议异常的网络入侵检测,协议将是我们主要研究的对象,同时,为了最大限度的降低系统的复杂度,我们尝试在找到网络协议的通用模型的基础上,采用一种对任何协议都适合的通用检测结构。
4.1网络协议正常行为的建模
协议本质上是一套行为规则,是一系列规则和约定的规范性描述。
网络协议不仅要明确规定所交换的数据格式,而且还要对事件发生的次序做出说明。
所以,任何一种网络协议都应包括如下三要素:
1.语法(Syntax):
规定通信双方“如何讲”,是将若干协议元素和数据组合起来表达一个更完整的内容时所应遵循的格式,即数据与控制信息的结构、编码及信号电平等。
2.语义(Semantics):
规定通信双方“讲什么”,即协议元素的含义,如控制信息、执行的动作和返回的应答等。
3.时序(Timing,又称时序或定时):
规定通信双方“讲的顺序”或“应答关系”,即对事件实现顺序的说明,解决何时进行通信的问题。
通俗的说,我们可以将这三个要素理解为:
1.语法:
基本上我们检查协议遵守的格式要求就可以称为语法的检查。
另外可能将来要考虑到传输的编码等等规定。
2.语义:
可以理解为元素内容必须附和语义的,以及对应某个报文所产生的应答必须附和规定,还有相应的一些动作必须附和协议规定。
3.时序:
可以理解为报文之间的相互对应关系,含转换关系。
因此,对任何一个网络协议的正常行为模式建模必须建立基于这三个要素的总结和归纳,自然也可以通过这三个要素进行描述。
4.2网络入侵检测器的设计
基于协议异常入侵检测的思想,以及描述协议正常行为的思路,系统PAIDS(ProtocolAnomalyIntrusionDetectSystem)纵向采用按照网络协议分层的整体结构。
横向将主要的检测模块为三个部分,即:
语法检查子模块、语义检查子模块、时序检查子模块;
将对应的正常行为描述规则文件分为语法规则文件、语义规则文件、时序规则文件,分别对应存储于语法规则库、语义规则库和时序规则库。
系统框架设计图
整体来说,这个基于协议异常网络入侵检测系统PAIDS主要包含以下几个重要的组成部分:
1.网络数据流捕获模块
2.协议分析检测模块
3.协议正常行为描述规则库模块
其软件设计模块图如下图:
系统设计模块图
其中,数据发送模块以及监控界面都是用于验证协议异常检测技术和通用结构结合后的性能和功能的。
4.3网络入侵检测器的实现
完成了整个系统的框架设计之后,进行单个模块的设计,同时,对设计好的模块进行实现。
从上图可以看出,系统PAIDS由三个主要的模块组成,即网络数据流捕获模块、协议分析检测模块和协议正常行为描述规则库模块。
为了使得系统更加灵活独立,我们采用C、C++作为主要实现语言,在Linux平台下实现。
a.网络数据流捕获模块
在Linux平台下,采用Libpcap实现数据包的截获。
Libpcap实质上是一个系统独立的API函数接口,用于用户层次的数据包截获工作。
它为底层网络监控编程提供了一个易于移植的应用框架。
b.协议解析及检测模块
网络数据流捕获模块捕获到的数据包是数据链路层上的以太网数据包,协议解析模块则需要对这些数据包进行网络上各个协议层的解码。
首先对网络层协议进行分析,判断其为IP协议、ARP协议还是RARP协议,并对该协议进行解码检测。
接下来,我对IP数据报进行解码分析,判断是TCP数据报、UDP数据报、ICMP数据报还是IGMP数据报,从而调用相应的协议解码检测函数进行分析处理。
最后对TCP层数据进行TCP流重组。
然后进一步地判断高层协议类型,从而进入不同协应用层协议的具体解析检测。
在对每个协议进行解析后,不同的解析信息采用不同的规则匹配引擎进行匹配,即,对每个协议,其语法信息采用语法检测器与其对应的语法规则库进行匹配,语义信息采用语义检测器与其对应的语义规则库进行匹配,时序信息采用时序检测器对其对应的时序规则库进行匹配,不相符则判断为攻击。
基本协议解析部分对抓到的数据包进行底层协议的解析,解析到传输层。
工作过程如下图所示:
图5-4基本协议解析
c.协议正常行为描述规则库模块
语法规则库和语义规则库分别采用文本方式的简单规则进行匹配,而时序规则采用文本规则配合有限自动状态机来进行匹配判断,只有完全符合协议时序关系的数据流才会被判断为正确。
d.系统实际实现
采用协议异常的检测方法和上述设计思想,目前系统PAIDS已经完成了数据链路层,网络层,传输层和应用层的整体结构的初步实现。
目前实现的协议解析框架如下图所示:
虽然只是包括了三个协议,但是这三个协议分别是位于网络层、应用层和传输层的非常典型和常用的协议。
通过这三个协议的实现至少可以说明我们采用的这种通用结构在实现是可行的,可就是说可以集成不同类型的各种协议。
4.4网络入侵检测器的测试
为了验证这种基于协议异常的通用结构入侵检测器的功能,从而证明该项技术以及该结构的实用价值,我们对它进行了测试。
4.4.1测试环境
实验室环境下的测试环境是如下图所示的一个完整的局域网络环境。
攻击主机位于局域网的6网段,安装Linux操作系统,有两个被保护的网段,分别由PIX和CheckPoint防火墙的保护。
在PIX防火墙保护区域(5网段)有多台主机和服务器,测试的PAIDS网络入侵检测系统就位于其中。
实验室环境下测试的网络部署
4.4.2测试实例
由于位于局域网的实验室环境,在测试工作中,发现网络中的实际攻击数量不足,攻击种类单一。
因此,为了能够更加严格和全面的检测系统性能,我们收集了针对不同协议的多种攻击。
例如:
TCPSYN拒绝服务攻击、端口扫描、SYN比特和FIN比特同时设置、没有设置任何标志的TCP报文攻击、设置了FIN标志却没有设置ACK标志的TCP报文攻击、CiscoCatalyst非标准TCP标记远程拒绝服务漏洞(BugTraqID:
8149)、IBMAIX远程大量空TCP标记的包可导致拒绝服务(BugTraqID:
5925)、TCP协议实现大滑动窗口RST拒绝服务漏洞、telnet会话劫持、IP碎片攻击、Land攻击、Teardrop攻击、FTP反弹攻击、FTP匿名攻击等等常见的攻击,特别是无法或是很难利用误用检测发现的攻击进行了测试。
4.4.3测试方案和结果
系统部署于实验室测试环境,主要采用收集的攻击实例,我们编写了相应的攻击脚本,将其置于位于6网段采用Linux操作系统的攻击主机(192.168.6.2)上。
在保证各个系统安装正常、运行正常和网络通畅的前提下,采用攻击脚本对系统逐个进行攻击,以验证系统是否能够检测到攻击,并对攻击测试的结果进行记录。
经过使用大量攻击脚本作为测试用例的进行测试,我们分析记录结果如下:
常见协议漏报率
协议名称
IP
TCP
FTP
漏报率(%)
2
10
13
4.4.4测试结论和改进
1.针对上述测试结果,得出如下结论。
功能方面:
1)底层协议攻击检测性能较好,漏报现象很少,无误报现象;
2)应用层协议攻击检测性能也不错,以实现协议的大部分攻击都可以检测到,漏报很少,只是检测协议种类较少。
性能方面:
1)处理速度快,可以快速检测到攻击,做出报警,实现实时入侵检测。
2)具有较好的容错性,在实验过程中,系统基本保证长时间正常运行。
2.改进工作
参考实验室环境下的测试结果,可以对系统作出如下的改进:
1)针对底层协议检测模块的漏报情况,找出漏报攻击,进行分析学习,研究其是否适用协议异常检测方法进行检测,如果可以,则在原系统中进行添加,如果不行,则放弃,属于系统固有问题。
2)针对系统中实现协议较少的情况,需要根据系统的检测机制,了解更多协议工作机制,学习分析更多协议对应攻击特点,添加相应的入侵检测模块以及行为库规则。
5.总结
通过基于实验室测试环境采用上述测试方案的测试,可以发现该系统构造思想明确,以完成部分性能和功能都不错,只是需要进一步的对协议部分进行补充完善,更加贴近实际需要。
虽然需要花费一些时间和人力,但是还是很有实际意义的。
特别是可以看出协议异常技术具有以下特点:
1)无需训练、易建模
2)误报率低
3)特征库更新速度慢
4)易发现未知攻击
5)攻击易被解释
6)系统负载小
尽管如此,它也不是全然没有缺点的。
完全的协议异常检测必须面对两个问题。
也就是如何检测符合协议要求的攻击和较缺乏特定攻击的精确描述。
根据我个人的观点,如果可以将协议异常检测与协议误用检测结合起来进行检测,一定可以达到理想的防护检测效果。
参考文献
[1]AurobindoSundaram.AnIntroductiontoIntrusionDetection[EB/OL].http:
//www.acm.org/crossroads/xrds2-4/intrus.html.2000.1.
[2]蔡均璋.料敌机先!
?
以协议异常侦测技术侦测未知之攻击[EB/OL].INFOSEC.2003.3.
[3]KumarDas.ProtocolAnomalyDetectionforNetwork-basedIntrusionDetection.GSECPracticalAssignment[C]..2001.8.13.
[4]ErwanLemonnier.ProtocolAnomalyDetectioninNetwork-basedIDSs[EB/OL].2001.6.8.
[5]福吉.fujiS.(Fogie,Seth).WindowsInternet黑客防范与安全策略[M]windowsinternetheikefangfanyuanquancelue=WindowsInternetsecurity/(美)SethFogie,CyrusPeikari.康博译eng出版发行北京:
清华大学出版社[美国]:
PearsonEducation出版集团,2002.
[6]W.RichardSteven.tcp/ipIllustratedVolume1:
TheProtocols即TCP/IP详解卷1:
协议[M].范建华,胥光辉,张涛等译.谢希仁校.机械工业出版社,2000.4.
作者简介
李培(1980-),女(汉),陕西西安人,讲师,硕士学历,毕业于西安交通大学,研究方向为入侵检测。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 协议 异常 通用 结构 网络 入侵 检测器 研究