当设备遭受攻击时,通常伴随着如下现象: - 用户无法获取ARP;
- 设备CPU占用率高;
- 用户上线成功率较低;
- 用户无法访问网络;
- 严重时可能导致设备上所有用户都无法正常访问网络。
当大量用户或固定某个端口下的所有用户出现上述现象时,可以先通过如下定位手段分析是否为攻击问题。
步骤1
在任意视图下执行命令display cpu-usage查看设备CPU占用率的统计信息,CPU Usage表示的是CPU占用率,TaskName表示的是设备当前正在运行的任务名称。
- <HUAWEI> display cpu-usage
- CPU Usage Stat. Cycle: 60 (Second)
- CPU Usage : 78% Max: 94%
- CPU Usage Stat. Time : 2017-06-19 15:18:54
- CPU utilization for five seconds: 11%: one minute: 11%: five minutes: 11%
- Max CPU Usage Stat. Time : 2017-06-06 14:57:05.
- TaskName CPU Runtime(CPU Tick High/Tick Low) Task Explanation
- VIDL 22% e/eb7733fe DOPRA IDLE
- OS 8% 1/57529fff Operation System
- bcmRX 20% 0/ 17a14c bcmRX
- FTS 20% 0/ ff707 FTS
- SOCK 20% 0/ 26ac89 SOCKPacket sched
- ule and process
- VPR 0% 0/ 16e3600 VPR VP Receive
- ……
复制代码如果CPU占用率持续较高,并且bcmRX、FTS、SOCK或者VPR任务的CPU占用率高于其他任务(bcmRX、FTS、SOCK、VPR指的是报文接收和发送类任务,通常协议报文攻击会导致这些任务的CPU占用率过高),则较大可能是收到的报文过多,接下来需要执行步骤2继续判断设备收到的报文类型。 一般情况下,交换机长时间运行时CPU占用率不超过80%,短时间内CPU占用率不超过95%,可认为交换机状态是正常的。
步骤2首先在用户视图下执行命令reset cpu-defend statistics all清除上送CPU的报文统计计数,然后在任意视图下执行命令display cpu-defend statistics all查看Drop(Packet/Byte)字段,判断是否存在过多CPU来不及处理而丢弃的协议报文。 该命令可以查看多次,比如1秒执行一次,查看多次执行的结果。如果Drop(Packet/Byte)字段的计数增加很快(比如间隔1秒钟丢弃上百个),接下来需要查看现网设备是否放大了相关协议的CPCAR值。 执行命令display cpu-defend policy policy-name查看防攻击策略列表信息(此处以arp-miss协议报文为例),下述回显中的Car packet-type arp-miss : CIR(256) CBS(48128)说明arp-miss协议的CPCAR值放大到了256。 - <HUAWEI> display cpu-defend policy test
- Related slot : <0,mcu>
- Configuration :
- Car packet-type arp-miss : CIR(256) CBS(48128)
复制代码如果回显如下所示,说明没有放大协议报文的CPCAR值。 - <HUAWEI> display cpu-defend policy test
- Related slot : <0>
- Configuration :
复制代码如果现网设备放大了CPCAR值,请评估现网业务是否需要放大CPCAR值,如果确实需要放大,请考虑进行扩容或者更换设备。如果不需要放大CPCAR值,请根据业务需求调小CPCAR值。调整CPCAR不当将会影响网络业务,如果需要调整CPCAR,建议联系技术支持人员处理。 如果没有调整CPCAR值,就基本可以确定现网存在攻击。根据丢包的协议,采用相关防攻击措施。 - <HUAWEI> display cpu-defend statistics all
- Statistics on mainboard:
- --------------------------------------------------------------------------------
- Packet Type Pass(Packet/Byte) Drop(Packet/Byte) Last-dropping-time
- --------------------------------------------------------------------------------
- arp-mff 0 0 -
- 0 0
- arp-miss 0 0 -
- 0 0
- arp-reply 0 0 -
- 0 0
- arp-request 8423 1284 2017-05-10 14:23:10
- ......
复制代码V200R003版本以及之后版本支持端口防攻击功能,缺省情况下,端口防攻击功能是默认使能的,端口防攻击支持防范的报文类型为ARP Request、ARP Reply、DHCP、ICMP、IGMP和IP分片报文。 支持端口防攻击功能后,如果端口上发生了攻击,通过display cpu-defend statistics all命令中是查看不到arp-reply、arp-request、dhcp、icmp、igmp有Drop计数的,所以对于V200R003版本以及之后版本,还需要继续执行步骤3进一步确认丢包协议。
步骤3首先在诊断视图下执行命令reset auto-port-defend statistics清除端口防攻击报文统计信息,然后在诊断视图中执行命令display auto-port-defend statistics [ slot slot-id ] 查看Drop(Packet/Byte)字段的增长情况。 该命令可以查看多次,比如1秒执行一次,查看多次执行的结果。如果Drop(Packet/Byte)字段的计数增加很快(比如间隔1秒钟丢弃上百个),基本可以确定现网受到攻击。 - [HUAWEI-diagnose] display auto-port-defend statistics
- Statistics on MPU:
- --------------------------------------------------------------------------------
- Protocol Vlan Queue Cir(Kbps) Pass(Packet/Byte) Drop(Packet/Byte)
- --------------------------------------------------------------------------------
- arp-request NA 2 256 0 0
- NA NA
- arp-reply NA 2 256 0 0
- NA NA
- dhcp NA 2 1024 0 0
- NA NA
- igmp NA 2 768 0 0
- NA NA
- icmp NA 2 256 23095 3
- NA NA
- --------------------------------------------------------------------------------
复制代码对于历史上曾经触发过端口防攻击也可以通过日志来确定。日志格式如下,其中AttackProtocol表示的是攻击报文的协议类型。 - 对于历史上曾经触发过端口防攻击也可以通过日志来确定。日志格式如下,其中AttackProtocol表示的是攻击报文的协议类型。
复制代码
|