配置ARP安全综合功能示例
组网图形
图1 配置ARP安全功能组网图
- ARP安全简介
- 配置注意事项
- 组网需求
- 配置思路
- 操作步骤
- 配置文件
ARP安全简介
ARP(Address Resolution
Protocol)安全是针对ARP攻击的一种安全特性,它通过一系列对ARP表项学习和ARP报文处理的限制、检查等措施来保证网络设备的安全性。ARP安全特性不仅能够防范针对ARP协议的攻击,还可以防范网段扫描攻击等基于ARP协议的攻击。
常见的ARP攻击如下:
-
用户主机直接接入网关,攻击者将伪造网关的ARP报文发送给用户主机,使用户主机误以为攻击者即为网关。用户主机的ARP表中会记录错误的网关地址映射关系,这样就会把发往网关的流量均发送给了攻击者,攻击者可轻易窃听到用户主机发送的数据内容。
-
网络中有用户向设备发送大量目的IP地址不能解析的IP报文(即路由表中存在该IP报文的目的IP对应的路由表项,但设备上没有该路由表项中下一跳对应的ARP表项),将导致设备触发大量的ARP Miss消息。这种触发ARP Miss消息的IP报文(即ARP Miss报文)会被上送到CPU进行处理,设备会根据ARP Miss消息生成和下发大量临时ARP表项并向目的网络发送大量ARP请求报文,这样就增加了设备CPU的负担,同时严重消耗目的网络的带宽资源。
-
设备收到大量ARP攻击报文,并需要对所有ARP攻击报文全部进行处理,可能导致CPU负荷过重而无法处理其他业务。
针对以上攻击,ARP安全提供如下措施保证网络设备的安全性:
-
针对第一种攻击,可配置ARP防网关冲突,防止攻击者冒充网关窃听用户主机信息。
-
针对第二种攻击,可配置ARP Miss消息限速,减小CPU的负担,保护目的网络的带宽资源。
-
针对第三种攻击,可配置ARP报文限速,以保护CPU资源。
配置注意事项
- 本举例适用所有框式交换机的产品和版本。
- 本举例适用的盒式交换机产品:
- S3700-HI
- S5710-EI、S5720-EI、S5700-HI、S5710-HI、S5720-HI、S5730-HI、S5731-H、S5731-H-K、S5731-S、S5731S-S、S5731S-H、S5732-H、S5732-H-K
- S6700-EI、S6720-EI、S6720S-EI、S6720-HI、S6730-H、S6730-H-K、S6730S-H、S6730-S、S6730S-S、S6735-S
- 本举例中产品的默认适用版本请参见“案例适用的产品和版本说明”中的表1。
如需了解交换机软件配套详细信息,请点击[Info-Finder](https://info.support.huawei.com/info-
finder/search-center/zh/enterprise/switch “Info-
Finder”),在选择产品系列或产品型号后,在“硬件中心”进行查询。
S5731-L和S5731S-L属于远端模块,不支持Web管理、YANG和命令行,仅支持通过中心交换机对其下发配置,相关操作请参见《S300, S500,
S2700, S5700, S6700 V200R022C00 配置指南-设备管理》中的“智能极简园区网络配置(小行星方案)”。
组网需求
Switch作为网关通过接口GE1/0/3连接一台服务器,通过接口GE1/0/1、GE1/0/2连接VLAN10和VLAN20下的四个用户。网络中可能存在以下ARP威胁:
- 攻击者向Switch发送伪造的网关的ARP报文,使用户误以为攻击者即为网关。这样用户就会把发往网关的流量均发送给了攻击者,攻击者可轻易窃听到用户发送的数据内容。
- 攻击者发出大量目的IP地址不可达的IP报文进行ARP泛洪攻击,造成Switch的CPU负荷过重。
- 用户User1构造大量源IP地址变化MAC地址固定的ARP报文进行ARP泛洪攻击,造成Switch的CPU进程繁忙,影响到正常业务的处理。
- 用户User3构造大量源IP地址固定的ARP报文进行ARP泛洪攻击,造成Switch的CPU进程繁忙,影响到正常业务的处理。
管理员希望能够防止上述ARP攻击行为,为用户提供更安全的网络环境和更稳定的网络服务。
配置思路
采用如下思路在Switch上进行配置:
- 配置ARP防网关冲突,防止攻击者冒充网关窃听用户主机信息。
- 配置根据源IP地址进行ARP Miss消息限速,实现防止用户侧存在攻击者发出大量目的IP地址不可达的IP报文触发大量ARP Miss消息,形成ARP泛洪攻击。同时需要保证Switch可以正常处理服务器发出的大量此类报文,避免因丢弃服务器发出的大量此类报文而造成网络无法正常通信。
- 配置根据源MAC地址进行ARP限速,实现防止User1发送的大量源IP地址变化MAC地址固定的ARP报文形成的ARP泛洪攻击,避免Switch的CPU进程繁忙。
- 配置根据源IP地址进行ARP限速,实现防止User3发送的大量源IP地址固定的ARP报文形成的ARP泛洪攻击,避免Switch的CPU进程繁忙。
操作步骤
- 创建VLAN,将接口加入到VLAN中,并配置VLANIF接口
创建VLAN10、VLAN20和VLAN30,并将接口GE1/0/1加入VLAN10中,接口GE1/0/2加入VLAN20中,接口GE1/0/3加入VLAN30中。
<HUAWEI> system-view
[HUAWEI] sysname Switch
[Switch] vlan batch 10 20 30
[Switch] interface gigabitethernet 1/0/1
[Switch-GigabitEthernet1/0/1] port link-type trunk
[Switch-GigabitEthernet1/0/1] port trunk allow-pass vlan 10
[Switch-GigabitEthernet1/0/1] quit
[Switch] interface gigabitethernet 1/0/2
[Switch-GigabitEthernet1/0/2] port link-type trunk
[Switch-GigabitEthernet1/0/2] port trunk allow-pass vlan 20
[Switch-GigabitEthernet1/0/2] quit
[Switch] interface gigabitethernet 1/0/3
[Switch-GigabitEthernet1/0/3] port link-type trunk
[Switch-GigabitEthernet1/0/3] port trunk allow-pass vlan 30
[Switch-GigabitEthernet1/0/3] quit
# 创建接口VLANIF10、VLANIF20、VLANIF30,配置各VLANIF接口的IP地址。
[Switch] interface vlanif 10
[Switch-Vlanif10] ip address 10.8.8.4 24
[Switch-Vlanif10] quit
[Switch] interface vlanif 20
[Switch-Vlanif20] ip address 10.9.9.4 24
[Switch-Vlanif20] quit
[Switch] interface vlanif 30
[Switch-Vlanif30] ip address 10.10.10.3 24
[Switch-Vlanif30] quit
-
配置ARP防网关冲突
[Switch] arp anti-attack gateway-duplicate enable //配置ARP防网关冲突
-
配置根据源IP地址进行ARP Miss消息限速
配置对Server(IP地址为10.10.10.2)的ARP Miss消息进行限速,允许Switch每秒最多处理该IP地址触发的40个ARP
Miss消息;对于其他用户,允许Switch每秒最多处理同一个源IP地址触发的20个ARP Miss消息。
[Switch] arp-miss speed-limit source-ip maximum 20 //配置根据源IP地址进行ARP Miss消息限速
[Switch] arp-miss speed-limit source-ip 10.10.10.2 maximum 40 //配置根据源IP地址进行ARP Miss消息限速
[Switch] arp speed-limit source-mac 0001-0001-0001 maximum 10 //配置根据源MAC地址进行ARP限速
- 配置根据源IP地址进行ARP限速
配置对用户User3(IP地址为10.9.9.2)进行ARP报文限速,每秒最多只允许10个该IP地址的ARP报文通过。
[Switch] **arp speed-limit source-ip 10.9.9.2 maximum 10** //配置根据源IP地址进行ARP限速
[Switch] display arp anti-attack configuration all
......
ARP anti-attack entry-check mode:
Vlanif Mode
-------------------------------------------------------------------------------
All disabled
-------------------------------------------------------------------------------
ARP rate-limit configuration:
-------------------------------------------------------------------------------
Global configuration:
Interface configuration:
Vlan configuration:
-------------------------------------------------------------------------------
ARP miss rate-limit configuration:
-------------------------------------------------------------------------------
Global configuration:
Interface configuration:
Vlan configuration:
-------------------------------------------------------------------------------
ARP speed-limit for source-MAC configuration:
MAC-address suppress-rate(pps)(rate=0 means function disabled)
-------------------------------------------------------------------------------
0001-0001-0001 10
Others 0
-------------------------------------------------------------------------------
The number of configured specified MAC address(es) is 1, spec is 1024.
ARP speed-limit for source-IP configuration:
IP-address suppress-rate(pps)(rate=0 means function disabled)
-------------------------------------------------------------------------------
10.9.9.2 10
Others 30
-------------------------------------------------------------------------------
The number of configured specified IP address(es) is 1, spec is 1024.
ARP miss speed-limit for source-IP configuration:
IP-address suppress-rate(pps)(rate=0 means function disabled)
-------------------------------------------------------------------------------
10.10.10.2/32 40
Others 20
-------------------------------------------------------------------------------
The number of configured specified IP address(es) is 1, spec is 1024.
# 执行命令display arp packet statistics,查看ARP处理的报文统计数据。
[Switch] display arp packet statistics
ARP Pkt Received: sum 8678904
ARP-Miss Msg Received: sum 183
ARP Learnt Count: sum 37
ARP Pkt Discard For Limit: sum 146
ARP Pkt Discard For SpeedLimit: sum 40529
ARP Pkt Discard For Proxy Suppress: sum 0
ARP Pkt Discard For Other: sum 8367601
ARP-Miss Msg Discard For SpeedLimit: sum 20
ARP-Miss Msg Discard For Other: sum 104
由显示信息可知,Switch上产生了ARP报文和ARP Miss消息丢弃计数,表明ARP安全功能已经生效。
配置文件
# Switch的配置文件
#
sysname Switch
#
vlan batch 10 20 30
#
arp-miss speed-limit source-ip 10.10.10.2 maximum 40
arp speed-limit source-ip 10.9.9.2 maximum 10
arp speed-limit source-mac 0001-0001-0001 maximum 10
arp anti-attack gateway-duplicate enable
#
arp-miss speed-limit source-ip maximum 20
#
interface Vlanif10
ip address 10.8.8.4 255.255.255.0
#
interface Vlanif20
ip address 10.9.9.4 255.255.255.0
#
interface Vlanif30
ip address 10.10.10.3 255.255.255.0
#
interface GigabitEthernet1/0/1
port link-type trunk
port trunk allow-pass vlan 10
#
interface GigabitEthernet1/0/2
port link-type trunk
port trunk allow-pass vlan 20
#
interface GigabitEthernet1/0/3
port link-type trunk
port trunk allow-pass vlan 30
#
return
学习计划
那么问题又来了,作为萌新小白,我应该先学什么,再学什么?
既然你都问的这么直白了,我就告诉你,零基础应该从什么开始学起:
阶段一:初级网络安全工程师
接下来我将给大家安排一个为期1个月的网络安全初级计划,当你学完后,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web渗透、安全服务、安全分析等岗位;其中,如果你等保模块学的好,还可以从事等保工程师。
综合薪资区间6k~15k
1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)
2、渗透测试基础(1周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等
3、操作系统基础(1周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)
4、计算机网络基础(1周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现
5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固
6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)
那么,到此为止,已经耗时1个月左右。你已经成功成为了一名“脚本小子”。那么你还想接着往下探索吗?
阶段二:中级or高级网络安全工程师(看自己能力)
综合薪资区间15k~30k
7、脚本编程学习(4周)
在网络安全领域。是否具备编程能力是“脚本小子”和真正网络安全工程师的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力。
零基础入门的同学,我建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习
搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime;
Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,没必要看完
用Python编写漏洞的exp,然后写一个简单的网络爬虫
PHP基本语法学习并书写一个简单的博客系统
熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选)
了解Bootstrap的布局或者CSS。
阶段三:顶级网络安全工程师
如果你对网络安全入门感兴趣,那么你点击这里👉CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
学习资料分享
当然,只给予计划不给予学习资料的行为无异于耍流氓,这里给大家整理了一份完整版的网络安全(嘿客)全套学习资料已经上传至CSDN官方,朋友们如果需要点击下方链接也可扫描下方微信二v码获取网络工程师全套资料【保证100%免费】