基于WINPCAP的入侵检测系统的设计与实现.docx

上传人:wj 文档编号:527624 上传时间:2023-04-29 格式:DOCX 页数:47 大小:278.65KB
下载 相关 举报
基于WINPCAP的入侵检测系统的设计与实现.docx_第1页
第1页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第2页
第2页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第3页
第3页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第4页
第4页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第5页
第5页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第6页
第6页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第7页
第7页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第8页
第8页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第9页
第9页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第10页
第10页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第11页
第11页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第12页
第12页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第13页
第13页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第14页
第14页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第15页
第15页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第16页
第16页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第17页
第17页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第18页
第18页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第19页
第19页 / 共47页
基于WINPCAP的入侵检测系统的设计与实现.docx_第20页
第20页 / 共47页
亲,该文档总共47页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于WINPCAP的入侵检测系统的设计与实现.docx

《基于WINPCAP的入侵检测系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《基于WINPCAP的入侵检测系统的设计与实现.docx(47页珍藏版)》请在冰点文库上搜索。

基于WINPCAP的入侵检测系统的设计与实现.docx

基于WINPCAP的入侵检测系统的设计与实现-副本

HUNANUNIVERSITY

毕业设计(论文)

设计论文题目:

基于WINPCAP的入侵检测系

统的设计与实现

学生姓名:

王颖

学生学号:

20110801115

专业班级:

计算机科学与技术一班

学院名称:

信息科学与工程学院

指导老师:

袁小坊

学院院长:

李仁发

2015年5月30日

第1页第1页第1页第1页第1页第1页第1页第1页第1页

基于WINPCAP的入侵检测系统的设计与实现

摘要

入侵检测作为中继防火墙技术之后的一项关键的安全技术,与传统的预防性安全机制相比,具有智能监控、实时探测、动态响应、易于配置等特点。

它通过从计

第2页第2页第2页第2页第2页第2页第2页第2页第2页

基于WINPCAP的入侵检测系统的设计与实现-副本

算机网络或系统中的若干关键点收集相关数据和信息,并分析这些数据和信息,以便发现网络或系统中是否有违反安全策略的行为和遭到入侵的迹象。

随着Web应用程序和服务在信息系统和商业领域中的普及,针对Web应用程序漏洞发起的攻击在各类攻击中所占的比例正在逐步上升,SQL注入攻击已经成为威胁Web安全的首要隐患。

因此开发检测SQL注入的入侵检测系统迫在眉睫。

本文首先探讨了当前网络安全以及入侵检测技术的发展历史、发展现状和发展趋势,介绍了WinPcap、入侵检测和SQL注入的技术和原理,然后提出了基于

WinPcap的入侵检测系统的设计,并付诸实现。

本系统运用WinPcap技术捕获网络中的数据包并进行解析,基于关键字匹配技术,采用C/C++语言,对解析后的数据包进行检测。

系统包括在线模式和手动模式,在线模式可以对动态获取的网络数据包进行检测,手动模式可以由用户自主输入URL链接地址和设置关键字,来判断输入是否包含SQL注入信息。

关键词:

WinPcap,入侵检测,SQL注入,关键字

WinPcap-basedintrusiondetectionsystem

Abstract

Comparedwiththetraditionalpreventivesecuritymechanism,intrusiondetection,whichisakeysecuritytechnologyaftertherelayfirewall,hasmanyofthecharacteristicssuchasintelligentmonitoring,real-timedetecting,dynamicresponding,easeofconfigurationandothers.Bycollectingdataandinformationfromanumberofkeypointsofthenetworkorcomputersystem,itcananalyzethesedatatofindoutwhethertherearebehaviorsbreachingsecuritypolicyorsignsofbeinginvaded.WiththepopularityofWebapplicationsandservices'usingintheinformationsystemsandbusinessareas,theproportionofattackslaunchedforWebapplicationvulnerabilitiesaregraduallyrisingintheallkindsofattacks.SQLinjectionattackshavebecometheprimarythreattoWebsecurity.Therefore,thedevelopmentofdetectionsystemtodetecttheSQLinjectionintrusionisimminent.

