一、arp spoofing攻击原理分析
用伪造源mac地址发送arp响应包,对arp高速缓存机制的攻击。 【相关文章:在单个区域办配置OSPF】
在局域网中,通过arp协议来完成ip地址转换为第二层物理地址(即mac地址)的。arp协议对网络安全具有重要的意义。通过伪造ip地址与mac地址实现arp欺骗,能够在网络中产生大量的arp通信量使网络阻塞或者实现“man in the middle” 进行arp重定向与嗅探攻击。 【扩展阅读:HDLC协议配置】
默认情况下,arp从缓存中读取ip-mac条目,缓存中的ip-mac条目是根据arp响应包动态变化的。因此,只要网络上有arp响应包发送到本机,即会更新arp高速缓存中的ip-mac条目。 【扩展信息:OSPF配置示例(1)】
每个主机都用一个arp高速缓存存放最近ip地址到mac硬件地址之间的映射记录。ms windows高速缓存中的每一条记录(条目)的生存时间一般为60秒,起始时间从被创建时开始算起。
攻击者只要持续不断的发出伪造的arp响应包就能更改目标主机arp缓存中的ip-mac条目,造成网络中断或中间人攻击。
arp协议并不只在发送了arp请求才接收arp应答。当计算机接收到arp应答数据包的时候,就会对本地的arp缓存进行更新,将应答中的ip与 mac地址存储在arp缓存中。因此,b向a发送一个自己伪造的arp应答,而这个应答中的数据为发送方ip地址是192.168.10.3(c的ip地址),mac地址是dd-dd-dd-dd-dd-dd(c的mac地址本来应该是cc-cc-cc-cc-cc-cc,这里被伪造了)。当a接收到b伪造的arp应答,就会更新本地的arp缓存(a可不知道被伪造了)。
当攻击源大量向局域网中发送虚假的arp信息后,就会造成局域网中的机器arp缓存的崩溃。
switch上同样维护着一个动态的mac缓存,它一般是这样,首先,交换机内部有一个对应的列表,交换机的端口对应mac地址表port n <-> mac记录着每一个端口下面存在那些mac地址,这个表开始是空的,交换机从来往数据帧中学习。因为mac-port缓存表是动态更新的,那么让整个 switch的端口表都改变,对switch进行mac地址欺骗的flood,不断发送大量假mac地址的数据包,switch就更新mac-port缓存,如果能通过这样的办法把以前正常的mac与port对应的关系破坏了,那么switch就会进行泛洪发送给每一个端口,让switch基本变成一个 hub,向所有的端口发送数据包,要进行嗅探攻击的目的一样能够达到。也将造成switch mac-port缓存的崩溃,如下下面交换机中日志所示:
internet 172.20.156.10000b.cd85.a193 arpavlan256 internet 172.20.156.50000b.cd85.a193 arpavlan256 internet 172.20.156.254 0000b.cd85.a193 arpavlan256 internet 172.20.156.53 0000b.cd85.a193 arpavlan256 internet 172.20.156.33 0000b.cd85.a193 arpavlan256 ... 下一页