Security Considerations (セキュリティに関する考慮事項)
Security Considerations (セキュリティに関する考慮事項)
BGP実装は、RFC 2385 [RFC2385]で指定された認証メカニズムをサポートしなければなりません (MUST)。このメカニズムによって提供される認証は、ピアごとに実行できます。
BGPは、ピアルーター間のトラフィックの信頼性のある転送にTCPを使用します。ポイントツーポイントベースで接続指向の完全性とデータ発信元認証を提供するために、BGPはRFC 2385で定義されたメカニズムの使用を指定します。これらのサービスは、ルーター間TCP接続に対するアクティブな盗聴攻撃を検出して拒否することを目的としています。これらのセキュリティサービスを実現するメカニズムを使用しない場合、攻撃者はこれらのTCP接続を混乱させたり、正当なピアルーターになりすましたりする可能性があります。RFCで定義されたメカニズムはピアエンティティ認証を提供しないため、これらの接続はTCPレイヤーで検出されない一部の形式のリプレイ攻撃の対象となる可能性があります。このような攻撃により、「破損した」または「偽装された」BGPメッセージが(TCPから)配信される可能性があります。
RFC 2385で定義されたメカニズムは、通常のTCPチェックサムに、TCPチェックサムと同じデータに対して計算される16バイトのメッセージ認証コード(MAC)を追加します。このMACは、一方向ハッシュ関数(MD5)と秘密鍵の使用に基づいています。鍵はピアルーター間で共有され、鍵にアクセスできない攻撃者が容易に計算できないMAC値を生成するために使用されます。準拠した実装はこのメカニズムをサポートしなければならず (MUST)、ネットワーク管理者がピアごとにそれをアクティブ化できるようにしなければなりません (MUST)。
RFC 2385は、MACの計算に使用される鍵を管理する(例えば、生成、配布、および置換する)手段を指定していません。RFC 3562 [RFC3562](情報文書)はこの領域でいくつかのガイダンスを提供し、このガイダンスをサポートする理論的根拠を提供します。保護された各ピアとの通信には異なる鍵を使用する必要があることに注意してください。複数のピアに同じ鍵が使用される場合、提供されるセキュリティサービスが低下する可能性があります。例えば、1つのルーターでの侵害のリスクが増加し、他のルーターに悪影響を及ぼす可能性があります。
MAC計算に使用される鍵は定期的に変更する必要があり、鍵の侵害または暗号解析攻撃の成功の影響を最小限に抑える必要があります。RFC 3562は、最大90日の暗号期間(鍵が使用される間隔)を提案しています。より頻繁な鍵の変更により、リプレイ攻撃(上記のように)が実行可能である可能性が減少します。ただし、ピア間で協調的な方法でそのような変更を実行するための標準メカニズムがない場合、このRFCに準拠するBGP-4実装が頻繁な鍵の変更をサポートすることは想定できません。
明らかに、各鍵も攻撃者が推測するのが困難になるように選択する必要があります。乱数生成に関してRFC 1750で指定された技術は、鍵として使用できる値を生成するためのガイドを提供します。RFC 2385は、実装が「80バイト以下の印刷可能なASCIIの文字列で構成される」鍵をサポートすることを求めています。RFC 3562は、このコンテキストで使用される鍵は12〜24バイトのランダム(疑似ランダム)ビットであることを提案しています。これは、通常16〜20バイトの範囲の鍵を使用する類似のMACアルゴリズムの提案とかなり一致しています。この範囲の下限で十分なランダムビットを提供するために、RFC 3562は、典型的なASCIIテキスト文字列はRFC 2385で指定された鍵の長さの上限に近い必要があることも観察しています。
BGPの脆弱性分析は[RFC4272]で議論されています。