Inthispaper,firstly,itdiscussesthecurrentdevelopmenthistory,situationandtrendofnetworksecurityandintrusiondetectiontechnologyandintroducesthetechniquesandprinciplesofWinPcap,intrusiondetectionandSQLinjection.Then,itraisesadesignofWinPcap-basedintrusiondetectionsystemandputsitintopractice.ThesystemusesWinPcaptechnologytocapturenetworkpacketsforanalysis.Andbasedonkeywordmatchingtechnology,usingC/C++language,theparseddatapacketscanbedetected.Thesystemincludingonlinemodeandmanualmode.theonlinemodeallowsdynamicaccesstonetworkdatapacketisdetected,themanualmodecanindependentlyentertheURLlinkaddressandsetakeywordbytheusertodeterminewhethertheinputinformationcontainsSQLinjection.

Keywords:

WinPcap,intrusiondetection,SQLinjection,keyword

第3页第3页第3页第3页第3页第3页第3页第3页第3页

目录

第5页第4页第4页第4页第4页第4页第4页第4页第4页

1绪论 1

1.1研究背景 1

1.1.1网络安全 1

1.1.2入侵检测技术 2

1.2本课题研究意义 2

1.3目前入侵检测系统发展 2

1.3.1入侵检测系统的发展历史 2

1.3.2入侵检测系统发展现状 3

1.3.3入侵检测系统的发展趋势 3

2基于WINPCAP的入侵检测系统的技术介绍 5

2.1WINPCAP介绍 5

2.2入侵检测的基础知识 6

2.3SQL注入技术 8

3基于WINPCAP的入侵检测系统的设计 10

3.1系统设计目标 10

3.2系统设计原则 10

3.3基于WINPCAP的入侵检测系统的总体设计 11

3.3.1网络数据包捕获模块的设计 12

3.3.2SQL注入检测模块的设计 14

4基于WINPCAP的入侵检测系统的实现 16

4.1系统的开发环境介绍 16

4.2基于WINPCAP的入侵检测系统的总体实现 16

4.2.1网络数据包捕获模块的实现 16

4.2.2在线SQL注入检测模块的实现 21

4.2.3手动SQL注入检测模块的实现 28

4.3实验结果及分析 30

5总结 35

5.1论文小结 35

5.2研究内容展望 36

致谢 37

参考文献 39

1绪论

1.1研究背景

互联网发展到今天已经成为了我们生活、工作、学习和娱乐的密切相关的一部分。

然而,随着信息化程度的逐步提高,一系列的网络安全问题,不论是计算机病毒,还是网络攻击,都成了制约网络发展的关键因素。

网络安全问题是信息时代人类共同面临的重大挑战。

任何地方都需要一个良好的网络环境,这是社会走向全面和谐发展的必经之路。

媒体不断暴露的基于网络攻击的外交事件,使得解决网络安全问题刻不容缓。

目前网络安全问题主要体现在:

计算机病毒的肆虐传播;电脑黑客的猖獗行为;信息基础设施建设面临的严峻挑战;预警联动机制的亟待解决的缺陷。

其中,危害最严重的要数电脑黑客的恶意攻击。

而随着时代的发展,黑客技术、黑客软件和黑客网站受到普通大众的追捧,使得计算机系统乃至整个互联网更加容易遭到蓄意攻击。

1.1.1网络安全

计算机网络安全问题是随着网络的发展而产生的,最近几年得到普遍关注,然而网络安全问题并没有因此而减少,相反网络安全事件呈迅速增长的趋势,造成的损失也越来越大。

网络安全的实质就是要保障系统中的各个要素避免各种偶然或人为的破坏或攻击,使它们正常发挥,保证系统能安全可靠地工作。

如果安全得不到保障,攻击者变可通过窃取相关数据密码获得相应权限,进行非法操作。

即使是安全防范严密的军事网络系统也曾多次遭受攻击。

计算机犯罪已经成为普遍的国际性问题,是各国共同面临的一个严峻考验。

网络安全已成为制约信息化发展的一个关键问题,亟待解决。

目前我国的信息与网络安全的防护能力还处于发展阶段,了解网络面临的各种威胁,防范和消除这些威胁,实现真正的网络安全已经成了全世界网络发展中非常重要的事情。

第1页第1页第1页第1页第1页第1页第1页第1页第1页

1.1.2入侵检测技术

入侵检测技术可以称为动态保护技术。

