解析ARP数据包软件设计与实现.docx

上传人:lao****ou 文档编号:568330 上传时间:2024-02-03 格式:DOCX 页数:17 大小:51.74KB
下载 相关 举报
解析ARP数据包软件设计与实现.docx_第1页
第1页 / 共17页
解析ARP数据包软件设计与实现.docx_第2页
第2页 / 共17页
解析ARP数据包软件设计与实现.docx_第3页
第3页 / 共17页
解析ARP数据包软件设计与实现.docx_第4页
第4页 / 共17页
解析ARP数据包软件设计与实现.docx_第5页
第5页 / 共17页
亲,该文档总共17页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《解析ARP数据包软件设计与实现.docx》由会员分享,可在线阅读,更多相关《解析ARP数据包软件设计与实现.docx(17页珍藏版)》请在第一文库网上搜索。

1、JISHOUUNIVERSITY专业课课程论文题目:解析ARP数据包作者:学号:所属学院:信息科学与工程学院专业年级:总评分:完成时间:吉首大学信息科学与工程学院解析ARP数据包软件的设计和实现(吉首大学信息科学与工程学院,湖南吉首416000)摘要本文首先介绍了地址解析协议ARP的概念,详细说明了ARP的工作原理,ARP攻击的基本原理,详细分解了ARP数据包的各个字段含义,ARP协议工作的流程和这次课程设计的意义与目的;接着描述了此实验的总体设计;然后是详细设计,分析讲解了实现代码的主要部分;最后还讲了做这次课程设计的个人总结,谈了一些个人观点。关键字:ARP数据包、工作原理、ARP攻击、解

2、析、截获、功能目录第一章引言1.1 ARP背景1.1.1 什么是ARP工作原理攻击1.1.4 ARP包的格式1.1.5 ARP协议工作流程1.2 课题研究现状13论文组织方式第二章关键技术2.1 数据包截获机制2.2 抓包工具2.2.1 WinPCaP简介简介第三章总体设计3.1 设计分析3.1.1 设计中的重点及难点3.1.2 参考算法3.1.3 系统或算法框架设计32功能设计3.3 平台设计3.4 数据结构的设计第四章详细设计第五章结束语第六章参考资料第一章引言11ARP背景首先,我们来了解一下什么是ARP,ARP的工作原理以及ARP攻击所带来的危害。111什么是ARP地址解析协议(Add

3、reSSReso1utionProtoco1,ARP)是在仅知道主机的IP地址时确定其物理地址的一种协议。因IPv4和以太网的广泛应用,其主要用作将IP地址翻译为以太网的MAC地址,但其也能在ATM和FDDIIP网络中使用。从IP地址到物理地址的映射有两种方式:表格方式和非表格方式。ARP具体说来就是将网络层(IP层,也就是相当于OS1的第三层)地址解析为数据连接层(MAC层,也就是相当于OS1的第二层)的MAC地址。在以太网协议中规定,同一局域网中的一台主机要和另一台主机进行直接通信,必须要知道目标主机的MAC地址。而在TCP/IP协议栈中,网络层和传输层只关心目标主机的IP地址。这就导致在

4、以太网中使用IP协议时,数据链路层的以太网协议接到上层IP协议提供的数据中,只包含目的主机的IP地址。于是需要一种方法,根据目的主机的IP地址,获得其MAC地址。这就是ARP协议要做的事情。所谓地址解析(addressreso1ution)就是主机在发送帧前将目标IP地址转换成目标MAe地址的过程。另外,当发送主机和目的主机不在同一个局域网中时,即便知道目的主机的MAC地址,两者也不能直接通信,必须经过路由转发才可以。所以此时,发送主机通过ARP协议获得的将不是目的主机的真实MAC地址,而是一台可以通往局域网外的路由器的某个端口的MAC地址。于是此后发送主机发往目的主机的所有帧,都将发往该路由

