|
ARP防火墙的功能是牺牲一部分网络带宽,采用与arp攻击相同的原理大量发包,暂时解决上网问题,但是只要局域网内的arp攻击主机还存在,整个广播域都仍然充斥着arp攻击~
在只有几台,十几台客户机小型局域网里,arp防火墙的这一点网络带宽开销也许算不了什么~
但是如果是大型局域网,每台计算机都开arp防火墙,那整个网络很有可能完全瘫痪~
所以我觉得对于一个网管而言,根本的解决办法还是要学会抓包分析,找到arp攻击的源头,然后解决掉它~
ARP攻击原理:
ARP(Address Resolution Protocol)是地址解析协议,是一种将IP地址转化成物理地址的协议。从IP地址到物理地址的映射有两种方式:表格方式和非表格方式。ARP具体说来就是将网络层(IP层,也就是相当于OSI的第三层)地址解析为数据连接层(MAC层,也就是相当于OSI的第二层)的MAC地址。
ARP原理:某机器A要向主机B发送报文,会查询本地的ARP缓存表,找到B的IP地址对应的MAC地址后,就会进行数据传输。如果未找到,则广播A一个ARP请求报文(携带主机A的IP地址Ia——物理地址Pa),请求IP地址为Ib的主机B回答物理地址Pb。网上所有主机包括B都收到ARP请求,但只有主机B识别自己的IP地址,于是向A主机发回一个ARP响应报文。其中就包含有B的MAC地址,A接收到B的应答后,就会更新本地的ARP缓存。接着使用这个MAC地址发送数据(由网卡附加MAC地址)。因此,本地高速缓存的这个ARP表是本地网络流通的基础,而且这个缓存是动态的。
ARP协议并不只在发送了ARP请求才接收ARP应答。当计算机接收到ARP应答数据包的时候,就会对本地的ARP缓存进行更新,将应答中的IP和MAC地址存储在ARP缓存中。因此,当局域网中的某台机器B向A发送一个自己伪造的ARP应答,而如果这个应答是B冒充C伪造来的,即IP地址为C的IP,而MAC地址是伪造的,则当A接收到B伪造的ARP应答后,就会更新本地的ARP缓存,这样在A看来C的IP地址没有变,而它的MAC地址已经不是原来那个了。由于局域网的网络流通不是根据IP地址进行,而是按照MAC地址进行传输。所以,那个伪造出来的MAC地址在A上被改变成一个不存在的MAC地址,这样就会造成网络不通,导致A不能Ping通C!这就是一个简单的ARP欺骗。
ARP防火墙原理:
伴随ARP欺骗的隐蔽性和广泛性,目前出现了多种可以防止ARP欺骗的软件,它们的工作原理一般有两种:第一种是拦截ARP的攻击或者是IP冲突,保障系统不会受ARP攻击的影响;第二种是防止恶意攻击程序篡改本机的ARP缓存表。 第一种方法可以通过广播指定IP地址正确的MAC地址,它能够立即解决ARP攻击引起的挂马、掉线等问题,但同时也会给网络带来一定的负载。第二种方法较为简单,不会对网路有什么影响,但防护效果较差。 目前比较流行的ARP防护类软件有:AntiARP防火墙、瑞星个人防火墙2008、360ARP防火墙等,它们的工作原理无外乎上述两种。 |
|