Security Considerations (セキュリティに関する考慮事項)
Security Considerations (セキュリティに関する考慮事項)
BGP実装は、RFC 2385 [RFC2385]で指定された認証メカニズムをサポートしなければなりません (MUST)。このメカニズムによって提供される認証は、ピアごとに行うことができます。
BGPは、ピアルーター間のトラフィックの信頼性の高い転送にTCPを使用します。ポイントツーポイントベースで接続指向の完全性とデータ送信元認証を提供するために、BGPはRFC 2385で定義されたメカニズムの使用を指定しています。これらのサービスは、ルーター間TCP接続に対する積極的な盗聴攻撃を検出して拒否することを目的としています。これらのセキュリティサービスを実現するメカニズムを使用しない場合、攻撃者はこれらのTCP接続を中断したり、正当なピアルーターになりすましたりすることができます。RFCで定義されたメカニズムはピアエンティティ認証を提供しないため、これらの接続はTCP層で検出されない何らかの形式のリプレイ攻撃を受ける可能性があります。このような攻撃により、(TCPからの)「壊れた」または「偽装された」BGPメッセージの配信が発生する可能性があります。
RFC 2385で定義されたメカニズムは、TCPチェックサムと同じデータに対して計算される16バイトのメッセージ認証コード (MAC) で通常のTCPチェックサムを補強します。このMACは一方向ハッシュ関数 (MD5) と秘密鍵の使用に基づいています。鍵はピアルーター間で共有され、鍵にアクセスできない攻撃者が容易に計算できないMAC値を生成するために使用されます。準拠した実装はこのメカニズムをサポートしなければならず、ネットワーク管理者がピアごとにこれを有効化できるようにしなければなりません。
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]で議論されています。