毕业设计(论文)设计(论文)题目:局域网监听软件的设计与实现学院名称:电子与信息工程学院专业:计算机科学与技术班级:10计科(2)姓名:XXXX 学号XXXXXXXX 指导教师:XXXX 职称教授定稿日期:2014年4月30日局域网监听软件的设计与实现摘要互联网给我们的社会和个人带来了太多的便利和益处。
社会运作包括公共设施及其服务、政府运作和个人生活,已经越来越离不开电脑和互联网了。
这使得互联网安全这一潜在威胁迅速、悄然但又爆炸式地产生了。
公民个人的隐私、通讯和表达自由受到直接冲击。
从邮件、电话到电子文档和其他资料,乃至行踪、消费记录等,我们似乎可以变成透明。
最近沸沸扬扬的棱镜门和Heartbleed漏洞更是为世人敲响了网络安全的警钟。
对局域网内数据监听系统的研究,对于维护网络的稳定性和解决网络安全问题有着重要的意义,它可以用来帮助诊断网络中的路由设备,其他的网络连接设备,查看网络上数据报的传送情况,利于网络管理员的管理与维护。
本局域网监听软件主要采用WinPCap开发工具和C++语言在VisualStudio2008编译器下进行开发。
软件实现了对局域网内的数据进行捕获以及过滤,并分析出每一协议层的传输数据的主要字段和内容。
之后再将其显示,同时进行动态更新。
经过长时间的使用,证明该软件运行可靠稳定,捕获数据准确,易于使用。
关键词:互联网安全,局域网监听,WinPCap,多协议分析DESIGN AND IMPLEMENTATION OFLAN MONITORING SOFTWAREABSTRACTInternet has brought much convenience and benefits to our everyday life.Social functioning, including public facilities and services, government operations and personal life has become increasingly dependent on computers and the Internet. This makes the potential threat to Internet security quickly, quietly but explosively generated. The privacy of individual citizens, freedom of communication and expression direct impact. From e-mail, telephone to electronic documents and other information, as well as the whereabouts of consumer records, it seems that we can become transparent. Recent uproar the US surveillance program PRISM and Heartbleed loophole is for the world sounded the alarm for network security. Research on data monitoring system in LAN, plays an important role in maintainingthe stability of the network and solve the problem of network security, it can be used to help diagnose routing equipment in the network, the other network connection device, check the transmission of the data on the network,management and maintenance to the network administrator.This LAN monitoring software developed with WinPcap, using the C + + language compiler under VisualStudio2008.This software is mainlyrealizes in monitoring the network ,data analyzes and analyze the main field data for each protocol layer.After that,it shows with carries on the dynamic renewal. After a long period of use, the software is reliable and stable, also able to accurately capture data and easy to use.Key Words: internet security,lan monitoring,winpcap,multi-protocol analysis目录摘要 (I)ABSTRACT (II)目录 (IV)第1章绪论 (6)1.1研究目的和意义 (6)1.2局域网监听技术的发展 (7)1.2.1 局域网监听技术原理 (7)1.2.2 局域网监听的实现方法 (7)第2章网络传输技术概述 (9)2.1网络传输模型 (9)2.1.1 TCP/IP模型 (9)2.1.2 OSI模型 (11)2.1.3 TCP/IP模型和OSI模型的关系 (12)2.2主要数据包结构 (14)2.2.1 以太网帧格式 (14)2.2.2 IP数据包格式 (15)2.2.3 TCP数据报 (16)2.3W IN PC AP简介 (18)2.3.1 WinPCap主要函数 (18)2.3.2 WinPCap过滤器表达式 (20)第3章需求分析 (22)3.1用户需求 (22)3.2功能需求 (22)3.3性能需求 (23)第4章系统设计 (24)4.1开发环境 (24)4.2系统结构 (24)4.2.1 结构描述 (24)4.2.2 系统架构 (24)4.3设计思路 (25)4.4基于W IN PC AP开发应用程序 (25)4.5程序流程 (26)第5章系统实现 (28)5.1总体设计 (28)5.2模块设计 (29)5.2.1 网卡初始化 (29)5.2.2 数据包捕获 (29)5.2.3 数据包分析 (33)5.2.4 过滤器模块设计 (35)第6章总结 (38)参考文献 (39)致谢 (40)作品(软件)使用说明书 (41)第1章绪论1.1研究目的和意义随着计算机技术的发展,网络与我们的生活紧密相连,甚至已经成为生活中的一部分,然而越来越多的网络攻击正在一步步侵犯着我们的网络安全。
黑客们很容易截获在局域网中传输的数据包,通过对数据包进行分析,就能得到数据包内的重要信息。
通过这种方式,我们使用的密码,发送的邮件等私密信息无疑就暴露在别人面前,给个人隐私等信息带来很大的安全威胁!当然,我们也可以利用网络监听技术,获取黑客入侵的信息,甚至可以提前做好预防工作,这样对保护我们的信息安全无疑是一个获得了巨大的先机。
因此,了解网络监听的实现原理就显得尤为重要[1]。
网络监听是信息安全领域内一项非常重要和使用的技术,他的起源是网络管理员为了诊断网络故障的需要,而监听网络中传输的数据信息。
在网络管理和维护中,网络管理和维护人员常常利用网络监听技术监控网络当前的信息状况,网络流量,进行网络访问统计分析等等。
除此之外,网络监听还可以发现网络中存在的安全隐患,及时采取相应措施,不让黑客有机可乘。
但在现实生活中,网络监听技术往往能在黑客手中发挥更大的作用,它们利用网络监听技术窃取用户的私密资料。
对于普通用户来说,被监听也许只是泄露个人隐私资料;而对于金融机构等资料敏感用户,恶意的网络监听更会带来难以弥补的金钱和信用损失。
综上所述,对于局域网数据监听系统的研究,有利于维护计算机网络安全。
对于网络管理者来说,局域网监听可以识别网络中的路由设备,查看局域网中传输的数据包,统计网络的流量,并可以侦测到非法的入侵,找出网络中潜在的问题等。
同时,管理员还可以利用网络监听软件解决一些网络故障,比如网络延时,丢包等问题。
如果不凭借监听软件,就无法准确的知道问题出在何处。
在大型的网络中,它的存在对系统管理员是非常重要的,凭借从局域网监听软件获取的信息,系统管理员可以了解网络中出现的问题,给出相应的解决方法,这给网络环境的管理与维护提供了非常宝贵的信息。
1.2局域网监听技术的发展1.2.1局域网监听技术原理局域网监听的基本原理是数据在局域网环境下进行传输时,包含物理地址的帧数据能送达到线路上的每一台主机。
当数据到达一台主机的网卡时,在正常情况下,网卡读取数据帧,并进行检查,如果数据帧中所包含的物理地址和本机的物理地址或者广播地址相同,则将该数据帧交由IP层进行处理,否则就将该数据帧丢弃。
当主机将该网卡置于混杂模式时,所有的数据帧都将交由IP层进行处理,并不会发生因物理地址不符而将该数据帧丢弃的情况。
也就是说,在局域网环境下同一根线缆上传输的所有数据都会被该主机接收到,进而可以将所有接收到的数据进行分析,从而得出用户所需要的数据[2][3]。
1.2.2局域网监听的实现方法要在局域网中监听, 就需要主机工作在监听模式下,需要向网络接口发出I/O 控制命令,将其设置成监听模式。
在Unix系统中,需要超级用户权限来发送命令。
但在Windows系统中,就没这个限制。
这种工作并不复杂,目前有太多的工具软件可以做到这一点,在很多黑客网站或者从事网络安全管理的网站都能找到。
在Unix环境下,监听工具非常多,如Sniffit、Snoop、Dsniff等都是常见的,他们都免费发布源代码,可以进行研究。
而在Windows环境下,常用的网络监听工具当然是著名的Sniffer pro了,实际上很多人都是用它在Windows环境下抓包来分析[4]。
(1) Sniffit:Sniffit可以运行在Solaris、SGI和Linux等平台上,是由Lawrence Berkeley Laboratory开发的一个免费的网络监听软件。
举例说明:# Sniffit- a- p21- t xxx. xxx. xxx. xxx监听流向机器xxx. xxx. xxx. xxx的21端口( FTP)的信息,并以ASCII显示[5]。