Este artículo aborda los aspectos de protección del plano de control de los enrutadores Huawei NE Series. Se dan ejemplos para NE40e, con software: VRP V800R008. En otros tipos de enrutadores (por ejemplo, NE5k) y con una versión diferente del software, la configuración puede ser ligeramente diferente.
Para un estudio más detallado de este problema, también puedo familiarizarme con RFC 6192 (Protección del plano de control del enrutador).
En VRP, hay varias formas de diagnosticar y proteger automáticamente el plano de control de los enrutadores. Sin embargo, dada la escasez y la opacidad de la documentación, le recomiendo que aún se adhiera al método tradicional de protección: crear listas blancas para los protocolos y servicios necesarios y cerrar el resto del tráfico.
La sección principal de la política es la siguiente:
cpu-defend policy 1 process-sequence whitelist user-defined-flow blacklist cp-acl ip-pool enable whitelist disable blacklist acl 3900 blacklist ipv6 acl 3950 application-apperceive disable ip urpf loose
La secuencia de proceso determina la secuencia de la política: lista blanca (que está desactivada en nuestro caso), flujo definido por el usuario, lista negra (regla 3900 para IPv4 y 3950 para IPv6).
Teniendo en cuenta que determinaremos los protocolos permitidos nosotros mismos, el resto del tráfico se filtrará mediante una lista negra ; no es necesario realizar un análisis de aplicación .
El mecanismo URPf (Unicast Reverse Path Forwarding) se activa a un nivel conservador suelto.
Las listas negras para IPv4 e IPv6 son las siguientes:
acl number 3900 description --- ACL For IPv4 Discard --- rule 5 deny tcp rule 10 deny udp rule 15 deny ip # acl ipv6 number 3950 description --- ACL For IPv6 Discard --- rule 5 deny tcp rule 10 deny udp rule 15 deny ipv6
La política debe aplicarse en cada ranura:
slot 1 cpu-defend-policy 1 # slot 2 cpu-defend-policy 1 …
Por defecto, los siguientes mecanismos de protección están habilitados:
udp-packet-defend enable fragment-flood enable abnormal-packet-defend enable tcpsyn-flood enable attack-source-trace enable
Se recomienda que cierre todos los protocolos y servicios no utilizados en la sección ma-defend . Esta opción se puede habilitar tanto globalmente como por ranuras. Por ejemplo:
system-view ma-defend global-policy protocol OSPF deny protocol RIP deny
o
system-view ma-defend slot-policy 1 protocol … deny
A continuación se describe una política definida por el usuario . Las reglas generales se resumen en la tabla a continuación. Los valores de velocidad / prioridad se indican, por ejemplo, y no pretenden ser "la verdad última". El número máximo de elementos en una política definida por el usuario es 64.
Tipo de tráfico | Velocidad | Prioridad | Número de regla |
---|
BGP | 1 Mb / s | Alta | 3901 |
Ldp | 1 Mb / s | Alta | 3902 |
IS-IS | N \ a | N \ a | N \ a |
VRRP | 1 Mb / s | Alta | 3904 |
Bfd | 1 Mb / s | Alta | 3905 |
Mcast | 1 Mb / s | Alta | 3906 |
Ssh | 512 Kb / s | Medio | 3907 |
FTP | 5 Mb / s | Bajo | 3908 |
DNS | 512 Kb / s | Bajo | 3909 |
SNMP | 1 Mb / s | Medio | 3910 |
TACACS + | 1 Mb / s | Bajo | 3911 |
NTP | 512 Kb / s | Bajo | 3912 |
ICMP, trace, lsp-ping | 512 Kb / s | Bajo | 3913 |
Luego, considere los filtros ACL para los respectivos protocolos / servicios.
3901. El protocolo BGP.
La regla para filtrar BGP puede verse de forma simplificada:
acl number 3901 rule permit tcp destination-port eq bgp rule permit tcp source-port eq bgp
o, para cada fiesta por separado:
acl ip-pool BGP-Peers ip address 10.1.1.1 0.0.0.0 acl number 3901 rule permit tcp source-pool BGP-Peers 0 destination-port eq bgp rule permit tcp source-pool BGP-Peers 0 source-port eq bgp
3902. El protocolo LDP.
rule 5 permit tcp source-pool Lo0_P2P destination-port eq 646 rule 10 permit tcp source-pool Lo0_P2P source-port eq 646 rule 15 permit udp source-pool Lo0_P2P destination-port eq 646 rule 20 permit udp source-pool Lo0_P2P source-port eq 646
3904. VRRP
acl ip-pool VRRP_Peers ip address 10.1.1.1 0.0.0.0 acl number 3904 rule permit 112 source-pool VRRP_Peers
3905. BFD
acl number 3343 rule permit udp source-pool Lo0_P2P destination-port eq 3784 rule permit udp source-pool Lo0_P2P source-port eq 3784
3906. Todos los MCAST (IGMP, PIM, MSDP)
acl number 3906 rule permit 103 rule permit igmp rule permit udp destination-port eq 639 rule permit udp source-port eq 639 rule permit tcp destination-port eq 639 rule permit tcp source-port eq 639
3907. SSH
acl number 3907 description ### SSH access ### rule 5 permit tcp source-pool MGMT source-port eq 22 rule 10 permit tcp source-pool MGMT destination-port eq 22 rule 15 permit tcp source-pool MGMT destination-port eq 830
3908. FTP. Datos FTP
acl port-pool ftp eq 20 eq 21 acl number 3908 rule 10 permit tcp source-pool MGMT source-port-pool ftp rule 15 permit tcp source-pool MGMT destination-port-pool ftp
3909. DNS
acl ip-pool DNS ip address 1.1.1.1 0.0.0.0 ip address 8.8.8.8 0.0.0.0 acl number 3909 rule 5 permit udp source-pool DNS source-port eq dns
3910. SNMP
acl number 3909 rule 5 permit udp source-pool SNMP source-port eq snmp rule 10 permit udp source-pool SNMP destination-port eq snmp
3911. TACACS +
acl number 3911 rule 5 permit tcp source-pool TACACS source-port eq tacacs rule 10 permit udp source-pool TACACS source-port eq tacacs-ds
3912. NTP
acl number 3911 rule 5 permit udp source-pool NTP source-port eq ntp rule 10 permit udp source-pool NTP destination-port eq ntp
3913. ICMP
acl number 3342 rule permit icmp icmp-type echo rule permit icmp icmp-type echo-reply rule permit icmp icmp-type ttl-exceeded rule permit icmp icmp-type port-unreachable rule permit icmp icmp-type Fragmentneed-DFset rule permit icmp rule permit udp destination-port range 33434 33678 rule permit udp destination-port eq 3503
3951. BGP para IPv6
acl ipv6 number 3951 rule 5 permit tcp destination-port eq bgp
3952. ICMPv6
acl ipv6 number 3952 rule 30 permit icmpv6 rule 35 permit udp destination-port range 33434 33678
Para usar hojas, debe vincularlas a la política de defensa de la CPU de la siguiente manera:
cpu-defend policy 1 ... user-defined-flow 1 acl 3901 user-defined-flow 2 acl 3902 user-defined-flow 4 acl 3904 user-defined-flow 5 acl 3905 user-defined-flow 6 acl 3906 user-defined-flow 7 acl 3907 user-defined-flow 8 acl 3908 user-defined-flow 9 acl 3909 user-defined-flow 10 acl 3910 user-defined-flow 11 acl 3911 user-defined-flow 12 acl 3912 user-defined-flow 13 acl 3913 user-defined-flow 51 ipv6 acl 3951 user-defined-flow 52 ipv6 acl 3952 car blacklist cir 0 cbs 0 car user-defined-flow 1 cir 1000 car user-defined-flow 2 cir 1000 car user-defined-flow 4 cir 1000 car user-defined-flow 5 cir 1000 car user-defined-flow 6 cir 1000 car user-defined-flow 7 cir 512 car user-defined-flow 8 cir 5000 car user-defined-flow 9 cir 512 car user-defined-flow 10 cir 1000 car user-defined-flow 11 cir 1000 car user-defined-flow 12 cir 512 car user-defined-flow 13 cir 512 car user-defined-flow 51 cir 10000 car user-defined-flow 52 cir 512 priority user-defined-flow 1 high priority user-defined-flow 2 high priority user-defined-flow 4 high priority user-defined-flow 5 high priority user-defined-flow 6 high priority user-defined-flow 7 middle priority user-defined-flow 8 low priority user-defined-flow 9 low priority user-defined-flow 10 middle priority user-defined-flow 11 low priority user-defined-flow 12 low priority user-defined-flow 13 low priority user-defined-flow 51 high priority user-defined-flow 52 low
Para configurar alertas en basureros, puede usar la siguiente función:
cpu-defend policy 1 ... alarm drop-rate user-defined-flow 7 threshold 100 interval 60
aquí el valor de umbral se establece en paquetes y el intervalo en segundos.
Las estadísticas sobre el funcionamiento de los filtros CoPP se pueden encontrar en la sección de visualización cpu-defend ...
Después de completar la configuración, también vale la pena escanear el enrutador.
En conclusión, quiero señalar que Huawei (como cualquier proveedor moderno) ofrece todos los métodos necesarios para proteger el plano de control de sus enrutadores. Y los mensajes que aparecen periódicamente sobre vulnerabilidades encontradas muestran que estas herramientas no deben descuidarse.