攻击原理:
1、 攻击原理:
ARP欺骗是采用大量的伪造网关的ARP reply报文来淹没真正的网关reply报文来达到欺骗客户端的目的。因IP协议设计问题,对于收到的ARP reply无法进行认证,并且尽管自身未发ARP request报文但是仍可对replay报文进行响应,这更加大了被攻击的可能。
可见ARP REPLY发包频率非常之高,统计信息如下:
同时还发现聚生网关,有定时扫描整个网段ARP的机制,而网络守护神为手工按钮。
当以上攻击发生时,客户端通过arp -a 命令发现已经被欺骗,而在网关上 dis arp 未发现欺骗,同时也没有抓取到欺骗网关的ARP报文,此时查看交换机的MAC地址表,也没有异常。由此可证明以上2软件仅对客户端进行欺骗,而不对网关和交换机进行欺骗。
2、 数据在受欺骗时的流程:
首先因客户端的MAC错误,客户会将数据错误的转发到攻击机,攻击机仅修改目的MAC为真正的网关MAC,对三层及以上数据不做修改并转发,此时真正的数据到达路由器并经过NAT出局,而回来的数据流因路由器的MAC地址表未被欺骗,因此直接的回送至受欺骗的机器,抓包如下:
由此可证明此2软件仅对上行数据流做控制,下行的则不做控制,路由器和交换机意识不到欺骗的存在。
预防方法测试:
1、 静态绑定:
在受攻击的客户端做静态IP+MAC绑定 发现客户端不受控制,但是上网速度相对来说慢,分析原因为尽管自身已经不受欺骗当时仍然要处理收到的欺骗数据包,同时欺骗的数据也占用带宽,因此对上网速率造成影响,但此已经不属于ARP攻击的范畴了。此时在监控机抓取不到受害机的报文,由此也可证明已经失去控制。
2、 DHCP SNOOPING:
此方法证实无效,相关配置如下:
#
interface Ethernet0/1
ip check source ip-address mac-address
#
interface Ethernet0/2
ip check source ip-address mac-address
#
interface Ethernet0/3
ip check source ip-address mac-address
interface Ethernet0/24
dhcp-snooping trust
#
dhcp-snooping
具体分析如下:因打开DHCP SNOOPING功能后,交换机在转发数据前要检查DHCP SNOOPING 表的,凡是IP和MAC地址不和SNOOPING 表相匹配的则不予转发。DHCP-SNOOP表如下:
[SW1]dis dhcp-snooping
DHCP-Snooping is enabled globally.
The client binding table for all untrusted ports.
Type : D--Dynamic , S--Static
Type IP Address MAC Address Lease VLAN Interface
==== =============== =============== ========= ==== =================
D 10.0.0.4 0021-70c0-fc55 86400 1 Ethernet0/1
D 10.0.0.5 001d-7d15-84f3 86400 1 Ethernet0/2
D 10.0.0.6 0013-779c-25d3 86400 1 Ethernet0/3
--- 3 dhcp-snooping item(s) found ---
因此当发生ARP欺骗后,ARP攻击机转发受害机的数据的IP+MAC关系已经不符合SNOOPING表的条目了,因此将丢弃该数据包。此时即使攻击机不对受害机做控制,受害机也不能够上网,受害机的数据被交换机丢弃了。
由此可推断,在交换机上做IP MAC PORT 之间的绑定也是如上效果,起不到防御作用。
3、 PVLAN:
在交换机上做PVLAN隔离,此时发祥攻击机无法扫描到同网段的其他机器,也无法做出任何欺骗,在监控口抓包仅发现大量扫描包,此时受害机的ARP地址表也正常,网速也正常。分析原因为交换隔离了攻击的流量,此时的攻击包受害机根本就无法收到,同样也不占用CPU时间,对网络带宽占用也比较少,因此起到了完全隔离ARP攻击的作用,并且对网速也没有影响。
相关配置如下:
#
vlan 10
#
vlan 100
isolate-user-vlan enable
#
vlan 101
#
vlan 102
#
vlan 103
#
interface Vlan-interface1
ip address 10.0.0.2 255.255.255.0
#
interface Ethernet0/1
port link-type hybrid
port hybrid vlan 100 to 101 untagged
port hybrid pvid vlan 101
#
interface Ethernet0/2
port link-type hybrid
port hybrid vlan 100 102 untagged
port hybrid pvid vlan 102
#
interface Ethernet0/3
port link-type hybrid
port hybrid vlan 100 103 untagged
port hybrid pvid vlan 103
#
interface Ethernet0/23
port access vlan 10
#
interface Ethernet0/24
port link-type hybrid
port hybrid vlan 100 to 103 untagged
port hybrid pvid vlan 100