HCNP Routing&Switching之ARP安全
前文我们了解了IP安全相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16652367.html;今天我们来聊一聊ARP安全相关话题;
什么是ARP?
ARP是Address Resolution Protocol的首字母缩写,翻译成中文就是地址解析协议;它主要是将ip地址解析成对应设备的mac地址;我们知道以太网设备之间通信都是需要二层mac地址的封装;那么我们平常配置的ip地址给设备,它是怎么和对端通信的呢?首先本端要发送ARP请求通信目标mac地址(如果本地ARP缓存表里没有对应条目的情况下,如果有就直接封装本端mac和ip地址为源mac和源ip,把对端的mac和ip封装成目标mac和目标ip);只有对端回复了arp请求以后,本端就会将arp回复报文中的源mac当作对应通信目标的mac,并将对应信息存入arp缓存表中,以备后续再次通信使用;简单讲ARP就是根据IP地址获取mac地址的TCP/IP协议;ARP协议有一个特点,就是同一局域网中的设备,只要收到一个arp回复包,局域网里的所有设备都会将对应回复包的源mac和对应源ip写入对应的arp缓存表里;这样一来非法主机在局域网里恶意发送伪造的arp应答报文,就会对应网络造成影响;
ARP工作环境

提示:arp主要工作在主机与主机之间,或者主机和网关之间,通常都是在同一vlan下,不会垮网段;
ARP主要攻击方式和危害
1、仿冒网关:所谓仿冒网关就是以网关的口吻欺骗其他主机;告诉其他主机自己就是网关;让其他主机误以为攻击者就是网关;

提示:如上图所示,主机A向主机B发送arp回复报文说,网关的mac地址为222,主机B收到此报文后,会将原来在自己的arp缓存表里的对应条目的mac地址给覆盖掉,这样一来带来的后果是,主机B和正常的网关通信就中断了;主机B和网关的通信会统统发送给主机A;
2、欺骗网关:所谓欺骗网关就是冒充合法主机的口吻向网关发送非法arp回复报文;让网关误以为攻击者就是真正的合法主机;

提示:如上图所示,主机A向网关发送,主机B的mac为555,网关收到此报文后,会将主机的arp缓存表更新为对应收到的arp应答报文里的mac;这样一来网关和真正合法主机的通信就会中断;
3、欺骗主机:所谓欺骗主机就是冒充合法主机向另一主机发送非法的arp应答报文,让另一主机误以为攻击者就是通信的对端;

提示:如上图所示,主机A欺骗主机C,说主机B的MAC为555,主机C收到此报文后,会更新自己的arp缓存表,将正常主机B的mac地址给覆盖掉;这样一来主机C就不能正常和真正的主机B通信;
中间人攻击

提示:所谓中间人攻击就是仿冒网关、欺骗网关的结合;对于网关来说,攻击者就是合法的主机(欺骗网关);对于合法主机来说,攻击者就是网关(仿冒网关);正常主机B和网关的通信会先发送给攻击者,然后被攻击者捕获,然后再由攻击者再次封装将对应请求发送给网关;网关回包也是先将包回复给攻击者,被攻击者捕获以后再封装发送给合法主机;对于合法主机来说它是没有任何感知的;上图是主机A和主机B都被非法主机双向欺骗;
ARP MISS
所谓ARP miss就是指网络中用户向设备发送目标ip不能正常解析的ip报文(即路由表中存在对应IP报文的目标ip地址路由表项,但没有对应路由下一跳的arp表项);这种触发arp miss消息的ip报文我们就成为arp miss报文,即arp miss报文会被上传到cpu处理;设备根据arp miss消息生成和下发临时arp表项并向目标的网络发送arp请求报文,这样就增加了设备cpu的负担,同时消耗目标网络的带宽资源;