入侵检测技术能够对防火墙进行补充,是一种主动保护主机免受攻击的网络安全技术。

入侵检测的第一步是收集系统、网络、数据以及用户活动的相关信息,信息收集的范围越广,入侵检测的检测范围越大,一定程度上能提高检测的准确性。

其次,对收集的信息进行分析,找到表征入侵行为的信息。

当一个共计企图或事件被检测到以后,入侵检测系统能够根据检测到的数据的特点做出响应的告警和响应,以便系统管理员或防火墙等采取进一步的安全措施。

所以入侵检测技术可以主动发现和防范较多的入侵行为,特别是针对网络上的扫描/攻击和主机上的木马攻击等非正常的防范。

1.2本课题研究意义

在网络安全体系中,入侵检测系统是唯一一个通过数据和行为模式判断其是否有效的系统,无论是防火墙、访问控制系统,还是漏洞扫描系统,都无法对系统进行实时扫描。

然而一个成功的入侵检测系统不但可以使系统管理员时刻了解网络系统的任何变更,还能给网络安全策略的制定提供一定的指导和参考。

尤其重要的是,入侵检测系统应该具有非常简单的管理和配置功能,即使是非专业人员也能够轻易获得网络安全。

相对于防火墙来说,入侵检测系统应该是按照一定的安全策略建立起来的安全辅助系统,它虽然一般不采用预防的措施来防止入侵事件的发生,但是它能够有效弥补传统安全保护措施的不足。

入侵检测系统主动收集包括系统审计数据、网络数据包及用户活动等多方面的信息,然后进行安全性分析,在入侵行为对系统产生危害前检测到入侵攻击,从而及时发现各种入侵并产生响应,帮助系统应对网络攻击,扩展了系统管理员的安全管理能力,提高了信息安全基础结构的完整性。

1.3目前入侵检测系统发展

1.3.1入侵检测系统的发展历史

第2页第2页第2页第2页第2页第2页第2页第2页第2页

入侵检测系统花费三十年从产生概念到原型设计到商业化生产。

1980年,学者安德尔森第一次提出“入侵检测”的概念是在报告《计算机安全威胁监控与监视》的报告中[3]。

1984年到1986年,研究人员首次提出了一种实时入侵检测系统的抽象模型,称为入侵检测专家系统,它独立于特定的系统平台、应用环境及入侵类型,为构建入侵检测系统提供了一个通用的框架。

1988年,研究人员改进了前面的模型,开发出了一个入侵检测系统,提出了与平台无关的实时监测思想。

到了上世纪90年代,入侵检测系统高速发展,在智能化和分布式方向上有了较大的突破。

随着攻击工具和攻击手法日趋复杂多样,特别是以黑客为代表的攻击者对网络的威胁日益突出,企业和组织对网络安全日益重视,构成网络信息安全技术体系的入侵检测系统以其强大的检测攻击的能力成为防火墙、防病毒产品后又一个重要安全组件,入侵检测系统产品也逐渐从一个简单机械的产品发展成为智能化的产品。

1.3.2入侵检测系统发展现状

随着互联网产业的迅猛发展,计算机网络安全已成为研究热点。

然而由于用户的认知程度较低,加上入侵检测是一门比较新的技术,存在一些技术难题,不是所有厂商都能研发出可靠的入侵检测产品,导致入侵检测系统的应用发展缓慢。

目前的入侵检测系统存在诸多矛盾,如误报和漏报,隐私和安全,被动分析和主动发现,功能性和可管理性,海量信息和分析代价以及单一产品和复合产品等等的矛盾。

这些问题说明入侵检测技术的发展任重而道远。

通过多年不断的摸索和实践,入侵检测系统逐渐形成结构化和标准化。

当前对入侵检测系统的研究主要集中在建立不同环境下的系统体系结构和应用新的入侵检测技术到入侵监测系统中。

1.3.3入侵检测系统的发展趋势

随着入侵检测技术的发展,成型的入侵检测系统已经陆续应用到实践中,成为对传统安全产品的合理补充,帮助系统应对网络攻击,扩展了系统管理员的安全管理能力,提高了信息安全基础结构的完整性。

其主要的发展方向可概括为一下几个方面。

(1)改进分析技术

第3页第3页第3页第3页第3页第3页第3页第3页第3页

