基于Winpcap的网络嗅探器设计与实现 .doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《基于Winpcap的网络嗅探器设计与实现 .doc》由会员分享,可在线阅读,更多相关《基于Winpcap的网络嗅探器设计与实现 .doc(27页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、网络安全课程设计 设计题目:基于Winpcap的网络嗅探器设计与实现 院系名称: 班 级: 小组成员:秦向红 贾 博 指导教师:孙飞显、夏冰 2015 年1月摘 要当前,网络也逐渐成为人们生活和学习中不可缺少的部分,与此同时,网络信息安全性也越来越受到人们的关注。为了有效地实现网络传输中数据包的检测、捕获和分析,较为方便地监控网络信息流量并保证信息的安全可靠,产生了网络嗅探器。基于Winpcap开发平台,使用Visual C+作为开发工具,设计并开发网络嗅探器。设计实现IP、TCP、UDP数据包捕获和分析,以有效地对网络信息的安全进行监测、捕获和分析 。同时分析了网络嗅探器的基本工作原理,并阐
2、述了应用捕获数据包流,根据Winpcap关键功能给出了其具体实现。结果表明,该网络嗅探器结构简单,捕获数据快速,对网络安全管理具有重要意义。关键词:Winpcap、MFC、网络嗅探器、数据包AbstractAt present, the network has gradually become an indispensable part in people life and learning, at the same time, network information security has been paid more and more attention. In order to ach
3、ieve the capture and analysis of detection, data packet in the transmission network, more convenient monitoring network information flow and ensure the safety and reliability of the information, produced a network sniffer. Based on the Winpcap development platform, using Visual C+ as the development
4、 tool, the design and development of network sniffer. Design and implementation of IP, TCP, UDP data packet capture and analysis, monitoring, capture and analysis in order to effectively on the security of network information. At the same time, analyzes the principle of network sniffer, and expounds
5、 the application of capturing packet stream, according to Winpcap key function gives the concrete realization. The results show that, the network sniffer has the advantages of simple structure, fast capture data, has the vital significance to the network security management.Keywords: Winpcap, MFC, n
6、etwork sniffer, packet目 录第1章 绪 论11.1 设计背景11.2 国内外研究状况11.3 研究意义3第2章 需求分析42.1用户需求42.2 功能需求52.3 性能需求5第3章 Winpcap及相关协议介绍63.1 Winpcap的组成结构63.2 Winpcap简介83.3 以太网简介93.3.1 网际协议IP93.3.2 用户数据报协议UDP93.3.3 传输控制协议TCP10第4章 程序设计与实现104.1 程序运行环境104.2 程序设计114.2.1 程序设计流程图11 4.2.2 程序具体设计11第5章 系统测试16第6章 设计总结与展望196.1 总结1
7、96.2 展望20参考文献21致 谢22第1章 绪 论1.1 设计背景当前,网络技术发展突飞猛进,网络已经渗透到生产、生活学习的各个方面, 并且,人们开始越来越依赖网络技术,计算机网络具有以下特性:形式多样性, 网络开放性,终端不均匀性,网络互联性等。于是,网络特别容易受到黑客等不 法分子的攻击。总体上说,网络安全所要研究的领域包括网络的中数据信息的完整性,保密性,真实性等多个方面的内容。可见网络安全所涉及的不仅仅是技术方面的内容,还有网络管理相关的问题。两者之间是密切相关的,技术方面可能强调如何有效地防御黑客以避免非法的外部攻击,而在管理方面则需要更加注重内部人员管理的因素。所以,如何较好地
8、保护计算机中的重要数据信息不受 不法分子的侵害,保护用户的计算机系统是当前网络安全方向的研究的重要问题 。 通常,对网络中流通的数据特别感兴趣的通常有两类人,一类就是网络管理员,另外一类就是网络黑客,他们不断地对网络中的数据进行检测,以保证实时地跟踪网络数据。他们存在一个共同点,就是都要用到一个好的数据包监控软件。如黑客常常用数据包监控软件检测互联网,监测网络信息的内容,并对一些敏感信息作出分析,如财经交易等活动中出现的密码,用户名等内容。网络管理员则用该数据包软件检测网络流量,查找网络中的漏洞,发现故障并做出解决等。 所以,学习网络中数据检测和数据分析过程,不仅有助于网络管理员排除网 络中的
9、漏洞和故障,主要是能有效地认识网络攻击的原理,常采用的技术,这样 就可以有针对性的破坏网络黑客的侵入和对资料的窃取。可见,网络探测器可以 检测网路的流量,实现网络数据的检测和捕获,已经逐渐成为网络分析过程中的 重要工具,对于维护网络安全和网络信息管理有着重要的意义。1.2 国内外研究状况 基于网络协议分析和网络数据捕获的技术,从广义上来讲,通常被叫作协议分析仪(ProtocofAnalyzer)。这样定义的原因在于我们常常将一些纯软件的,并且更侧重于捕获网络数据和进行协议分析的系统叫做嗅探器(Sniffer)。而在实际用中,基于硬件或者软硬件结合的网络数据捕获和分析系统我们称之为协议分 析仪。
10、当然,我们并不是在所有的场合都对两者之间的概念进行区分,因为他们 在功能上都能完成类似的工作。举例子来说,一些网络管理软件及一些网络协议 分析仪都使用了嗅探器技术。 目前,已经存在了许多纯软件的网络嗅探器,如:Linuxsniffer、Dsniff、Tcpdump 等,其中,不乏一些专门用于捕获用户名字和用户密码的软件,如 insniffer、 winsniffer。于是, 我们知道,网络嗅探技术就是一把双刃剑,在被网络管理员熟练使用的同时也会被不法外部黑客利用,既可以作为一种诊断网络故障,排除网络存在问题的工具,也为不法分子提供了窃取信息的工具。 大多数的纯软件协议分析仪都是采用 pc 机上
11、的网卡来辅助实现的,即该过 程可以描述为:pc 网卡+协议分析仪。该软件实现的主要功能就是数据的捕获, 信息编码,信息分析处理。使用该软件可以实现网络流量的捕获,并作出相应的 模拟。并且,网络协议分析仪还可以产生大量的网络数据包,以此来测试网络的 负载能力。当前,已经存在了几款较典型的协议分析仪,如:HP 公司的Intemet Advisor(网络专家系统)、WG 公司的Domino 系列协议分析仪,相类似的还包括 Sniffer Portable 协议分析工具等。但是无论是从针对协议的解码能力,还是从数 据分析的实时性角度来讲,该协议的数据分析处理能力、数据包产生能力等方面 都与采用硬件实现
12、的协议分析仪存在着较大的差距。一种典型的硬件协议分析仪 式通过专用的数据采集硬件实现网络数据的获取,采用专门的采集箱完成一些全 线速捕获和实时性更好的网络数据操作中。 还有一些软件粘在应用层的角度对网络的性能进行测试,该类软件通常使用 一些基准的流量对网络数据进行分析,是比网络协议分析仪更高层次的测试工 具。代表软件是Chariot,该软件是由Ganymede software 公司开发的,还有一些 别的软件在当前也是挺流行的,比如用于网络规划验证的模拟环境,过外已经有 一些部门对他们自己的网络协议和它们的组合构建较大的网络系统来模拟,虽然 执行的效果很好,但是价格却很昂贵 。从传统的观念上讲
13、,网络维护人员常常需要一种功能强大的集各种网络技术 于一体的测试软件。所以,相对典型的协议分析仪常加入网络管理,自动网络信 息搜索,智能专家等功能,并且通常要具有一定的移动性能。当前网络分析和测 试的发展趋势是具有综合性能的协议分析仪或者网络分析仪,它们在现场分析, 故障诊断,网络数据维护等方面常常发挥着至关重要的作用,像Fluke 的Opt View INA 手持综合功能协议分析仪就是一个典型的例子。1.3 研究意义 计算机网络技术的飞速发展,极大的改变了人们传统的生活和工作模式,越来越多的社会经济活动开始依赖网络来完成,可以说计算机网络的发展已经成为现代社会进步的一个重要标志。但与此同时,
14、计算机犯罪、黑客攻击、病毒入侵等恶性事件也频频发生。因此,信息安全已越来越受到世界各国的重视。嗅探器作为一种网络通讯程序,是通过对网卡的编程来实现网络通讯的,对网卡的编程是使用通常的套接字(socket)方式来进行。但是,通常的套接字程序只能响应与自己硬件地址相匹配的或是以广播形式发出的数据帧,对于其他形式的数据帧比如已到达网络接口但却不是发给此地址的数据帧,网络接口在验证投递地址并非自身地址之后将不引起响应,也就是说应用程序无法收取到达的数据包。而网络嗅探器的目的恰恰在于从网卡接收所有经过它的数据包,这些数据包即可以是发给它的也可以是发往别处的。显然,要达到此目的就不能再让网卡按通常的正常模
15、式工作,而必须将其设置为混杂模式。嗅探器是一柄双刃剑,具有正反两个方面的作用。作为正面用途,嗅探器主要分析网络流量,作为发现和修补网络故障的重要手段。例如,当网络某个部分运行出现异常,报文发送速度下降时,网络管理员无法确切找出问题的关键所在时,嗅探器即可做出精确的判断。此外,网络管理员还可以利用嗅探器诊断出网络内大量不可见的模糊问题,比如,哪个网络协议传输了多少流量,占主要通讯协议的主机,大多数通讯的目的地址,报文发送的时间和主机间报文传送的时间间隔等。另一方面,嗅探器也可以被别有用心的人用于非法行为。被嗅探器所截取的数据经过处理可以向用户还原显示数据包中所封装的信息,该信息包括用户标识符和口
16、令以及机密的或者专用的信息,用于危害邻居网络的安全或获取更高级别的访问权限。本次课程设计通过基于Winpcap的网络嗅探器设计与实现,网络嗅探器对网络上传输的数据包的捕获与分析功能的进一步了解,做到知己知彼。通过网络嗅探器对网络上传输的数据包进行捕获和分析,获取所需要的信息,利用对这些信息进行网络安全分析。因此,网络嗅探器的研究具有重要意义。第2章 需求分析2.1用户需求网络嗅探(网络抓包)时一种利用计算机的网络接口截获其它计算机数据报文的工具。使用网络嗅探(网络抓包)工具的主要人群是黑客或网络安全技术人员,从攻击的角度,黑客可以使用网络嗅探(网络抓包)程序非法获取网络中传输的大量敏感信息,如
17、账号和口令等,对网路安全极具威胁;从防守的角度,网络嗅探(网络抓包)技术是居于网络的入侵检测系统的最底层环节,是整个系统的数据来源,为技术人员提供重要的依据。无论是黑客还是安全人员,他们对抓包技术的利用途径都是一样的,即对网络上传输的数据包进行捕获与分析,获取不要的信息,但是他们的目的是不一样的,前者是专门利用计算机网络搞破坏或恶作剧,而后者是通过对这些信息的分析利用。维护网络安全与稳定。因此用户提出了以下要求:u 友好的图形化界面,不需要复杂的命令,大部分功能通过鼠标点击就可达到,操作简单、方便;u 能够捕获网络数据包,并能对数据包进行简单的分析;u 精确的设置捕捉规则和灵活的过滤策略,能使
18、用户方便、准确地捕获所需要的信息;u 能够对网络中捕捉的数据包解码,用于故障分析;u 用户能够自定义过滤规则,使数据包的捕获更加精准和具有灵活性,增强了软件功能以及与用户的交互能力;2.2 功能需求对于基于Winpcap的网络嗅探器设计与实现,网络嗅探(网络抓包)作为网络安全方面最常见的工具被广泛使用,本次设计实现的功能有:u 能够抓取IP数据包。u 能够抓取TCP数据包。u 能够抓取UDP数据包。u 对抓取的数据包进行解码。2.3 性能需求一个程序除了能正常运行并且达到相应的功能外,对程序性能也有严格的要求,性能需求决定了整个系统的性能档次、所采用的技术和设备档次,本程序除了达到常用软件对响
19、应时间以及差错控制的要求外,还提出以下要求:(1) 数据精确性。捕获到的数据包并不仅仅是单纯的数据信息,而是包含有IP头、TCP头等信息头的最原始的数据信息,这些信息保留了它在网络传输时的原貌,为分析网络信息提供了重要资料。(2)适应范围。优秀的抓包工具能够分析几百种协议。一般情况下,大多数的抓包工具至少能够分析下面的协议:IP、TCP、UDP等。第3章 Winpcap及相关协议介绍3.1 Winpcap的组成结构 图4.1 Winpcap的组成结构Winpcap 由内核级的数据包监听设备驱动程序(NPF)、低级动态链接库()和高层、用户 级、不依赖于操作系统的动态链接库()三部分构成。Win
20、pcap 的组成结构如图3.1 所示。图3.1 Wpcap体系结构核心层网络层用户层核心态缓冲区转储引擎应用程序过滤器应用程序统计引擎应用程序核心态缓冲区包截获应用程序网络监测应用程序数据转储应用程序 用户态缓冲区 其他应用程序:1、 直接访问NPF2、 调用3、 调用其它协议栈数据链路驱动程序数据包(1)数据包监听设备驱动程序 在技术实现方面,为绕过操作系统的协议栈来访问网络上的原始数据包(raw packet)。这就要求 Winpcap 的一部分运行在操作系统核心内部,直接与网络接口驱动交互。由于这个部分是系统依赖 (System Dependent)的,在 Winpcap 的解决方案中它
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于Winpcap的网络嗅探器设计与实现 基于 Winpcap 网络 嗅探器 设计 实现
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内