提示:如上图所示,攻击者发送不能正常解析的ip报文给交换机(如在局域网里不存在的ip),交换机收到以后,不能正常获取到mac地址,此时就会触发ARP MISS消息,同时会向目标网络发送arp请求消息;交换机收到不能正常解析的ip报文触发arp miss消息加剧设备cpu的负担,同时向目标网络发送arp请求,占用目标网络的网络带宽;虽然少量的arp请求不能对网络造成什么影响,如果有人恶意发送大量的不能解析的ip报文,就会对设备cpu和目标网络的带宽造成极大的影响;
ARP攻击防御措施
1、ARP防网关冲突:该技术的应用场景主要是防止有人恶意冒充网关;主要工作原理是我们在交换机上开启了这项功能以后,如果ARP报文的源ip地址与报文入接口对应的VLANIF接口IP地址相同;或者ARP报文的源IP地址是入接口的虚拟IP地址,但ARP报文的源MAC地址不是VRRP的虚拟MAC;即上述两种情况都是攻击者在冒充网关的ip地址进行攻击;交换机收到此类报文就会认为该ARP报文和网关地址冲突,交换机将生成ARP防攻击表项,并在后续的一段时间内丢弃该接口收到的同VLAN以及同源MAC地址的ARP报文,这样就可以防止与网关地址冲突的ARP报文在VLAN内广播;

提示:我们只需要在交换机的全局模式下开启对应功能即可;
查看ARP防止攻击表项

2、网关开启主动发送免费arp:其实这是利用网关发送免费arp来覆盖攻击者的arp报文;

提示:默认开启发送免费arp报文功能后,间隔是60秒发送一次;我们可以使用interval 来指定间隔多久发送一次,最小间隔为1秒一次;
抓包查看网关是否在发送免费arp呢?

提示:可以看到现在pc上抓包,网关会每个两秒发送一次免费arp,广播给同一广播域的其他主机,网关的mac信息;这在一定程度上可以缓解攻击者的攻击;但是如果攻击者发送伪造的arp报文如果比网关发送的免费arp报文快,则攻击者的报文会覆盖网关自身发送的免费arp广播;一般使用该技术是结合上面的防网关冲突使用;
3、ARP报文速率
3.1、限制任意源MAC的ARP报文

3.2、限制特定源MAC的ARP报文

3.3、限制特定源IP的ARP报文

4、ARP Miss消息限速
4.1、限制任意源IP的ARP MISS消息

4.2、限制特定源IP的ARP MISS消息

查看当前ARP限速配置

查看arp miss限速配置

查看arp处理的报文统计数据

5、DAI(Dynamic ARP Inspection,动态ARP检测)可防止中间人攻击;该技术建立在dhcp snooping的绑定表的基础之上;当设备收到ARP报文时,将此ARP报文对应的源ip、源mac、vlan以及接口信息和绑定表的信息进行比较,如果信息匹配,说明发送该ARP报文的用户是合法用户,允许此用户的arp报文通过,否则就认为是攻击,丢弃对应arp报文;
DAI配置流程
1、全局开启dhcp snooping功能;
2、在某个VLAN内开启dhcp snooping功能;
3、配置信任接口;
4、在接入设备的接口开启ARP动态监测功能即可;
实验,如下拓扑配置DAI监测

sw1的基础配置

sys
sys sw1
vlan 2
int g0/0/1
p l a
p d v 2
int g0/0/2
p l a
p d v 2
int g0/0/3
p l a
p d v 2

dhcp-server的基础配置

sys
sys dhcp-server
dhcp en
vlan 2
int g0/0/1
p l a
p d v 2
int vlanif 2
ip add 172.16.20.254 24
dhcp se int

验证DHCP服务器地址池

提示:可以看到有两个地址被使用,说明dhcp服务器正常工作;
1、在sw1上开启全局开启dhcp snooping功能

提示:全局开启dhcp snooping功能,需要现在全局开启dhcp功能;
2、在vlan2内开启dhcp snooping功能

3、配置dhcp snooping 信任接口

查看绑定表

提示:如果我们是后面才开启的dhcp snooping功能,需要让pc重新拿地址,对应绑定表就会形成;
4、在接口开启arp动态检测功能

验证配置结果

查看arp检测到arp报文丢弃计数

