论文部分内容阅读
摘要:本文分析了ARP协议工作原理、攻击原理,并提出了ARP攻击的防御方法。
关键词:ARP协议;网络攻击;防御方法
中图分类号:TP393.08文献标识码:A
Abstract: This paperanalysisthe working principle and,the attacking principle ofthe ARP.Put forword the defense methodsof the ARP attacking.
Keywords:ARP protocol;network attack;defense methods
引言
高校校园网的建立给高校师生提供了一个良好的上网环境,但校园网内部网络的安全问题也日渐突出。现在机房中频繁发生的攻击行为中,利用ARP攻击是其中主要的攻击手段之一。在局域网内某台主机运行ARP欺骗的木马程序时,中木马的计算机会发出大量的数据包导致局域网通讯拥塞,以及其自身处理能力的限制,局域网内的所有用户会感觉上网速度越来越慢,最后甚至会使整个局域网不能进行正常访问互联网。本文阐述了ARP攻击的原理,并提出了一些ARP攻击的检测/防御方法。
1 ARP协议和网卡工作模式
1.1 ARP(地址解析协议)
在局域网内计算机通信时,在链路上传送的是数据帧,是采用MAC(硬件地址)来寻址,ARP解决了从IP地址到MAC地址的映射问题。当源主机欲向本网内的主机发送数据包时,先在源主机的ARP高速缓存中查看有无目的主机的硬件地址,如果存在,就将目的主机的硬件地址写入MAC帧并发送,如不存在,源主机自动在网内广播一个ARP请求报文(其包含的物理地址(MAC)是 0Xffffff ,即为广播帧。)来获得目的主机的硬件地址。这时,网内的所有主机都会收到此ARP请求,只有目的主机才会发回一个ARP响应报文,并写入自己的硬件地址。当源主机收到目的主机的ARP响应后,就在其ARP高速缓存中写入目的主机的IP地址到硬件地址的映射,这时源主机就可以给目的主机发送数据包了。
1.2 网卡接收模式1
在正常的情况下,网卡只响应两种数据帧:一是与自己物理地址相匹配的数据帧;二是给所有计算机的广播数据帧。网卡有四种接收模式:广播方式:该模式下的网卡能够接收网络中的广播信息;组播方式:该模式下的网卡能够接收组播数据;直接方式:该模式下,只有目的网卡才能接收数据;混杂模式:该模式下的网卡能够接收一切通过它的数据,而不管数据是否是传给它的。而在混杂模式下工作的网卡能够收到一切通过它的数据,而不管实际上数据的目的地址是不是它。
2 共享局域网和交换局域网
2.1 传统的共享式以太网是由集线器进行网络互联,它采用广播技术将一个端口接收到的数据广播到本网内的所有机器上,正常情况下,目的主机会接收此数据,而非目的主机则丢弃该数据。但是,如果将网卡设为混杂模式,则非目的主机也可以接收此数据。
2.2 交换式以太网络是采用属于数据链路层设备的二层交换机进行网络互联,通过读取数据包中的目的MAC地址并查找相应的端口进行转发,如果找不到相应的端口,则把数据包广播到所有端口上,当目的机器回应时,交换机就可以学习到目的MAC 地址与哪个端口对应,并把它记录到交换机的缓存中,这样,当再次转发数据时就可以在缓存中找到应该向哪个端口发送。基于二层交换机的特点,即使将网卡设为混杂模式,也只能捕获目的MAC地址为本机地址的数据包,共享式以太网中的监听手段失效。但是,由于ARP协议的无连接、无认证,局域网中的任何主机可随意发送ARP请求包,也可以接收ARP应答包,并且无条件地根据应答包内的内容刷新本机的ARP缓存,因此,ARP攻击也可应用于交换式以太网络中。
3 ARP攻击原理
ARP在设计之初,为了获得较高的传输效率,在数据链路层没有做安全上的防范,在使用ARP协议时无需认证,使用ARP协议的局域网是建立在假设通信双方是相互信任和相互独立的。由于ARP协议是无状态的,任何主机即使在没有请求的时候也可以做出应答。ARP协议并未规定,主机在未受到查询时不能发送ARP应答包。这样,在任何时候,只要接收到ARP应答包,主机就会自动更新ARP缓存。
ARP欺骗攻击的核心思想就是向目标主机发送伪造ARP应答,并使目标主机接收应答中伪造的IP地址与MAC地址之间的映射对,以此来更新目标主机的ARP缓存。
(1)攻击者可在两台正在通信的主机A、B之间充当中间人,假冒主机B的IP地址,而MAC地址为攻击者的MAC地址来欺骗主机A将数据发往攻击者的机器,并且攻击者可开启IP路由功能,将数据包再转发至主机B。同样,对主机B可实施类似的欺骗,因此,主机A、B之间的所有通信内容都被攻击者窃听。
(2)对主机A发送伪造的ARP应答报文,假冒主机B的IP地址,但MAC地址设为不存在的一个硬件地址,主机A接收此报文后错误地刷新ARP高速缓存中主机B的IP地址与MAC地址的映射关系,导致主机A与主机B的网络通信中断。
4 ARP攻击的检测及防御方法
4.1 建立DHCP服务器
给每个网卡绑定固定唯一IP地址。一定要保持网内的机器IP地址与MAC地址一一对应的关系。这样客户机虽然是DHCP取地址,但每次开机的IP地址都是一样的。
4.2第三层交换方式
第三层交换技术采用的是IP路由交换协议,使用可防御ARP攻击的三层交换机并合理划分VLAN。
4.3 定位ARP攻击源头
(1)主动定位方式:因为所有的ARP攻击源都会将网卡设置为混杂模式,可以通过工具ARPKiller来扫描网内哪台机器的网卡处于混杂模式,定位好机器后,再做进一步的处理。
(2)被动定位方式:在局域网发生ARP攻击时,查看交换机的动态ARP表中的内容,确定攻击源的MAC地址;或通过在局域网中利用Sniffer工具,定位ARP攻击源的MAC。
4.4 使用NBTSCAN工具2可以取到主机的真实IP地址和MAC地址,如果有ARP攻击,可以找到装有ARP攻击的主机的IP地址和MAC地址。
4.5 为局域网内的每台用户主机安装ARP防火墙。
4.6 用户主机捆绑IP/MAC (其中网关的IP地址和物理地址可以按实际情况来定。)
(1)在命令行状态下,输入ping 网关地址命令,本文中的网关(内网)是192.168.26.251。
C:\Documents and Settings\tt>ping192.168.36.251
(2)在命令行状态下,输入arp-a可以获得网关的物理地址为00-04-4d-0d-0c-
07。
(3)编写自动批处理文件autoexec.bat,让计算机在每次启动时运行,其内容如下:
@echo off
Arp -d
arp -s 192.168.36.25100-04-4d-0d-0c-
07
5 结束语
ARP协议的安全缺陷来源于协议自身设计上的不足。本文对ARP协议的工作原理、安全缺陷进行了分析。分析了几种针对ARP协议安全缺陷的攻击,并提出了相应的防御方法。
参考文献
[1]丁展,刘海英.Visual C++网络通信编程实用案例精选[M].北京:人民邮电出版社,2005:168-169.
[2]苗恺,周轲.ARP 协议简介及ARP木马防治[J].河南机电高等专科学校学报[J],2006, 14(6):32-33.
关键词:ARP协议;网络攻击;防御方法
中图分类号:TP393.08文献标识码:A
Abstract: This paperanalysisthe working principle and,the attacking principle ofthe ARP.Put forword the defense methodsof the ARP attacking.
Keywords:ARP protocol;network attack;defense methods
引言
高校校园网的建立给高校师生提供了一个良好的上网环境,但校园网内部网络的安全问题也日渐突出。现在机房中频繁发生的攻击行为中,利用ARP攻击是其中主要的攻击手段之一。在局域网内某台主机运行ARP欺骗的木马程序时,中木马的计算机会发出大量的数据包导致局域网通讯拥塞,以及其自身处理能力的限制,局域网内的所有用户会感觉上网速度越来越慢,最后甚至会使整个局域网不能进行正常访问互联网。本文阐述了ARP攻击的原理,并提出了一些ARP攻击的检测/防御方法。
1 ARP协议和网卡工作模式
1.1 ARP(地址解析协议)
在局域网内计算机通信时,在链路上传送的是数据帧,是采用MAC(硬件地址)来寻址,ARP解决了从IP地址到MAC地址的映射问题。当源主机欲向本网内的主机发送数据包时,先在源主机的ARP高速缓存中查看有无目的主机的硬件地址,如果存在,就将目的主机的硬件地址写入MAC帧并发送,如不存在,源主机自动在网内广播一个ARP请求报文(其包含的物理地址(MAC)是 0Xffffff ,即为广播帧。)来获得目的主机的硬件地址。这时,网内的所有主机都会收到此ARP请求,只有目的主机才会发回一个ARP响应报文,并写入自己的硬件地址。当源主机收到目的主机的ARP响应后,就在其ARP高速缓存中写入目的主机的IP地址到硬件地址的映射,这时源主机就可以给目的主机发送数据包了。
1.2 网卡接收模式1
在正常的情况下,网卡只响应两种数据帧:一是与自己物理地址相匹配的数据帧;二是给所有计算机的广播数据帧。网卡有四种接收模式:广播方式:该模式下的网卡能够接收网络中的广播信息;组播方式:该模式下的网卡能够接收组播数据;直接方式:该模式下,只有目的网卡才能接收数据;混杂模式:该模式下的网卡能够接收一切通过它的数据,而不管数据是否是传给它的。而在混杂模式下工作的网卡能够收到一切通过它的数据,而不管实际上数据的目的地址是不是它。
2 共享局域网和交换局域网
2.1 传统的共享式以太网是由集线器进行网络互联,它采用广播技术将一个端口接收到的数据广播到本网内的所有机器上,正常情况下,目的主机会接收此数据,而非目的主机则丢弃该数据。但是,如果将网卡设为混杂模式,则非目的主机也可以接收此数据。
2.2 交换式以太网络是采用属于数据链路层设备的二层交换机进行网络互联,通过读取数据包中的目的MAC地址并查找相应的端口进行转发,如果找不到相应的端口,则把数据包广播到所有端口上,当目的机器回应时,交换机就可以学习到目的MAC 地址与哪个端口对应,并把它记录到交换机的缓存中,这样,当再次转发数据时就可以在缓存中找到应该向哪个端口发送。基于二层交换机的特点,即使将网卡设为混杂模式,也只能捕获目的MAC地址为本机地址的数据包,共享式以太网中的监听手段失效。但是,由于ARP协议的无连接、无认证,局域网中的任何主机可随意发送ARP请求包,也可以接收ARP应答包,并且无条件地根据应答包内的内容刷新本机的ARP缓存,因此,ARP攻击也可应用于交换式以太网络中。
3 ARP攻击原理
ARP在设计之初,为了获得较高的传输效率,在数据链路层没有做安全上的防范,在使用ARP协议时无需认证,使用ARP协议的局域网是建立在假设通信双方是相互信任和相互独立的。由于ARP协议是无状态的,任何主机即使在没有请求的时候也可以做出应答。ARP协议并未规定,主机在未受到查询时不能发送ARP应答包。这样,在任何时候,只要接收到ARP应答包,主机就会自动更新ARP缓存。
ARP欺骗攻击的核心思想就是向目标主机发送伪造ARP应答,并使目标主机接收应答中伪造的IP地址与MAC地址之间的映射对,以此来更新目标主机的ARP缓存。
(1)攻击者可在两台正在通信的主机A、B之间充当中间人,假冒主机B的IP地址,而MAC地址为攻击者的MAC地址来欺骗主机A将数据发往攻击者的机器,并且攻击者可开启IP路由功能,将数据包再转发至主机B。同样,对主机B可实施类似的欺骗,因此,主机A、B之间的所有通信内容都被攻击者窃听。
(2)对主机A发送伪造的ARP应答报文,假冒主机B的IP地址,但MAC地址设为不存在的一个硬件地址,主机A接收此报文后错误地刷新ARP高速缓存中主机B的IP地址与MAC地址的映射关系,导致主机A与主机B的网络通信中断。
4 ARP攻击的检测及防御方法
4.1 建立DHCP服务器
给每个网卡绑定固定唯一IP地址。一定要保持网内的机器IP地址与MAC地址一一对应的关系。这样客户机虽然是DHCP取地址,但每次开机的IP地址都是一样的。
4.2第三层交换方式
第三层交换技术采用的是IP路由交换协议,使用可防御ARP攻击的三层交换机并合理划分VLAN。
4.3 定位ARP攻击源头
(1)主动定位方式:因为所有的ARP攻击源都会将网卡设置为混杂模式,可以通过工具ARPKiller来扫描网内哪台机器的网卡处于混杂模式,定位好机器后,再做进一步的处理。
(2)被动定位方式:在局域网发生ARP攻击时,查看交换机的动态ARP表中的内容,确定攻击源的MAC地址;或通过在局域网中利用Sniffer工具,定位ARP攻击源的MAC。
4.4 使用NBTSCAN工具2可以取到主机的真实IP地址和MAC地址,如果有ARP攻击,可以找到装有ARP攻击的主机的IP地址和MAC地址。
4.5 为局域网内的每台用户主机安装ARP防火墙。
4.6 用户主机捆绑IP/MAC (其中网关的IP地址和物理地址可以按实际情况来定。)
(1)在命令行状态下,输入ping 网关地址命令,本文中的网关(内网)是192.168.26.251。
C:\Documents and Settings\tt>ping192.168.36.251
(2)在命令行状态下,输入arp-a可以获得网关的物理地址为00-04-4d-0d-0c-
07。
(3)编写自动批处理文件autoexec.bat,让计算机在每次启动时运行,其内容如下:
@echo off
Arp -d
arp -s 192.168.36.25100-04-4d-0d-0c-
07
5 结束语
ARP协议的安全缺陷来源于协议自身设计上的不足。本文对ARP协议的工作原理、安全缺陷进行了分析。分析了几种针对ARP协议安全缺陷的攻击,并提出了相应的防御方法。
参考文献
[1]丁展,刘海英.Visual C++网络通信编程实用案例精选[M].北京:人民邮电出版社,2005:168-169.
[2]苗恺,周轲.ARP 协议简介及ARP木马防治[J].河南机电高等专科学校学报[J],2006, 14(6):32-33.