毕业设计(论文)网络嗅探器的设计与实现.doc
《毕业设计(论文)网络嗅探器的设计与实现.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)网络嗅探器的设计与实现.doc(21页珍藏版)》请在三一办公上搜索。
1、网络嗅探器的设计与实现摘 要随着网络技术的发展和网络应用的普及,越来越多的信息资源放在了互联网上,网络的安全性和可靠性显得越发重要。因此,对于能够分析、诊断网络,测试网络性能与安全性的工具软件的需求也越来越迫切。网络嗅探器具有两面性,攻击者可以用它来监听网络中数据,达到非法获得信息的目的,网络管理者可以通过使用嗅探器捕获网络中传输的数据包并对其进行分析,分析结果可供网络安全分析之用。本文对网络嗅探技术进行了简要分析,研究了网络数据包的捕获机制,如winpcap、原始套接字。文中首先分析了嗅探的原理和危害,并介绍了几种常见的嗅探器,然后研究了入侵检测系统中使用的包捕获技术。本文利用原始套接字在w
2、indows平台下实现了一个网络嗅探器程序,完成了对数据包进行解包、分析数据包的功能。关键词:网络嗅探器;数据包捕获;数据包分析;原始套接字Design and Realization of Network SnifferAbstractAlong with the development of network technologies and the popularization of network applications, more and more information resources are put on internet. The network security and
3、reliability become important increasingly. Therefore, the demand of the software tools which could analyze, diagnosis and test network performance or security are more and more pressing. Network sniffer has two sides. An attacker can use it to monitor network data, to achieve the purpose for obtaini
4、ng information illegally, while network managers can use it to capture and analyze the data which transmitted on network. The result of analysis can be used to analyze the network security.This thesis briefly analyzed the technology of network sniffer, and researched the capture mechanism of network
5、 data packets such as winpcap and raw socket. This paper first analyzed the theory and the harm of sniffer, introduced several common sniffers, and then researched the capture technology which used in the intrusion detection system. The thesis uses raw sockets on windows platform to realize one snif
6、fer which can complete unpack and analyze data packet.Key words: network sniffer; capture data packet; analyze data capture; raw sockets目 录论文总页数:25页1 引言11.1 网络安全的现状11.1.1 计算机网络安全的问题11.1.2 网络安全机制及技术措施11.2本课题的研究意义21.3本文研究的内容32 网络嗅探器的基本原理32.1网络嗅探器概述32.2 嗅探器实现基础32.3 常见的sniffer42.4 数据包捕获机制的研究42.4.1 WinPc
7、ap包捕获机制52.4.2 套接字包捕获机制62.5 嗅探器的两面性82.5.1 sinffer的危害82.5.2 通过网络嗅探进行网络管理93 入侵检测系统与嗅探器93.1 入侵检测概念93.2 入侵检测的实现与嗅探器103.2.1 入侵检测的实现与嗅探器的关系113.2.2 数据包嗅探技术在入侵检测系统中的应用114 嗅探器的实现与测试124.1利用套接字开发网络嗅探程序的步骤124.2 嗅探器的具体实现原理134.3 数据包捕获程序设计154.4 数据包的解析154.5 数据的显示194.6 嗅探器的测试22结 论23参考文献23致 谢24声 明251 引言1.1 网络安全的现状1.1.
8、1 计算机网络安全的问题随着各种新的网络技术的不断出现、应用和发展,计算机网络的应用越来越广泛,其作用也越来越重要。但是由于计算机系统中软硬件的脆弱性和计算机网络的脆弱性以及地理分布的位置、自然环境、自然破坏以及人为因素的影响,不仅增加了信息存储、处理的风险,也给信息传送带来了新的问题。计算机网络安全问题越来越严重,网络破坏所造成的损失越来越大。Internet的安全已经成为亟待解决的问题。从目前使用的情况来看,对计算机网络的入侵、威胁和攻击,基本上可以归纳为以下几种:1.外部人员攻击2.黑客入侵3.信息的泄漏、窃取和破坏4.搭线窃听5.线路干扰6.拒绝服务或注入非法信息7.修改或删除关键信息
9、8.身份截取或中断攻击9.工作疏忽,造成漏洞10.人为的破坏网络设备,造成网络瘫痪1.1.2 网络安全机制及技术措施目前国内外维护网络安全的机制主要有以下几类:1.访问控制机制 访问控制机制是指在信息系统中,为检测和防止未授权访问,以及为使授权访问正确进行所设计的硬件或软件功能、操作规程、管理规程和它们的各种组合。2.身份鉴别 身份鉴别技术是让验证者相信正在与之通信的另一方就是所声称的那个实体,其目的是防止伪装。3.加密机制 对纯数据的加密,加密机制是对你不愿意让他人看到的这些数据(数据的明文)用可靠的加密算法,只要破解者不知道被加密数据的密码,他就不可解读这些数据。4.病毒防护 计算机病毒的
10、防范既是一个技术问题,也是一个管理问题,它采取以“预防为主,治疗为辅”的防范策略将计算机病毒的危害降到最小限度。针对以上机制的网络安全技术措施主要有:(1)防火墙技术 防火墙是指一种将内部网和公众网络分开的方法,它实际上是一种隔离技术,是在两个网络通信是执行的一种访问控制手段,它能允许用户“同意”的人和数据进入网络,同时将用户“不同意”的人和数据拒之门外,最大限度地阻止网络中的黑客来访自己的网络,防止他们更改、复制和毁坏自己的重要信息。(2)基于主机的安全措施 通常利用主机操作系统提供的访问权限,对主机资源进行保护,这种安全措施往往只局限于主机本身的安全,而不能对整个网络提供安全保证。 (3)
11、加密技术 用于网络安全的加密技术通常有两种形式:(a)面向服务的加密技术。面向服务的加密技术即通常所说的信息加密。它是指利用好的密码算法对有些敏感数据、文件和程序进行加密,并以密文方式存取,以防泄密。其优点在于实现相对简单,不需要对网络数据所经过的网络的安全性提出特殊的要求。(b)面向网络的加密技术。面向网络的加密技术是指通信协议加密,它是在通信过程中对包中的数据进行加密,包括完整性检测、数字签名等,这些安全协议大多采用了诸如RSA公钥密码算法、DES分组密码、MD系列Hash函数及其它一些序列密码算法实现信息安全功能,用于防止黑客对信息进行伪造、冒充和篡改,从而保证网络的连通性和可用性不受损
12、害。加密技术是网络信息最基本、最核心的技术措施。但加密的有效性完全取决于所采用的密码算法,故一般由中央授权部门研制生产,不能自行采用一些密码算法用于网络中,否则后果不堪设想。 (4)其它安全措施 包括鉴别技术、数字签名技术、入侵检测技术、审计监控、防病毒技术、备份和恢复技术等。鉴别技术是指只有经过网络系统授权和登记的合法用户才能进入网络。审计监控是指随时监视用户在网络中的活动,记录用户对敏感的数据资源的访问,以便随时调查和分析是否遭到黑客的攻击。这些都是保障网络安全的重要手段。1.2本课题的研究意义计算机网络技术的飞速发展,极大的改变了人们传统的生活和工作模式,越来越多的社会经济活动开始依赖网
13、络来完成,可以说计算机网络的发展已经成为现代社会进步的一个重要标志。但与此同时,计算机犯罪、黑客攻击、病毒入侵等恶性事件也频频发生。因此,信息安全已越来越受到世界各国的重视。嗅探器作为一种网络通讯程序,是通过对网卡的编程来实现网络通讯的,对网卡的编程是使用通常的套接字(socket)方式来进行。但是,通常的套接字程序只能响应与自己硬件地址相匹配的或是以广播形式发出的数据帧,对于其他形式的数据帧比如已到达网络接口但却不是发给此地址的数据帧,网络接口在验证投递地址并非自身地址之后将不引起响应,也就是说应用程序无法收取到达的数据包。而网络嗅探器的目的恰恰在于从网卡接收所有经过它的数据包,这些数据包即
14、可以是发给它的也可以是发往别处的。显然,要达到此目的就不能再让网卡按通常的正常模式工作,而必须将其设置为混杂模式。本文通过对网络嗅探器对网络上传输的数据包的捕获与分析功能的进一步了解,做到知己知彼。通过网络嗅探器对网络上传输的数据包进行捕获和分析,获取所需要的信息,利用对这些信息进行网络安全分析。因此,对网络嗅探器的研究具有重要意义。1.3本文研究的内容本文的研究主要围绕以下几个方面进行。1.网络嗅探器的概念及技术的研究。主要包括网络嗅探器的概念、网络嗅探器的工作原理及常见网络嗅探器的实现原理等。2.入侵检测与嗅探器之间的联系,入侵检测的实现由四部分组成:数据包嗅探解析部分、数据行为检测部分、
15、算法部分和扫描检测部分。数据包嗅探技术是实现入侵检测的基础,将数据包从共享网络线路中捕获,并将其提取到应用程序中。3.网络嗅探程序的实现。主要工作包括:给出了一个网络嗅探程序的系统框架、数据包捕获程序的设计、数据包的解析、数据的显示等。4.网络嗅探程序的性能测试与评价,得出结论。2 网络嗅探器的基本原理2.1网络嗅探器概述网络嗅探器又称为网络监听器,简称为Sniffer子系统,放置于网络节点处,对网络中的数据帧进行捕获的一种被动监听手段,是一种常用的收集有用数据的方法,这些数据可以是用户的账号和密码,可以是一些商用机密数据等等。Sniffer是利用计算机的网络接口截获目的地为其他计算机的数据报
16、文的一种工具。Sniffer的正当用处主要是分析网络的流量,以便找出所关心的网络中潜在的问题。例如,假设网络的某一段运行得不是很好,报文的发送比较慢,而我们又不知道问题出在什么地方,此时就可以用嗅探器截获网络中的数据包,分析问题的所在。而嗅探器也可作为攻击工具被黑客所利用为其发动进一步的攻击提供有价值的信息。2.2 嗅探器实现基础以太网数据帧是一组数字脉冲,它们在传输介质上进行传输,从而实现信息的传递。以太网帧格式符合IEEE802.3标准,帧中包含目的地址和源地址,目的地址最高位为0是普通地址,为1时是组地址。当一个帧送到组地址时,组内的所有站点都会收到该帧。如果将它送到一个普通地址,一般情
17、况下,只有一个站点收到这个帧,但是,以太网是以广播方式发送帧的,也即这个帧会传播到其所在网段内的所有站点,只不过该站点不会接收目的地址不为本机地址的帧。为了捕获网段内的所有帧(以后称数据包),可以设置以太网卡的工作方式,以太网卡通常有正常模式(normal mode)和混杂模式(promiscuous mode)两种工作模式。在正常模式下,网卡每接收到一个到达的数据包,就会检查该数据包的目的地址,如果是本机地址和广播地址,则将接收数据包放入缓冲区,其他目的地址的数据包则直接丢掉。因此,正常模式下主机仅处理以本机为目的的数据包,网卡如果工作在混杂模式,则可以接收本网段内传输的所有数据包。如果要进
18、行数据包捕获,必须利用网卡的混杂模式,获得经过本网段的所有数据信息。2.3 常见的sniffer sniff网络分析仪有专用硬件和软件的产品,尖端的网络分析仪产品可以找出一般网络接口检测不到的错误:中等商业市场的网络分析仪产品往往是带有特定软件的便携计算机;而基于各个平台的很多普通的网络监听软件则在网上可以自由下载。比较知名的被广泛用于调试网络故障的免费sniff工具有:tcpdump(运行在FreeBSD、linux、SunOS等系统下);Nfswatch(运行在HP-UX、 Irix、SunOS); Etherfind, Snooper(运行在SunOS); Ipman, therload
19、,Gobbler(运行在DOS、Windows)。在Linux下监听的基本实现过程是通过Socket来实现的。Linux支持一种特殊的套接字,即Sock-Packet型套接字。在这种套接字下,应用程序可以读到网卡传递给系统的全部报文,一般情况下,网卡只将那些目的地址是自身的报文传递给系统内核。因此,需要将网卡的工作模式设定为混杂模式,这样系统内核就可以读到网卡监听到的所有报文,从而监听器应用程序也可以读到这些报文。2.4 数据包捕获机制的研究纵观国内外在网络嗅探技术中所使用的包捕获机制的方法,大致可归纳为两类:一类是由操作系统内核提供的捕获机制;另一类是由应用软件或系统开发包通过安装包捕获驱动
20、程序提供的捕获机制,该机制主要用于Win32平台下的开发。操作系统提供的捕获机制主要有四种:BPF(Berkeley packet Filter),DLPI (Data Link Provider Interface),NIT(Network Interface Tap), Sock Packet类型套接口。BPF由基于BSD的Unix系统内核所实现。DLPI是Solaris(和其它System V Unix)系统的内嵌子系统。从性能上看, Sock Packet最弱。Windows操作系统没有提供内置的包捕获机制。它只提供了数量很少并且功能有限的API调用。WinPcap(Windows P
21、acket Capture)是Win32上的第一个用来捕获数据包的开放系统软件包,它是一种新提出的强有力并且可扩展的框架结构。WinPcap包含了一系列以前系统所没有的创新特性。本文将对目前比较流行的WinPcap软件包提供的捕获机制进行简单介绍。2.4.1 WinPcap包捕获机制WinPcap的体系结构如图2-1所示:NetworkLeverAplicationKernlLeverPacketsUser codeCall WinpcapUser codeCall WinpcapUser codeMonitoringWpcap.dllWpcap.dllWpcap.dllWpcap.dllWp
22、cap.dllUser-buffer1User-buffer2User codeDirectaccess tothe NPFpacket.dllcallsPacket.dllStatisticalFilter1Filter2Filter3KernelBuffer2KernelBuffer2NIC Driver(NDIS 3.0 or higher)OtherProtoclStacksUserNetgroupPacker filterNPF图2-1 Winpcap的体系结构由WinPcap体系结构图可以看出它采用的是分层化的驱动程序模型,并包含有三个组件:1.内核级的数据包捕获驱动程序2.低级的
23、动态连接库(Packet.dll)3.高级系统无关库(Wpcap.dll)WinPcap(Windows Packet Capture)是由微软资助的一个项目,其核心仍是基于NDIS的,但它对NDIS进行封装,它是Windows平台下一个免费、公共的网络访问系统,它为win32应用程序提供访问网络底层的能力。它提供了以下的各项功能:1.捕获原始数据报,包括在共享网络上各主机发送/接收以及相互之间交换的数据报;2.在数据报发往应用程序之前,按照自定义的规则将某些特殊的数据报过滤掉;3.在网络上发送原始的数据报;4.收集网络通信过程中的统计信息。在Windows NT下WinPcap包捕获驱动和网
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 网络 嗅探器 设计 实现
链接地址:https://www.31ppt.com/p-3984627.html