只有改进分析技术,才能够解决入侵检测误报的问题。

但是当前行为分析技术还不成熟,使得大多数入侵检测系统仍然采用模式匹配技术。

(2)集成功能性可管理性

在分析入侵数据监控网络安全的同时也能够为网络管理、网络扫描、网络嗅探及网络故障等提供帮助。

(3)提升安全性和可操作性

在维护网络安全的同时,能够保证自身的安全,才能确保入侵检测正常进行;随着它的安全性的提高,它可以应用到更多的地方。

电子商务等网络应用的发展使得网络安全受到越来多的重视,网络安全需求也越来越大,而入侵检测系统能够从区别其他安全产品的多角度提供服务,必将得到更多的关注,更快的发展。

第4页第4页第4页第4页第4页第4页第4页第4页第4页

2基于WINPCAP的入侵检测系统的技术介绍

2.1WINPCAP介绍

WinPcap[5](WindowsPacketCapture)是Windows平台下一个免费、公共的网络访问系统,是为Linux下的libpcap移植到Windows平台下能够实现数据包捕获的函数库,在设计WinPcap时参照了libpcap,使用方法也和libpcap相似。

WinPcap为win32应用程序提供访问网络底层的能力。

基于WinPcap的程序编程非常方便,效率也很高,是因为WinPcap提供了一套标准的网络数据包捕获接口,能够提高程序员的编程效率;WinPcap充分考虑了各种性能和效率的优化,WinPcap和

Windows内核的高度契合,使得其在内核层次实现了数据包的捕获和过滤,从而使得基于WinPcap的程序编程方便且高效[1]。

winpcap提供了如下功能:

(1)捕获原始数据包。

但凡是与本机相关的——无论是以本机为起始方,还是作为中转方——数据包都能被捕获到。

(2)用户定义了过滤规则后,数据才被发送出去。

(3)向网络发送原始数据包。

(4)统计网络数据流量。

在以下这几个经典领域中,Winpcap的应用非常广泛:

(1)网络及协议分析

(2)网络入侵检测系统(NIDS)

(3)网络扫描

(4)trafficgenerators

(5)用户级别的桥路和路由

(6)网络监控

(7)通信日志记录

(8)安全工具

第5页第5页第5页第5页第5页第5页第5页第5页第5页

Windows平台下使用了WinPcap作为编程接口的数据包捕获功能的软件,比较熟悉的有:

Windump,Sniffit,ARPSnifferGUI,Wireshark(原来称为Ethereal)。

WinPcap由一个核心的包过滤驱动程序NPF,一个底层的动态链接库Packet.dll和一个高层的独立于系统的动态链接库Wpcap.dll组成:

NPF——它的功能是捕获和过滤数据包,同时还可以发送、存储数据包以及对网络进行统计分析;Packet.dll——为

win32平台提供了一个较底层的编程接口,使用它就可以调用WinPcap函数,它直接映射了内核的调用,还包含了其他一些函数来进行一些底层的操作,它也可以取得一些系统信息;Wpcap.dll——它比Packet.dll层次更高,它的调用不依赖于操作系统,提供了更加高层、抽象的函数,它是基于。

libpcap设计的,函数调用、函数名称和参数的定义几乎一样。

WinPcap的结构图如图2.1。

应用程序

Wpcap.dll

Packet.dll

用户层

NPF

装置驱动程序

核心层

数据包 网络

图2.1WinPcap结构

2.2入侵检测的基础知识

第6页第6页第6页第6页第6页第6页第6页第6页第6页

通用入侵检测架构由事件产生器,事件分析器,事件数据库和响应单元组成:

事件产生器把从计算机系统中获得来的事件向系统的其它部分传送出去;事件分析器接收事件产生器发来的事件,分析后传回;响应单元则是对分析结果作出反应的功能单元;事件数据库用于存放中间和最终数据的地方。

通用入侵检测架构结构模型如图2.2:

事件分析器

事件产生器

事件数据库

响应单元

图2.2通用入侵检测架构结构模型

入侵检测系统可分为主机型和网络型。

主机型入侵检测系统通过对系统日志的检测判断是否存在入侵。

对主机的控制权较高,因此检测的准确性更高而误报率更低,对攻击的响应也更有效,但是它只能对一个主机进行保护,影响主机效率,可移植性差。