提示:我这里是没有模拟攻击,如果有攻击,这对应统计数量就会有;
HCNP Routing&Switching之ARP安全的更多相关文章
- HCNP Routing&Switching之代理ARP
前文我们了解了端口隔离相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16186451.html:今天我们来聊一聊ARP代理相关话题: 端口隔离之破解之 ...
- HCNP Routing&Switching之OSPF网络类型
前文我们了解了PPPoE协议相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15182512.html:今天我们聊聊一聊OSPF中的网络类型相关话题: ...
- HCNP Routing&Switching之IS-IS报文结构和类型
前文我们了解了IS-IS动态路由协议基础相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15249328.html:今天我们来聊一聊IS-IS动态路由协 ...
- HCNP Routing&Switching之BGP报文结构、类型和状态
前文我们了解了BGP的邻居建立条件.优化以及BGP认证相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15395723.html:今天我们来聊一聊BGP ...
- HCNP Routing&Switching之组播技术-组播协议IGMP
前文我们了解了组播地址相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15616740.html:今天我们来聊一聊组播协议中IGMP协议相关话题: 组播 ...
- HCNP Routing&Switching之端口隔离
前文我们了解了组播路由协议稀疏模式中的RP相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16154347.html:今天我们来聊一聊二层交换机中有关v ...
- HCNP Routing&Switching之MUX VLAN
前文我们了解了代理ARP相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16188230.html:今天我们再来聊一聊vlan隔离相关话题MUX VLA ...
- HCNP Routing&Switching之Super VLAN
前文我们了解了VLAN隔离技术MUX VLAN相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16196936.html:今天我们来聊一聊VLAN优化S ...
- HCNP Routing&Switching之VRRP基础
前文我们了解了链路高可用技术链路聚合相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16279078.html:今天我们来聊一聊另一种高可用技术,网关高 ...
随机推荐
- 北京市行政村边界shp数据/北京市乡镇边界/北京市土地利用分类数据/北京市气象数据/降雨量分布数据/太阳辐射数据
数据下载链接:数据下载链接 北京是一座有着三千多年历史的古都,在不同的朝代有着不同的称谓,大致算起来有二十多个别称.北京地势西北高.东南低.西部.北部和东北部三面环山,东南部是一片缓缓向渤海倾斜的 ...
- 数据孤岛下的新破局 Real Time DaaS:面向 AP+TP 业务的数据平台架构
从传统数仓,到大数据平台,再到数据中台和湖仓一体新数据平台,在日益加重的数据孤岛困扰下,面向AP场景的解决方案可谓浩如烟海.但实际上,企业在TP类型业务上的投入和AP的比率却高达9:1,为什么没有为T ...
- 1.JS中变量的重新声明和提升
重新声明 1.允许在程序的任何位置使用 var 重新声明 JavaScript 变量: 实例 var x = 10; // 现在,x 为 10 var x = 6; // 现在,x 为 6 2.在相同 ...
- Stream流中的常用方法foeEach和Stream流中的常用方法filter
延迟方法:返回值类型仍然是Stream接口自身类型的方法,因此支持链式调用.(除了中介方法外,其余方法均为延迟方法) 终结方法:返回值类型不再是Stream接口自身类型的方法,因此不再支持类似Stri ...
- SQL审核工具自荐Owls
关键词: sql审批.sql检测.sql执行.备份 概要 这里主要是向大家推荐一款sql检测.审批工具Owls,用于自动检测.审批sql的执行,还有其他的审批.备份.查询等功能.以提高sql的规范化, ...
- YII学习总结1
YII 安装(2.0 advanced) 以下借鉴别人的博文 http://www.jb51.net/article/54055.htm 今天终于搞明白怎么安装Yii2了.对于我这种小白来说真是费尽 ...
- Vue3:不常用的Composition API && Fragment、Teleport、Suspense && 与Vue2对比的一些变化
1 # 一.Vue3不常用的Composition API 2 # 1.shallowReactive与shallowRef 3 .shallowReactive: 只处理对象最外层属性的响应式(浅响 ...
- Java学习 (八)基础篇 运算符
目录 运算符 基本运算符 1.一元基础运算(重点) 一元运算符 (a++ / ++a) (a-- / --a) 2.二元基础运算 基础 计算返回值类型 关系运算 幂运算 3.三元运算符 4.逻辑运算符 ...
- Kubernetes的整体架构
K8s将集群中的机器划分为一个主节点和一群工作节点,在主节点上运行着集群管理相关的一组进程kube-apiserver.kube-controller-manager 和 kube-scheduler ...
- 如果Controller里有私有的方法,能成功访问吗?
目录 背景 原因 cglib代理的锅 换成JDK动态代理呢 参考 背景 写代码的时候,复制粘贴的时候,没注意到方法的属性,就导致了Controller里有了一个私有的方法,然后访问这个接口的时候就报了 ...