目录
Ⅰ NFPP应用场景和功能介绍
Ⅱ NFPP配置案例
Ⅰ NFPP应用场景和功能介绍
应用场景:
NFPP作为保护交换机自身CPU不受攻击,不能替代防范ARP欺骗相关的安全功能,设备缺省支持并打开NFPP,建议保留开启并适当调整。
调整原则:
1、在接入设备上,通常无需调整,因为非网关设备,没有配置网关IP地址也不会运行一些复杂路由,管理协议等,无需额外消耗CPU,所以很少会遭受攻击。
2、在汇聚设备上,默认的基于端口的限速100PPS/攻击200
PPS阈值偏小,当端口下用户较多,ARP攻击较多时,可能导致用户正常的ARP报文丢弃,导致用户端丢包,需要放大。经验值调整为每端口限速500PPS/攻击800PPS较为合理,其他基于IP/MAC的限速攻击检测无需调整。
3、隔离功能通常不建议开启,在汇聚设备上如果用户攻击非常频繁,导致设备CPU80%-90%以上,此时可以考虑进行硬件隔离,并放大当前攻击的检测阈值,防止误判。因为一旦隔离将会导致这些攻击性质的用户无法上网。
功能简介:
NFPP: 网络基础保护策略 (Network Foundation Protection
Policy),简称NFPP。在网络环境中经常发现一些恶意的攻击,这些攻击会给交换机带来过重的负担,引起交换机CPU利用率过高,导致交换机无法正常运行。这些攻击具体表现在:
拒绝服务攻击可能导致大量消耗交换机内存、表项或者其它资源,使系统无法继续服务。大量的报文流砸向CPU,占用了整个送CPU的报文的带宽,导致正常的协议流和管理流无法被CPU处理,带来协议震荡或者无法管理,从而导致数据面的转发受影响,并引起整个网络无法正常运行。大量的报文砸向CPU会消耗大量的CPU资源,使CPU一直处于高负载状态,从而影响管理员对设备进行管理或者设备自身无法运行。NFPP可以有效地防止系统受这些攻击的影响。在受攻击情况下,保护系统各种服务的正常运行,以及保持较低的CPU负载,从而保障了整个网络的稳定运行。
NFPP重点子功能介绍:(日常应用中,可能需要调整的功能为ARP-Guard和IP-Guard,其他未在本文中列出的功能,例如ND Guard、DHCP
Guard保持默认设置即可)
ARP-Guard:
汇聚交换机作为网关,需要正常处理用户端的ARP报文,ARP-
Guard功能主要目标为保护设备CPU,防止大量攻击ARP报文送CPU导致CPU利用率升高,所以ARP-Guard实现了对送CPU
ARP报文的限速和攻击检测。ARP攻击识别分为基于主机和基于物理端口两个类别,基于主机又细分为基于源IP地址/VLAN
ID/物理端口和基于链路层源MAC地址/ VLAN ID
/物理端口,每种攻击识别都有限速水线例如(4PPS)和攻击告警水线(8PPS)。当ARP报文速率超过限速水线时,超限报文将被丢弃。当ARP报文速率超过告警水线时,将打印警告信息,发送TRAP,基于主机的攻击识别还可以对攻击源头采取硬件隔离措施。
ARP抗攻击还能检测出ARP扫描。ARP扫描是指链路层源MAC地址固定而源IP地址变化,或者链路层源MAC地址和源IP地址固定而目标IP地址不断变化。由于存在误判的可能,对检测出有ARP扫描嫌疑的主机不进行隔离,只是提供给管理员参考
IP-Guard:
当主机发出的报文目的地址为交换机直连网段不存在或未上线用户的IP地址时,交换机会发出ARP进行请求,如果存在这样的连续不断的攻击,会导致设备CPU高。IP-
Guard可以识别此类攻击,并进行限速。攻击识别分为基于主机和基于物理端口两个类别。基于主机是采用源IP地址/VLAN
ID/物理端口三者结合识别的。每种攻击识别都有限速水线和告警水线。当IP报文速率超过限速水线时,超限报文将被丢弃。当IP报文速率超过告警水线时,将打印警告信息,发送TRAP,基于主机的攻击识别还会对攻击源头采取隔离措施。
NFPP日志信息打印调整:
当NFPP检测到攻击后,在专用日志缓冲区生成一条日志。NFPP以一定速率从专用缓冲区取出日志,生成系统消息,并且从专用日志缓冲区清除这条日志。
Ⅱ NFPP配置案例
一、组网需求
核心设备下挂3000个用户,其中一个端口最大用户数为200个,接入交换机所携带的用户数不超过200,接入交换机的每个端口最大用户数6个,所有的接入设备都启用DHCP
Snooping+DAI功能防ARP欺骗。为了防止非法攻击,占用交换机的CPU资源,需要调整NFPP的相关参数实现防攻击
二、组网拓扑
三、配置要点
1、根据需求调整接入交换机NFPP功能参数,由于接入交换机开启了DAI功能,网关发送的ARP报文到接入交换机后都需要送CPU处理,为了防止正常的ARP等报文被NFPP丢弃,需要关闭上联口的NFPP相关功能,并放大接入交换机的CPP限速(默认限速180PPS在DAI场景中偏小)
2、根据核心的用户数量,调整核心交换机NFPP基于端口的限速/攻击检测参数
3、为了避免NFPP产生的LOG太多,通过命令调整LOG打印速率
四、配置步骤
接入交换机配置:
1、配置交换机的防ARP欺骗功能,具体也可以参见DHCP环境防ARP欺骗章节中DHCP Snooping+DAI方案。
Ruijie#configure terminal
Ruijie(config)#vlan 10
Ruijie(config-vlan)#exit
Ruijie(config)#ip arp inspection vlan 10
Ruijie(config)#ip dhcp snooping
Ruijie(config)#interface gigabitEthernet 0/25
Ruijie(config-if-GigabitEthernet 0/25)#switchport mode trunk
Ruijie(config-if-GigabitEthernet 0/25)#ip dhcp snooping trust
Ruijie(config-if-GigabitEthernet 0/25)#ip arp inspection trust
Ruijie(config-if-GigabitEthernet 0/25)#exit
Ruijie(config)#interface range fastEthernet 0/1-24
Ruijie(config-if-range)#switchport access vlan 10
Ruijie(config-if-range)#end
Ruijie#
2、NFPP功能配置:
1)全局NFPP配置
默认交换机的NFPP功能是开启的,二层交换机参数无需调整,只需将上联口NFPP关闭,同时由于开启了DAI的原因,需要调整放大CPP。
Ruijie(config)#cpu-protect type arp pps 500 ,如果没有使用DAI,CPP也无需调整。
全局下的NFPP调整参数如下
Ruijie(config-nfpp)#log-buffer entries 1024 ------>设置NFPP
log缓存的容量为1024条(默认256)
Ruijie(config-nfpp)#log-buffer logs 1 interval 300
------>为避免NFPP产生的LOG太多,调整每次打印一条相同log信息的阀值为300秒
Ruijie(config-nfpp)#exit
Ruijie(config)#
2)接口NFPP配置
为了防止大量网关发送的正常的相关报文(特别是网关发送的ARP请求或回应报文)被接入交换机误认为是攻击被丢弃,从而导致下联用户无法获取网关的ARP信息而无法上网,需要将上联口的NFPP功能关闭
Ruijie(config)#int g0/25
Ruijie(config-if-GigabitEthernet 0/25)#no nfpp arp-guard enable
------>关闭接口的ARP-guard功能,关闭该功能后,该接口进入的数据报文不进行NFPP检测
Ruijie(config-if-GigabitEthernet 0/25)#no nfpp dhcp-guard enable
------>关闭接口的dhcp-guard功能,关闭该功能后,该接口进入的数据报文不进行NFPP检测
Ruijie(config-if-GigabitEthernet 0/25)#no nfpp dhcpv6-guard enable
------>关闭接口的dhcpv6-guard功能,关闭该功能后,该接口进入的数据报文不进行NFPP检测
Ruijie(config-if-GigabitEthernet 0/25)#no nfpp icmp-guard enable
------>关闭接口的icmp-guard功能,关闭该功能后,该接口进入的数据报文不进行NFPP检测
Ruijie(config-if-GigabitEthernet 0/25)#no nfpp ip-guard enable
------>关闭接口的ip-guard功能,关闭该功能后,该接口进入的数据报文不进行NFPP检测
Ruijie(config-if-GigabitEthernet 0/25)#no nfpp nd-guard enable
------>关闭接口的nd-guard功能,关闭该功能后,该接口进入的数据报文不进行NFPP检测
Ruijie(config-if-GigabitEthernet 0/25)#exit
Ruijie(config)#
核心交换机NFPP配置:
只做下述调整即可:
Ruijie(config)#nfpp
Ruijie(config-nfpp)#arp-guard attack-threshold per-port 800
------>设置每个端口的攻击阀值为800个,超过此值丢弃并打印攻击日志
Ruijie(config-nfpp)#arp-guard rate-limit per-port 500
------>每个端口每秒限速500个arp报文,多余的ARP报文将被丢弃(默认限速阀值是100个偏小)
Ruijie(config-nfpp)#log-buffer entries 1024 ------>设置NFPP
log缓存的容量为1024条(默认256)
Ruijie(config-nfpp)#log-buffer logs 1 interval 300 ------>调整log打印频率为300S打印1次
Ruijie(config-nfpp)#exit
Ruijie(config)#
如果需要开启硬件隔离,为了防止误判,应放大限速及攻击检测的阈值。
注意:
隔离功能通常不建议开启,在汇聚设备上如果用户攻击非常频繁,导致设备CPU90%以上,此事可以考虑进行硬件隔离,并放大当前攻击的检测阈值,防止误判。因为一旦隔离将会导致这些攻击性质的用户无法上网,接入设备上不要开启NFPP硬件隔离。
Ruijie(config)#nfpp ------>进入NFPP配置模式
Ruijie(config-nfpp)#arp-guard isolate-period 600
------>超过ARP攻击阀值后,对用户进行隔离,设置隔离时间为600秒
Ruijie(config-nfpp)#arp-guard attack-threshold per-src-mac 30
------>设置每个mac的攻击阀值为10个,如果交换机检测每个mac发送的ARP报文大于10个,那么交换机会把该用户放入ARP攻击表,可以对这些用户进行硬件隔离(默认不进行硬件隔离,可以进行配置隔离时间进行隔离,设置隔离时间后会占用硬件表项资源。默认每MAC的攻击阀值是8个)
Ruijie(config-nfpp)#arp-guard attack-threshold per-src-ip 30
------>设置每个IP的攻击阀值为10个,如果交换机检测每个IP发送的ARP报文大于10个,那么交换机会把该用户放入ARP攻击表,可以对这些用户进行硬件隔离(默认不进行硬件隔离,可以进行配置隔离时间进行隔离,设置隔离时间后会占用硬件表项资源。默认每IP的攻击阀值是8个)
Ruijie(config-nfpp)#arp-guard rate-limit per-src-mac 20
------>每个mac每秒限速6个arp报文,多余的ARP报文将被丢弃(默认限速阀值是4个)
Ruijie(config-nfpp)#arp-guard rate-limit per-src-ip 20
------>每个IP每秒限速6个arp报文,多余的ARP报文将被丢弃(默认限速阀值是4个)
Ruijie(config-nfpp)#ip-guard attack-threshold per-src-ip 80
------>设置IP攻击阀值为40个每IP
Ruijie(config-nfpp)#ip-guard isolate-period 600
------>超过IP攻击阀值后,对用户进行隔离,设置隔离时间为600秒
五、功能验证
1、查看ARP-guard的全局配置情况(不同软件版本的阀值可能有所区别,具体以实际show出来的结果为准)
2、查看ARP-guard的扫描表:
3、查看ARP-guard被隔离的用户
4、查看放入日志缓冲区的用户
学习网络安全技术的方法无非三种:
第一种是报网络安全专业,现在叫网络空间安全专业,主要专业课程:程序设计、计算机组成原理原理、数据结构、操作系统原理、数据库系统、 计算机网络、人工智能、自然语言处理、社会计算、网络安全法律法规、网络安全、内容安全、数字取证、机器学习,多媒体技术,信息检索、舆情分析等。
第二种是自学,就是在网上找资源、找教程,或者是想办法认识一-些大佬,抱紧大腿,不过这种方法很耗时间,而且学习没有规划,可能很长一段时间感觉自己没有进步,容易劝退。
如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!
第三种就是去找培训。
接下来,我会教你零基础入门快速入门上手网络安全。
网络安全入门到底是先学编程还是先学计算机基础?这是一个争议比较大的问题,有的人会建议先学编程,而有的人会建议先学计算机基础,其实这都是要学的。而且这些对学习网络安全来说非常重要。但是对于完全零基础的人来说又或者急于转行的人来说,学习编程或者计算机基础对他们来说都有一定的难度,并且花费时间太长。
第一阶段:基础准备 4周~6周
这个阶段是所有准备进入安全行业必学的部分,俗话说:基础不劳,地动山摇
第二阶段:web渗透
学习基础 时间:1周 ~ 2周:
① 了解基本概念:(SQL注入、XSS、上传、CSRF、一句话木马、等)为之后的WEB渗透测试打下基础。
② 查看一些论坛的一些Web渗透,学一学案例的思路,每一个站点都不一样,所以思路是主要的。
③ 学会提问的艺术,如果遇到不懂得要善于提问。
配置渗透环境 时间:3周 ~ 4周:
① 了解渗透测试常用的工具,例如(AWVS、SQLMAP、NMAP、BURP、中国菜刀等)。
② 下载这些工具无后门版本并且安装到计算机上。
③ 了解这些工具的使用场景,懂得基本的使用,推荐在Google上查找。
渗透实战操作 时间:约6周:
① 在网上搜索渗透实战案例,深入了解SQL注入、文件上传、解析漏洞等在实战中的使用。
② 自己搭建漏洞环境测试,推荐DWVA,SQLi-labs,Upload-labs,bWAPP。
③ 懂得渗透测试的阶段,每一个阶段需要做那些动作:例如PTES渗透测试执行标准。
④ 深入研究手工SQL注入,寻找绕过waf的方法,制作自己的脚本。
⑤ 研究文件上传的原理,如何进行截断、双重后缀欺骗(IIS、PHP)、解析漏洞利用(IIS、Nignix、Apache)等,参照:上传攻击框架。
⑥ 了解XSS形成原理和种类,在DWVA中进行实践,使用一个含有XSS漏洞的cms,安装安全狗等进行测试。
⑦ 了解一句话木马,并尝试编写过狗一句话。
⑧ 研究在Windows和Linux下的提升权限,Google关键词:提权
以上就是入门阶段
第三阶段:进阶
已经入门并且找到工作之后又该怎么进阶?详情看下图
给新手小白的入门建议:
新手入门学习最好还是从视频入手进行学习,视频的浅显易懂相比起晦涩的文字而言更容易吸收,这里我给大家准备了一套网络安全从入门到精通的视频学习资料包免费领取哦!
如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!
![](https://img-blog.csdnimg.cn/img_convert/8e307aa2f2cda9350deaef025fb54270.jpeg)