5、器,通过它向外发送。这种情况称为ARP代理(ARPProxy)o在每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,表里的IP地址与MAC地址是一一对应的。以主机A()向主机B()发送数据为例。当发送数据时,主机A会在自己的ARP缓存表中寻找是否有目标IP地址。如果找到了,也就知道了目标MAC地址,直接把目标MAC地址写入帧里面发送就可以了;如果在ARP缓存表中没有找到目标IP地址,主机A就会在网络上发送一个广播,A主机MAC地址是“主机A的MAC地址”,这表示向同一网段内的所有主机发出这样的询问:“我是,我的硬件地址是Oo-OO-CO-15-AD-18”主机A的MAC地址”.请问IP地

6、址为的MAC地址是什么?”网络上其他主机并不响应ARP询问,只有主机B接收到这个帧时,才向主机A做出这样的回应:的MAC地址是08-00-2B-OO-EE-OA”。这样,主机A就知道了主机B的MAC地址,它就可以向主机B发送信息了。同时A和B还同时都更新了自己的ARP缓存表(因为A在询问的时候把自己的IP和MAC地址一起告诉了B),下次A再向主机B或者B向A发送信息时,直接从各自的ARP缓存表里查找就可以了。ARP缓存表采用了老化机制(即设置了生存时间TT1),在一段时间内(一般15到20分钟)如果表中的某一行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询速度。(如图1所示

7、)ARP攻击就是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目,造成网络中断或中间人攻击OARP攻击主要是存在于局域网网络中,局域网中若有一个人感染ARP木马,则感染该ARP木马的系统将会试图通过“ARP欺骗”手段截获所在网络内其它计算机的通信信息,并因此造成网内其它计算机的通信故障ARP攻击就是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-M

8、AC条目,造成网络中断或中间人攻击OARP攻击主要是存在于局域网网络中,局域网中若有一台计算机感染ARP木马,则感染该ARP木马的系统将会试图通过“ARP欺骗”手段截获所在网络内其它计算机的通信信息,并因此造成网内其它计算机的通信故障。初期:这种有目的的发布错误ARP广播包的行为,被称为ARP欺骗。ARP欺骗,最初为黑客所用,成为黑客窃取网络数据的主要手段。黑客通过发布错误的ARP广播包,阻断正常通信,并将自己所用的电脑伪装成别人的电脑,这样原本发往其他电脑的数据,就发到了黑客的电脑上,达到窃取数据的目的。中期:ARP恶意攻击。后来,有人利用这一原理,制作了一些所谓的“管理软件”,例如网络剪刀

9、手、执法官、终结者等,这样就导致了ARP恶意攻击的泛滥。往往使用这种软件的人,以恶意破坏为目的,多是为了让别人断线,逞一时之快。特别是在网吧中,或者因为商业竞争的目的、或者因为个人无聊泄愤,造成恶意ARP攻击泛滥。随着网吧经营者摸索出禁用这些特定软件的方法,这股风潮也就渐渐平息下去了。现在:综合的ARP攻击。最近这一波ARP攻击潮,其目的、方式多样化,冲击力度、影响力也比前两个阶段大很多。首先是病毒加入了ARP攻击的行列。以前的病毒攻击网络以广域网为主,最有效的攻击方式是DDOS攻击。但是随着防范能力的提高,病毒制造者将目光投向局域网,开始尝试ARP攻击,例如最近流行的威金病毒,ARP攻击是其

10、使用的攻击手段之一。相对病毒而言,盗号程序对网吧运营的困惑更大。盗号程序是为了窃取用户帐号密码数据而进行ARP欺骗,同时又会影响的其他电脑上网。114ARP包的格式ARP(同RARP)使用相同的报头结构,如图所示。硬件类型协议类型硬件地址长度协议长度操作类型发送方的硬件地址(0-3字节)源物理地址(4-5字节)源IP地址(0-1字节)源IP地址(2-3字节)目标硬件地址(0-1字节)目标硬件地址(2-5字节)目标IP地址(0-3字节)硬件类型字段:指明了发送方想知道的硬件接口类型,以太网的值为1;协议类型字段:指明了发送方提供的高层协议类型,IP为0800(16进制);硬件地址长度和协议长度:

