本科毕业论文网络安全方面.doc
《本科毕业论文网络安全方面.doc》由会员分享,可在线阅读,更多相关《本科毕业论文网络安全方面.doc(41页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流本科毕业论文网络安全方面.精品文档.摘 要网络的迅速发展,给人类生活带来方便,但也对网络安全提出了更高要求。需对网络协议进一步分析,才能够更加有效的安全的应用网络协议。ARP协议是TCP/IP协议中重要的一员,其功能主要是为局域网内网络设备提供IP地址向硬件地址(MAC地址)的转化,其设计建立在局域网内网络设备之间相互信任的基础上,对于不可信任的设备未加考虑,由此产生了许多ARP欺骗攻击方法。本文以ARP协议为基本原理,以防御ARP欺骗、提高网络安全为目的。首先,在对TCP/IP参考模型、ARP协议等相关理论学习的基础上,重点分析了ARP协议
2、的运行机制,包括ARP缓存、ARP帧格式、ARP请求和应答的运行过程等。其次,分析了ARP欺骗原理,ARP欺骗就是通过向目标主机发送一个伪造的包含IP-MAC映射信息的ARP应答报文实现的。最后,根据Windows系统在更新ARP缓存中IP地址和MAC地址映射信息时不检验更新内容可靠性的特点,提出了一种基于服务器客户端的ARP欺骗防御模型,以达到局域网中实现各主机防御ARP欺骗的目的。本软件使用Visual C+6.0作为开发工具,采用Winpcap(Windows Packet Capture)进行网络监视,来实现各种功能要求。关键词:ARP欺骗攻击 ;Visual C+ 6.0 ;监控 ;
3、Protect;服务器 ;客户端AbstractThe rapid development of the network, to human life, but also bring convenience to network security raised taller requirement. The need for further analysis of network protocols, it can be more effective application of security protocols. ARP protocol is TCP / IP protocol an
4、important one, and its main function is to provide network equipment for the LAN IP address to hardware address (MAC address) of the conversion, its design based on the local area network equipment based on mutual trust between the For non-trusted device is not considered, so lots of ARP spoofing at
5、tack method.In this paper, the basic principle of ARP protocol to guard against ARP cheating, improve network security purposes. First of all, in the TCP / IP reference model, ARP protocol and other related theoretical study, based on ARP protocol analyzed the operation of mechanisms, including ARP
6、cache, ARP frame format, ARP request and response operation processes. Secondly, the analysis of the principle of ARP deception, ARP deception is through to the target host to send a fake IP-MAC mapping contains information on ARP response packet to achieve. Finally, under Windows system ARP cache u
7、pdating the IP address and MAC address mapping information when the update does not test the reliability of the characteristics of Neirong, a server-based client ARP deception defense model in order to achieve LAN ARP cheating achievement of the host defense purposes. The software uses the Visual C
8、+ +6.0 as development tools, using Winpcap (Windows Packet Capture) for network monitoring, to achieve a variety of functional requirements.Keywords: ARP attack ;Visual C+ 6.0 ;Monitor ;Protect ;Server ;Client目录第一章 概 述11.1课题来源11.2国内外研究现状21.3课题分析2第二章 TCP/IP协议及ARP地址解析协议概述42.1 TCP/IP协议分析42.1.1TCP/IP简介4
9、2.1.2TCP/IP协议结构42.1.3数据包的封装52.2 ARP工作原理62.2.1ARP协议62.2.2ARP缓冲区82.2.3ARP报文格式9第三章 ARP欺骗分析及测试153.1ARP欺骗模型153.2常见的ARP攻击手段163.3ARP网关欺骗代码实现163.3.1伪造ARP包结构163.3.2遍历整个网络的实现方法18第四章 防御ARP欺骗系统总体的设计194.1 系统设计思想194.2系统设计框架194.2.1通信系统模型194.2.2服务器端及客户端设计20第五章 系统分析设计215.1系统分析215.1.1系统的可行性215.1.2系统目标及功能分析225.1.3系统模型
10、235.2系统设计245.2.1设计思想及系统结构图245.2.2模块数据流结构图255.2.3系统流程图27总结29(一)总结29(二)遇到的问题及解决29致 谢32参考文献33附录34第一章 概 述1.1课题来源课题ARP欺骗监控系统的设计与实现来源于实际网络的安全应用1。因为随着网络建设步伐的加快和网络应用的日益广泛,网络用户的数量也在不断增多。互联网(Internet)已经成为人们成为人们生活的一部分。我们要辩证的看待互联网,它是一把双刃剑,一方面给用户带来了方便,另一方面使得维护和保证网络安全变得困难,网络安全方面的问题也越来越突出,其中内部网(局域网内)的安全风险最为严重。内部员工
11、对自身企业网络结构、应用比较熟悉,自己攻击或泄漏重要信息,内外勾结,都将可能成为致命的威胁。因此研究内部网络用户的监控技术变得极为迫切,对用于监听、查看用户行为的需求不断增加。在目前存在的种类繁多的受攻击状况中,其中一种就是ARP欺骗攻击。由于以太网络的ARP协议是一个不安全的协议,是直接和用户使用的网络设备交互的协议。ARP协议2是建立在信任局域网内所有结点的基础上的,它很高效,但却不安全。它是无状态的协议,不会检查自己是否发过请求包,也不管(其实也不知道)是否是合法的应答,只要收到目标MAC是自己的 ARP 应答包或 ARP广播包(包括 ARP request和ARP reply),都会接
12、受并缓存,这就为ARP欺骗提供了可能。恶意节点构造并发布虚假的ARP报文从而影响网内结点的通信,甚至可以做“中间人“3,截获用户的数据。为了提供正常的安全的通信服务,我们提出该课题,通过对ARP欺骗的进行监控来防御并解决已发生攻击现象的局域网环境,提出了一种基于服务器客户端3的ARP欺骗防御模型,以达到局域网中实现各主机防御ARP欺骗的目的。1.2国内外研究现状随着网络的飞速发展,Internet的迅速普及,网络已经深入到了我们的生活,信息安全和网络安全的越来越被关注,实时的了解和掌握网络的使用情况和网络中传输的各种数据的要求也越来越高。通过得到的网络内部传输的数据来判断网络的安全。近几年来,
13、许多人投入到这一领域上来,在网络监控软件上取得了一些成绩。国内的有网络哨兵,360安全卫士等。就国内来说,网络监控的研究刚刚起步,为了解网络的实时情况,对存在的网络安全威胁进行处理,各研究机构和企业相应研究和开发了一些应用系统来防范网络上的一些非法行为,但在产品的可靠性,检测的准确性方面,与国外的产品还有一定得距离,这些都需要进一步的研究来解决。因为ARP协议设计的不完善致使攻击的普遍存在。在监控软件中,ARP攻击的欺骗监控防御最为普遍。 1.3课题分析该系统也就是一个局域网管理软件,可以监控网络用户的行为,利用winpcap捕获用户数据包,分析ARP包,当发现有非法行为后,利用ARP欺骗阻断
14、其与Internet的联系(反欺骗手段)从而达到管理局域网的目的。系统应用于实际的局域网网络,必须符合大多数用户的使用要求,方便用户的操作,这也符合课题中的该系统是一个可视化窗口界面系统的要求,所以需要选择一种可视化的开发工具,在选择开发工具时,首先必须选择开发的系统环境,比如windows环境,或者Linux环境,在这里我选择了windows编程技术中常用的开发平台Visual C+ 6.0来实现开发的。系统主要是根据网络安全应用的具体实行情况而设计的,涉及到底层ARP地址解析协议的相关知识,需要windows平台上的winpcap类来完成底层操作,其主要需要完成以下三部分功能:监控ARP网
15、关欺骗功能,保护本机到网关之间通信功能及修复这个网络的功能。另外需要把握一个核心就是得到正确的网关MAC地址,通过该系统的设计深刻理解ARP协议同时运用各种技术来弥补ARP协议的缺陷。第二章 TCP/IP协议及ARP地址解析协议概述2.1 TCP/IP协议分析2.1.1TCP/IP简介TCP/IP协议是 Internet进行通信的基础 ,只有深入理解了 TCP/IP基本概念、工作原理 ,才能更好的掌握和理解Internet,理解网络通信原理。TCP/IP5协议它由两个部分组成,一个是用来检测网络传输中差错的传输控制协议(TCP),当检测到传输中有差错时,它能产生重发信号,源端收到该信号后就重新
16、传输发生差错的包,通过这种差错重传机制保证数据正确传输到目的地;另一个是专门负责对不同网络进行互联的互联网协议(IP)。TCP/IP协议设计的基本原则:每一个独立的网络必须按自己的标准建立起来,当这个网络和互联网连接时,不需要对其内部做任何改动。网络应该在最佳状态下完成通信。如果一个信包没有到达目的地,最初发出信包的结点将很快重发该信包。网络之间通过网关和路由器设备进行互相连接。2.1.2TCP/IP协议结构TCP/IP协议是一个四层协议,协议的每层对上一层是透明的,例如说,应用层只负责应用程序之间的通信规则,完全不必理会数据是怎样在网络中传输,也不必理会怎样接入网络。而对于网络接口层来说,它
17、完全不需要知道正在传送的是什么数据。协议的透明性给我们提供了更加简便的开发思想。我们不需要了解内部数据的具体情况,从而缩短了开发周期。TCP/IP网络协议栈分为应用层(Application)、传输层(Transport)、网络层(Network)和链路层(Link)四层。图2.1所示6。图2.1 TCP/IP协议是一个四层协议2.1.3数据包的封装当应用程序传送数据时数据被送入协议栈,然后逐个通过每一层直到被当作一串比特流送入网络。其中每一层对收到的数据都要增加一些首部信息(有时还要增加尾部信息),如图2.2所示。例如在本课题中要求知道正确的网关MAC地址,可以通过在局域网中设置一台主机为存
18、储正确网关MAC地址的主机,运行软件时只需监测主机向该主机申请网关MAC地址。基本实现方法就是建立一应用程序,一层一层的添加头部信息,发送到监测主机,然后监测主机在进行解析,得到用户数据(正确的网关MAC地址)。图2.2显示了数据包的封装过程。传输层及其以下的通信机制由内核提供,应用层由用户进程提供,应用程序对通信数据的含义进行解释,可以认为是应用层之间的协议。应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header),称为封装(Encapsulation)7。图2.2数据包封装2.2 ARP工作原理2.2.1ARP协议ARP协议是常用的TCP/IP底层协议。在以太网中进行
19、IP通信的时候需要一个协议来建立IP地址与MAC地址的对应关系,以使IP数据包能发到一个确定的地方去。这就是ARP(Address Resolution Protocol,地址解析协议)。ARP帧共有42位,加上18位填充位以及4位CRC,组成64位物理帧。格式如图2.38所示。图2.3ARP请求与应答包报文格式ARP协议的工作过程:当一个基于TCP/IP的应用程序需要从一台主机发送数据给另一台主机时,它把信息分割并封装成包,附上目的主机的IP地址。然后,寻找IP地址到实际MAC地址的映射,这需要发送ARP数据包消息。当ARP找到了目的主机MAC地址后,就可以形成待发送帧的完整以太网帧头。最后
20、,协议栈将IP包封装到以太网帧中进行传送。如图2.4所示,描述了ARP广播过程。在图2.4中,当主机A要和主机B通信(如主机A Ping主机B)时。主机A会先检查其ARP缓存内是否有主机B的MAC地址。如果没有,主机A会发送一个ARP请求广播包,此包内包含着其欲与之通信的主机的IP地址,也就是主机B的IP地址。当主机B收到此广播后,会将自己的MAC地址利用ARP响应包传给主机A,并更新自己的ARP缓存,也就是同时将主机A的IP地址/MAC地址对保存起来,以供后面使用。主机A在得到主机B的MAC地址后,就可以与主机B通信了。同时,主机A也将主机B的IP地址/MAC地址对保存在自己的ARP缓存内也
21、就是后面对应的ARP缓冲表。图2.4 ARP广播2.2.2ARP缓冲区在工作站PC的windows环境中,ARP条目的寿命是2分钟。 在工作站PC的Windows环境中,可以使用命令arp -a查看当前的ARP缓存,如图3所示。为了能够人工的修改ARP缓存,可以使用arp d来删除ARP缓存里面存放的IP-MAC地址对。IP-MAC地址对也就是电脑里存储的关于IP地址与MAC地址的对应关系,dynamic表示是临时存储在ARP缓存中的条目,过一段时间就会超时被删除(具体时间不同操作系统不同)。Static表示是静态存储在ARP缓存中的条目,不会因为超时而被删除,这也为我们设计保护本机通信提供了
22、一些方法依据。图2.5 Windows环境下,命令arp -a的输出2.2.3ARP报文格式2.2.3.1 IP-MAC映射9每个网卡都有自己全球唯一的MAC地址,它们是以MAC地址来传输以太网数据包的,它们不可能识别IP包中的IP地址,实际上网卡把收到的包提交到协议栈的缓冲,成为链路层包,再分离出IP层的包,再分离出TCP ,UDP。发送包则是相反的过程,进行添加头部信息。2.2.3.2ARP包的格式一个ARP包是分为两个部分的,前面一个是物理帧头或EtherHeader,后面一个才是ARP帧或ArpFrame10。首先,物理帧头,它将存在于任何一个协议数据包的前面,叫DLC Header,
23、因为这个帧头是在数据链路层构造的,并且其主要内容为收发双方的物理地址(MAC地址),以便硬件设备识别。表2.1对局域网内所有的主机MAC地址进行广播,包括:接收方的MAC地址、发送方MAC地址、网络的类型这里就是以太网默认值为(0X0806)。因为这里说的是广播数据则接收MAC地址为ff-ff-ff-ff-ff-ff。另需填充是发送方的MAC地址。表2.1物理帧头格式DLC Header字段长度(Byte)默认值备注接收方MAC6广播时, 为ff-ff-ff-ff-ff-ff发送方MAC6Etnertype20x08060X0806是ARP帧的类型值采用C语言中的枚举类型11就行设置同一结构体
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 本科毕业 论文 网络安全 方面
限制150内