而基于网络的入侵检测系统可以保护整个网络,具有简便性和可移植性等特点,它对现有网络系统不增加负担,适用于各种网络环境,但是由于对数据语义的掌握程度限制,容易受到攻击和欺骗。

当前的处理速度难以适应现今高度网络时代。

在实际的生活和工作中,计算机大多数都安装了杀毒软件和防火墙,足以应对大部分的需求,然而它们都不能安全胜任对计算机网络安全的工作,这就需要入侵检测系统的加入。

入侵检测系统能够保证及时检测出入侵行为并加以记录和处理。

入侵检测的研究方法分为特征检测、异常检测和专家系统。

特征检测是在当存在网络操作时,将网络操作行为与攻击或入侵行为进行对比的一种检测方法;异常检测是以网络行为为基准概念为中心的,亦即先用大量数据统计出可接受的网络行为范围,任何不符合规定的行为模式都会被异常检测引擎检测出来,规则确定和恶意行为是制约异常检测的关键因素之一;专家系统是一个具有智能特点的计算机程序,它能够在特定的领域内模仿人类专家思维来求解复杂的问题,它包含领域专家的大量的知识,

第7页第7页第7页第7页第7页第7页第7页第7页第7页

拥有类似人类专家思维的推理能力,并能用这些知识来解决实际问题,知识库是否完备是专家系统是否有效的关键所在[2]。

2.3SQL注入技术

随着Web应用程序和服务在信息系统和商业领域中的普及,针对Web应用程序漏洞发起的攻击在各类攻击中所占的比例正在逐步上升,SQL注入攻击已经成为威胁

Web安全的首要隐患。

SQL注入是在网络的Web应用上发生的,它是基于系统安全漏洞而产生的,利用现有应用程序,将(恶意)的SQL命令注入到后台数据库引擎执行的能力,它可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句。

SQL注入检测可以分为在攻击前检查是否有SQL注入漏洞和运行中检查是否遭到了SQL注入两种情况。

对于第一种情况,可采用类似本文的SQL注入检测软件工具来进行检测或进行手工的检测;对于第二种情况,由于SQL注入有一定的隐蔽性,一般要查看系统的日志文件来判断。

本文着重处理第一种情况。

SQL注入关键字匹配是该系统采用的核心检测技术。

从SQL语句语法结构出发,对SQL注入语句进行分析,并通过关键字对每种语法结构进行识别,提取出每种句式对应的关键字,整理成关键字列表如表2.1所示[4]。

表2.1检测关键字

序号

关键字

序号

关键字

序号

关键字

序号

关键字

1

5

and%20

9

;

13

union

2

%20

6

or%20

10

+

14

order

3

--

7

select

11

*

15

having

4

#

8

*/

12

/

16

group

在分析SQL注入的过程中,发现“1=1”“1=2”这样的恒等式或恒不等式出现的概率和造成的危害不容小觑,因此将其归纳为17号关键字“数字=数字”。

第8页第8页第8页第8页第8页第8页第8页第8页第8页

以上关键字出现并不完全代表着存在SQL注入,有的正常的URL本身包含

4,8,10,11,12号关键字,而7,13,14,15,16号出现时也不一定代表着SQL语句,因此在判断时,根据以下规则来判断:

(1)1,3,9号关键字出现时可判定存在SQL注入行为。

1号关键字表示SQL的字符串终结符,会产生一条包含网站服务器所使用数据库信息的错误;3号关键字表示

SQL的注释符,可以注释掉后面的SQL语句,使得攻击者绕过身份验证获取数据库操作权限;9号关键字表示一个SQL语句的结束和另一个SQL语句的开始,会产生包含数据库信息的错误。

这三个关键字不会出现在正常URL链接里,因此可以判定出现这三个关键字的URL来源方一定存在SQL注入行为。

(2)其他关键字伴随1,3,9号关键字出现,且出现在“?

”之后,则可判定存在其他关键字导致的SQL注入URL链接中“?

”后面开始是数据,涉及到数据库操作,因此要格外防范;其他关键字伴随1,3,9号关键字出现时,会被系统记录在案,作为后面入侵数据包危险级别分级依据;同时这些记录也是系统管理员安全分析的重要参考数据。

第9页第9页第9页第9页第9页第9页第9页第

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2