ARP欺骗的防御主要有四种
- 用 arp -s 手动添加静态ARP缓存,防止ARP欺骗。
- IP/MAC绑定,在路由器上绑定终端的IP/MAC;或者在终端上绑定网关的IP/MAC。
- 使用三层交换设备,通过路由、VLAN限制ARP欺骗的范围。
- 安全产品,比如防火墙拦截ARP欺骗的包。
3.1、静态ARP
ARP缓存表的映射关系有静态和动态两种类型:
- 动态ARP:由ARP协议通过ARP报文自动更新,可以被静态ARP覆盖,接口关闭或超过生命周期会被删除。
- 静态ARP:手动配置固定的映射关系,因为不会被ARP报文更新,所以防止ARP欺骗。
静态ARP使用 arp -s IP地址 MAC地址
添加,但添加网关的静态映射时,会提示拒绝访问,管理员身份打开也提示拒绝访问。
这跟账号权限无关,可以使用下面这种方式:netsh interface ipv4 show in
找到“本地连接”对应的 “Idx”,我这里是11。netsh interface ipv4 add neighbors 11 “网关IP” “Mac地址“
,添加静态ARP。
再次 arp -a
,可以看到网关的映射类型变成静态了。
Kali再次执行ARP欺骗,已经无法更改ARP缓存表了,防御成功。
取消绑定可以用 netsh interface ipv4 delete neighbors 11 “网关IP” “Mac地址”
或者arp -d
清空缓存表,重新加载网关的映射关系。