ARP协议分析
在OSI模型的第2层是数据链路层,该层提供了网络节点间的数据传输机制。该层重要的原因是它负责将数据分割成帧进行传输。在数据链路层上有许多值得我们探讨的不安全因素,但是其中最重要的是地址分辨协议(ARP)。
地址解析协议ARP正是用来进行IP地址到MAC地址的转换的。同时为了避免不必要的ARP报文查询,每台主机的操作系统都维护着一个ARP高速缓存ARP Cache,记录着同一链路上其它主机的IP地址到MAC地址的映射关系。ARP高速缓存通常是动态的,该缓存可以手工添加静态条目,由系统在一定的时间间隔后进行刷新。
ARP协议虽然是一个高效的数据链路层协议,但作为一个局域网协议,它是建立在各主机之间相互信任的基础上的,所以ARP协议存在以下缺陷:ARP高速缓存根据所接收到的ARP协议包随时进行动态更新;ARP协议没有连接的概念,任意主机即使在没有ARP请求的时候也可以做出应答;ARP协议没有认证机制,只要接收到的协议包是有效的,主机就无条件的根据协议包的内容刷新本机ARP缓存,并不检查该协议包的合法性。
ARP协议应用
因此攻击者可以随时发送虚假ARP包更新被攻击主机上的ARP缓存,进行地址欺骗或拒绝服务攻击。 调整ARP清理的时间,通过向IP路由缓冲填充伪造的ARP条目可以让恶意用户产生资源耗竭和性能减低攻击。
- AIX5
- #no -o arpt_killc=20
- FreeBSD 5-7
- #sysctl -w net.link.ether.inet.max_age=1200
- Solaris8-10
- #ndd -set /dev/arp arp_cleanup_interval 60000
- Linux2.4-2.6
- #sysctl -w net.link.ether.inet.max_age=1200
说明:ARP缓存清理时间间隔如果定得太大,对于一个大网来说,有可能不能分配到ip(某些分到ip地址的主机没开,也占用地址) ,定得太小,引起大量广播风暴。
ARP协议的攻击的内容就向大家介绍完了,希望大家已经掌握,我们还会在以后的文章中继续向大家介绍相关内容的。本文以及以前的相关文章,主要向大家介绍强化Unix 类家族系统的TCP/IP堆栈的方法。其实非常简单,通过对命令行配置,就可以保护或者减缓Unix类服务器免遭网络级别的拒绝服务攻击,包括SYN洪水攻击、ICMP攻击和SNMP攻击。
【编辑推荐】