この記事では、Huawei NEシリーズルーターのコントロールプレーンの保護面について説明します。 ソフトウェアを使用したNE40eの例:VRP V800R008。 他のタイプのルーター(NE5kなど)では、ソフトウェアバージョンが異なるため、構成が若干異なる場合があります。
この問題のより詳細な調査については、RFC 6192(ルーターコントロールプレーンの保護)にさらに精通することをお勧めします。
VRPには、ルーターのコントロールプレーンを自動的に診断して保護する方法がいくつかあります。 ただし、ドキュメントの不足と不透明性を考えると、従来の保護方法、つまり必要なプロトコルとサービスのホワイトリストを作成し、残りのトラフィックを閉じることを引き続きお勧めします。
主なポリシーセクションは次のとおりです。
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
process-sequenceは、ポリシーのシーケンスを決定します。ホワイトリスト(この例ではオフになっています)、ユーザー定義フロー、ブラックリスト(IPv4の場合はルール3900、IPv6の場合は3950)。
許可されたプロトコルを自分で決定することを考慮すると、残りのトラフィックはブラックリストによってフィルタリングされます 。 アプリケーションの分析を行う必要はありません。
URPf (ユニキャストリバースパスフォワーディング)メカニズムは、保守的な緩やかなレベルでオンになります。
IPv4およびIPv6のブラックリストは次のとおりです。
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
ポリシーは各スロットに適用する必要があります。
slot 1 cpu-defend-policy 1 # slot 2 cpu-defend-policy 1 …
デフォルトでは、次の保護メカニズムが有効になっています。
udp-packet-defend enable fragment-flood enable abnormal-packet-defend enable tcpsyn-flood enable attack-source-trace enable
ma-defendセクションの未使用のプロトコルとサービスをすべて閉じることをお勧めします。 このオプションは、グローバルとスロットの両方で有効にできます。 例:
system-view ma-defend global-policy protocol OSPF deny protocol RIP deny
または
system-view ma-defend slot-policy 1 protocol … deny
次に、 ユーザー定義のポリシーについて説明します 。 一般的なルールを下の表にまとめています。 例として、速度/優先度の値が示されており、「究極の真実」であると主張するものではありません。 ユーザー定義ポリシーの要素の最大数は64です。
トラフィックの種類 | スピード | 優先順位 | ルール番号 |
---|---|---|---|
BGP | 1 Mb / s | 高い | 3901 |
LDP | 1 Mb / s | 高い | 3902 |
IS-IS | N \ a | N \ a | N \ a |
VRRP | 1 Mb / s | 高い | 3904 |
Bfd | 1 Mb / s | 高い | 3905 |
Mcast | 1 Mb / s | 高い | 3906 |
Ssh | 512 Kb / s | ミドル | 3907 |
FTP | 5 Mb / s | 低い | 3908 |
DNS | 512 Kb / s | 低い | 3909 |
SNMP | 1 Mb / s | ミドル | 3910 |
TACACS + | 1 Mb / s | 低い | 3911 |
NTP | 512 Kb / s | 低い | 3912 |
ICMP、トレース、lsp-ping | 512 Kb / s | 低い | 3913 |
次に、それぞれのプロトコル/サービスのACLフィルターを検討します。
3901. BGPプロトコル。
BGPをフィルタリングするためのルールは、単純化された形式のいずれかになります。
acl number 3901 rule permit tcp destination-port eq bgp rule permit tcp source-port eq bgp
または、各ごちそうごとに:
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. 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.すべての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。 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. IPv6のBGP
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
シートを使用するには、次のようにそれらをcpu-defendポリシーにバインドする必要があります。
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
ごみ箱にアラートを設定するには、次の機能を使用できます。
cpu-defend policy 1 ... alarm drop-rate user-defined-flow 7 threshold 100 interval 60
ここで、しきい値はパケットで設定され、間隔は秒で設定されます。
CoPPフィルターの動作に関する統計は、 ディスプレイのCPU防御セクションにあります...
設定が完了したら、さらにルーターをスキャンする価値があります。
結論として、Huaweiは(現代のベンダーと同様に)ルーターのコントロールプレーンを保護するために必要なすべての方法を提供していることに注意してください。 また、発見された脆弱性について定期的に表示されるメッセージは、これらのツールを無視すべきではないことを示しています。