インターネット大手のCloudflareによると、同社のDNSリゾルバサービスである1.1.1.1が最近、BGP(Border Gateway Protocol)ハイジャックとルートリークの組み合わせにより、一部の顧客で到達不能または劣化していた。
この事件は先週発生し、70カ国の300のネットワークに影響を与えた。この数字にもかかわらず、同社によると、影響は「かなり小さい」もので、一部の国ではユーザーがそれに気づかなかったという。
インシデントの詳細
Cloudflareによると、6月27日18:51 UTCにEletronet S.A.(AS267613)が1.1.1.1/32のIPアドレスをピアとアップストリームプロバイダにアナウンスし始めた。
この不正なアナウンスは、ティア1プロバイダーを含む複数のネットワークで受け入れられ、ティア1プロバイダーはこれをリモートトリガーブラックホール(RTBH)ルートとして扱いました。
ハイジャックは、BGPルーティングが最も特定のルートを優先するために発生しました。AS267613がアナウンスした1.1.1.1/32はCloudflareがアナウンスした1.1.1.0/24よりも具体的であったため、ネットワークはトラフィックをAS267613に誤ってルーティングしてしまいました。
その結果、Cloudflareの1.1.1.1 DNSリゾルバを意図したトラフィックがブラックホール/リジェクトされ、一部のユーザーがサービスを利用できなくなった。
その1分後の18:52 UTCに、Nova Rede de Telecomunicações Ltda (AS262504)が誤って1.1.1.0/24をAS1031にアップストリームでリークし、AS1031はそれをさらに伝播させ、グローバルルーティングに影響を与えました。
このリークにより、通常のBGPルーティング経路が変更され、1.1.1.1宛てのトラフィックが誤ってルーティングされ、ハイジャック問題が複雑化し、さらに到達可能性と遅延の問題が発生しました。
Cloudflareは20:00 UTC頃に問題を特定し、およそ2時間後にハイジャックを解決しました。ルートリークは02:28 UTCに解決されました。
修復作業
Cloudflareの第一の対応策は、インシデントに関与したネットワークとの連携を図るとともに、問題のあるすべてのネットワークとのピアリングセッションを無効化することで、影響を緩和し、不正な経路のさらなる伝播を防止することでした。
同社は、RPKI(Resource Public Key Infrastructure:リソース公開鍵基盤)を採用しているため、不正なアナウンスは内部ネットワークのルーティングには影響せず、無効なルートは自動的に拒否されたと説明している。
Cloudflareが事後報告の中で提示した長期的な解決策は以下の通り:
- より多くのデータソースを組み込み、リアルタイムのデータポイントを統合することで、経路漏れ検知システムを強化する。
- Route Origin Validation(ROV)にResource Public Key Infrastructure(RPKI)の採用を促進する。
- Mutually Agreed Norms for Routing Security (MANRS)の原則の採用を推進する。この原則には、無効なプレフィックス長の拒否や、堅牢なフィルタリングメカニズムの実装が含まれる。
- デフォルトフリーゾーン(DFZ)において、/24より長いIPv4プレフィックスを拒否するようネットワークに奨励する。
- BGPアナウンスメントにおけるASパスの検証に使用されるASPAオブジェクト(現在IETFで草案が作成されている)の導入を提唱する。
- RFC9234とDOA(Discard Origin Authorization)の実装の可能性を探る。
Comments