甘肃政法学院本科学年论文(设计)《网络安全》题目ARP欺骗原理及防御手段信息工程学院(系)信息管理与信息系统专业2014级本科班学号201481020126姓名马腾指导教师师晶晶成绩完成时间2016年12月ARP攻击原理及防御手段摘要:ARP攻击是当前计算机网络面临的一大安全隐患一本文仄ARP协议的工作原理入手,分析研究了ARP欺骗攻击的原理,利用虚拟机技术构建虚拟实验平台,结合网络协议分析软件Wireshark,模拟并分析了ARP欺骗攻击的过程-在此基拙上,提出了相应的安全防范措施。关键词:ARP攻击;地址解析协议;安全防范措施PrincipleofARPattackanddefenseInthispaper:ARPattackisthecurrentcomputernetworkfacesabigsecurityhiddenasuppresstheworkingprincipleofARPprotocol,thispaperanalyzedtheprincipleofARPspoofingattacks,buildavirtualexperimentalplatformusingthevirtualmachinetechnology,combiningwithWiresharknetworkprotocolanalysissoftware,thesimulationandanalysestheprocessofARPspoofingattacks-basiconthis,putsforwardthecorrespondingsecuritymeasures.Keywords:ARPattack;Addressresolutionprotocol;Safetyprecautions.目录第一章引言..............................................................................................................11.1研究背景.............................................................................................................11.2研究方案.............................................................................................................1第二章概述.................................................................................................................12.1ARP协议及工作原理.........................................................................................12.2ARP欺骗攻击原理.............................................................................................22.3ARP攻击实施.....................................................................................................42.3.1实验原理......................................................................................................42.3.2实验步骤:..................................................................................................5第三章防御措施.........................................................................................................83.1ARP病毒的症状.................................................................................................83.2简单防范措施.....................................................................................................83.3技术防范措施.....................................................................................................83.4人员防范措施.....................................................................................................93.5结束语.................................................................................................................9致谢.............................................................................................................................10参考文献.....................................................................................................................101第一章引言1.1研究背景在局域网内部,ARP攻击是一种较为频繁发生的攻击。随着网络技术的发展,ARP攻击的手段也在不断变化,其攻击方式复杂多样,冲击力度大大增强。尤其是部分木马和病毒也开始和ARP攻击相结合,使ARP攻击具有更强的隐蔽性和攻击力。如何防御ARP攻击,降低这种攻击带来的危害,已经引起全社会网络专家和网络管理者的广泛关注,并成为目前网络安全界研究的热点问题,现在局域网中感染ARP病毒的情况比较多,清理和防范都很困难,给网络管理员造成了很多困扰。用户在通过局域网上网过程中,有时会出现网络频繁的掉线或是由于本机的原因影响到其他用户上不了网的现象,这是由于ARP的欺骗攻击造成的。在严重情况下,受ARP欺骗攻击会导致用户信息的泄露、隐私会被窃取或发生干扰上网行为事件。由于ARP自身安全存在着脆弱性,所以造成了这样的问题。为了解决这个问题,有必要通过分析ARP的欺骗攻击原理做出应对的防范措施和对策,确保局域网上网得以通畅。因此我们了解ARP攻击原理是非常有必要的,这样我们就可以去针对性的去进行电脑预防,防止被攻击。1.2研究方案首先在对ARP协议相关的理论学习的基础上,重点分析ARP协议的运行机制以及其工作原理,其次分析ARP攻击欺骗原理,接下来以实例进行分析解读,然后说明电脑中ARP病毒症状,最后提出相应的应对措施。第二章概述2.1ARP协议及工作原理ARP协议是地址解析协议(AddressResolutionProtocol)的英文缩写,用于实现IP地址到网络接口硬件地址的映射。每一台主机都有一个ARP缓存表,表中记录了局域网内的所有主机的IP地址与MAC地址的对应关系。当源主机需要将一个数据包发送到目的主机时,会首先检查自己ARP列表中是否存在该IP地址对2应的MAC地址,如有,就直接将数据包发送到该MAC地址;如无,就向本地网段发起一个ARP请求的广播包,查询此目的主机对应的MAC地址,此ARP请求数据包里包括源主机的IP地址、硬件地址、以及目的主机的IP地址。网络中所有的主机收到该ARP请求后,会检查数据包中的目的IP是否和自己的IP地址一致。如果不相同就忽略此数据包;如果相同,该主机首先将发送端的MAC地址和IP地址添加到自己的ARP列表中,如果ARP表中已经存在该IP的信息,则将其覆盖,然后给源主机发送一个ARP口向应的数据包,告诉对方自己是它需要查找的MAC地址;源主机收到这个ARP口向应数据包后,将得到的目的主机的IP地址和MAC地址添加到自己的ARP列表中,并利用此信息开始数据的传输。如果源主机一直没有收到ARP响应数据包,表示ARP查询失败。2.2ARP欺骗攻击原理ARP欺骗[1]是黑客常用的攻击手段之一,ARP欺骗分为二种,一种是对路由器ARP表的欺骗;另一种是对内网PC的网关欺骗。第一种ARP欺骗的原理是——截获网关数据。它通知路由器一系列错误的内网MAC地址,并按照一定的频率不断进行,使真实的地址信息无法通过更新保存在路由器中,结果路由器的所有数据只能发送给错误的MAC地址,造成正常PC无法收到信息。第二种ARP欺骗的原理是——伪造网关。它的原理是建立假网关,让被它欺骗的PC向假网关发数据,而不是通过正常的路由器途径上网。在PC看来,就是上不了网了,“网络掉线了”。ARP表是IP地址和MAC地址的映射关系表,任何实现了IP协议栈的设备,一般情况下都通过该表维护IP地址和MAC地址的对应关系,这是为了避免ARP解析而造成的广播数据报文对网络造成冲击。ARP表的建立一般情况下是通过二个途径:(1)主动解析:如果一台计算机想与另外一台不知道MAC地址的计算机通信,则该计算机主动发ARP请求,通过ARP协议建立(前提是这两台计算机位于同一个IP子网上)。(2)被动请求:如果一台计算机接收到了一台计算机的ARP请求,则首先在本地建立请求计算机的IP地址和MAC地址的对应表。因此,针对ARP表项,一个可能的攻击就是误导计算机建立正确的ARP表。根据ARP协议,如果一台计算机接收到了一个ARP请求报文,在满足下列两个条件的情况下,该计算机会用ARP请求报文中的源IP地址和源物理地址更新自己的ARP缓存:(1)如果发起该ARP请求的IP地址在自己本地的ARP缓存中;3(2)请求的目标IP地址不是自己的。可以举一个例子说明这个过程,假设有三台计算机A,B,C,其中B已经正确建立了A和C计算机的ARP表项。假设A是攻击者,此时,A发出一个ARP请求报文,该ARP请求报文这样构造:(1)源IP地址是C的IP地址,源物理地址是A的MAC地址;(2)请求的目标IP地址是B的IP地址。这样计算机B在收到这个ARP请求报文后(ARP请求是广播报文,网络上所有设备都能收到),发现B的ARP表项已经在自己的缓存中,但MAC地址与收到的请求的源物理地址不符,于是根据ARP协议,使用ARP请求的源物理地址(即A的MAC地址)更新自己的ARP表。这样B的ARP缓存中就存在这样的错误ARP表项:C的IP地址跟A的MAC地址对应。这样的结果是,B发给C的数据都被计算机A接收到。假设主机A(MAC:CCCCCCCCCC)已知B的IP地址,于是他暂时将自己的IP地址改为B的IP地址。当C想要向B发送数据时,假设目前他的ARP缓存中没有关于B的记录,那么他首先在局域网中广播包含B主机IP地址的ARP请求。但此时A具有与B相同的IP地址,于是分别来自B与A的响应报文将相继到达C。此时,A是否能欺骗成功取决于C的操作系统处理重复ARP响应报文机制