11、指明了硬件地址和高层协议地址的长度,这样ARP报文就可以在任意硬件和任意协议的网络中使用;操作字段:用来表示这个报文的类型,ARP请求为1,ARP响应为2,RARP请求为3,RARP响应为4;发送方的硬件地址(0-3字节):源主机硬件地址的前3个字节;发送方的硬件地址(4-5字节):源主机硬件地址的后3个字节;发送方IP(0-1字节):源主机硬件地址的前2个字节;发送方IP(2-3字节):源主机硬件地址的后2个字节;目的硬件地址(0-1字节):目的主机硬件地址的前2个字节;目的硬件地址(2-5字节):目的主机硬件地址的后4个字节;目的IP(O-3字节):目的主机的IP地址。1.1.5ARP协议

12、工作流程1 .首先,每台主机都会在自己的ARP缓冲区(ARPCaChe)中建立一个ARP列表,以表示IP地址和MAC地址的对应关系。2 .当源主机需要将一个数据包要发送到目的主机时,会首先检查自己ARP列表中是否存在该IP地址对应的MAC地址,如果有,就直接将数据包发送到这个MAC地址;如果没有,就向本地网段发起一个ARP请求的广播包,查询此目的主机对应的MAC地址。此ARP请求数据包里包括源主机的IP地址、硬件地址、以及目的主机的IP地址。3 .网络中所有的主机收到这个ARP请求后,会检查数据包中的目的IP是否和自己的IP地址一致。如果不相同就忽略此数据包;如果相同,该主机首先将发送端的MA

13、C地址和IP地址添加到自己的ARP列表中,如果ARP表中已经存在该IP的信息,则将其覆盖,然后给源主机发送一个ARP响应数据包,告诉对方自己是它需要查找的MAC地址;4 .源主机收到这个ARP响应数据包后,将得到的目的主机的IP地址和MAC地址添加到自己的ARP列表中,并利用此信息开始数据的传输。如果源主机一直没有收到ARP响应数据包,表示ARP查询失败。1.2 课题研究现状地址解析协议(AddressReso1utionProtoco1,ARP)是在仅知道主机的IP地址时确定其物理地址的一种协议。因IPv4和以太网的广泛应用,其主要用作将IP地址翻译为以太网的MAC地址,但其也能在ATM(?

14、异步传输模式)和FDDIIP(FiberDistributedDataInterface?光纤分布式数据接口)网络中使用。从IP地址到物理地址的映射有两种方式:表格方式和非表格方式。ARP具体说来就是将网络层(IP层,也就是相当于OS1的第三层)地址解析为数据连接层(MAC层,也就是相当于OS1的第二层)的MAC地址。本设计主要通过使用Winpcap,WpdPack开发包,在MicrosoftMicrosoftVisua1C+6.0环境下编写出了一款简单的软件获取网络中的ARP数据包,解析数据包的内容,将结果显示在标准输出上,并同时写入日志文件。C语言是一种计算机程序设计语言,它既具有高级语言

15、的特点,又具有汇编语言应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比如单片机以及嵌入式系统开发。1.3 论文组织方式首先,本论文从目前网络的现状开始,详细研究了本课题的背景以及意义,由于目前我国正在进行大规模的现代化经济建设,需要使用自己的网络和信息安全系统来保护自己的网络和信息系统,尤其是对于全国性大型计算机网络而言,必须将网络安全和信息安全放在非常重要的地位上,而从长远角度看,这只能依靠我们自己解决。因此建立网络安全系统是我们现在迫切需求,这项工作对我们来说具有重大的政治和经济意义面对这种形式研究并开发出一种能方便有效的实时监视和捕获可疑网络信息的系统迫在眉睫。然后对解析ARP数据包的实现所必须具备的各种技术进行深入了解。其次,在对本论文的背景有所了解的情况下,对本课题所必须的关键技术进行了介绍,比如WPdPaCk等的详细介绍。最后,在对所必须得基础知识有所了解的情况下,按照各模块的功能,分别详细介绍了各个功能的实现过程。第二章关键技术2.1 数据包截获机制网络数据包截获机制一般指通过截获整个网络的所有信息流量,根据信息源主机,目标主机,服务协议断口等

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

当前位置:首页 > 应用文档 > 工作总结

copyright@ 2008-2022 001doc.com网站版权所有   

经营许可证编号:宁ICP备2022001085号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有,必要时第一文库网拥有上传用户文档的转载和下载权。第一文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第一文库网,我们立即给予删除!



客服