Huawei:コントロールプレーンの保護

この記事では、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は(現代のベンダーと同様に)ルーターのコントロールプレーンを保護するために必要なすべての方法を提供していることに注意してください。 また、発見された脆弱性について定期的に表示されるメッセージは、これらのツールを無視すべきではないことを示しています。








All Articles