要約

  • ホストが正しい形式の PIM Hello や選出メッセージを送れることと、運用者がそのホストをルーターに任命したことは別である。隣接表や DR/DF の結果は、認可の証明書ではない。
  • passive mode、IPsec、protocol 103 の遮断、スイッチポートでのフィルタ、送信元検証は守る経路が異なる。一つの緑表示で代替してはならない。

隣接表の一行が隠すもの

アクセス回線に接続された端末は、通常、マルチキャストデータを送受信する主体であって、経路制御の主体ではない。しかしインターフェースで完全な PIM を動かせば、実装はその社会的区別を知らない。Hello を受け、条件を満たせば隣接を作る。

ここで確認できるのは「実装がメッセージを受理した」という事実だけだ。アドレスが正しいこと、タイマーが生きていること、隣接が存在することは、運用者が相手をルーターとして承認した根拠にならない。RFC 5294 の中心は、攻撃の技巧よりも、ホスト用インターフェースがルーター用の統治手続きを公開してしまう構造にある。

文書は 2008 年の Informational RFC であり、現在の製品や導入状況を測定したものではない。それでも、ポートの役割を設定として表現しなければ、プロトコルの成功が認可を後付けで作ってしまう、という論点は残る。

選出は候補者名簿を審査しない

PIM-SM の DR は、新しい送信元のデータを Register に包み、LAN のグループ参加者を代表して Join/Prune を送る。ホストが隣接になり DR を奪えば、参加要求を上流へ送らない、ローカル送信元を登録しない、特定グループだけを選択的に妨害する、といった権限を得る。別のストリームが流れていることは、妨害されたストリームの完全性を証明しない。

BIDIR-PIM の DF はリンクの上下両方向の転送を担う。より良いメトリックを提示する、DF Offer や DF Winner を偽装する、Offer を連発して収束を妨げる、といった経路が RFC 5294 に示される。アルゴリズムは見えた候補から勝者を選ぶだけで、候補が正規のルーターかを保証しない。

Assert は (S,G) または (*,G) ごとに別の転送責任を作り、通常の DR 動作を上書きできる。既知隣接からのみ受け入れる想定でも、先に隣接を形成する、既存アドレスを偽装する、検査不足を利用する余地がある。標準の三分タイマーは更新されない状態を消すが、最初の妨害を防ぐ制御ではない。

passive でも Register は話せる

一台のルーターだけがサービスする stub link なら、PIM passive mode は有効だ。ホストのマルチキャスト送受信を残したまま、PIM パケットを送らず、受信しても処理しない。不要な隣接と選出を「監視」するのではなく、表現不能にする。

ただし Register はユニキャストであり、ホスト自身が作って任意の RP へ送れる。送信元検証がなければ偽装も可能で、正規 DR にだけ置いたレート制御を迂回できる。RFC 5294 の表で passive mode が host Register を解決しないとされるのは、この経路差のためだ。

したがって、リンク上の PIM 制御、RP へ向かう Register、送信元の正当性、ルーター間認証、データ転送を一つの「安全」項目にまとめることはできない。

制御ごとに適用面を記録する

複数の正規ルーターが同じ LAN にいる場合、IPsec はルーター間 PIM の認証に使える。一方で SA と鍵の運用負荷、機器対応、自動鍵交換の適否がある。さらに、オンリンクのルーター同士を保護しても、ホストが別の宛先へ送る Register まで自動的に止めるわけではない。

一台構成では入力 ACL で IP protocol 103 を遮断すると、マルチキャスト PIM とユニキャスト Register の両方を止められ、passive mode より広い。複数ルーター構成では、全ホストポートで PIM を落とすか、既知ルーターのアドレスだけを許可し、同時にポートで送信元偽装を防ぐ。代わりに、ポート台帳と例外の保守が新しい信頼点になる。

BIDIR-PIM では共有木に同じ RPF 保護がないため、トポロジー的に不正な送信元を防ぐ ingress filtering も別途必要だ。送信方向が妥当でも、ルーター役割の認可までは証明しない。

六つの事実を一つにしない

監査では、インターフェース用途、PIM の許可状態、送信元検証、メッセージ認証、正規候補による選出、実際の転送と受信を別行にするべきだ。隣接があるから選出が正当、選出が正当だから転送が行われた、転送状態があるから受信者に届いた、とは進めない。

観測されなかった事実にも期限がある。短いキャプチャで不正 Hello が見えなくても全ポートのフィルタは証明できない。DR が安定していても別グループへの偽 Assert は否定できない。Assert の期限切れは過去の欠損を修復しない。また、リンク上の端末は二層マルチキャストフィルタを調整して受信できるため、機密性は暗号で用意する必要がある。

会員認証や課金を IGMP 側に置いても、ホストがルーターとして行動できれば迂回できる。サービス資格と制御平面の役割認可は異なる。

この資料の射程

RFC 5294 は特定ベンダーの脆弱性、現行実装の挙動、侵害件数、普及率を示さない。RFC 7761 は後に RFC 4601 を置き換えた。現場判断には実装版、設定、パケット記録、ポート台帳が必要である。

また passive、IPsec、ACL のどれも配送結果を保証しない。ここでの結論は限定的だ。隣接表を正規性の根拠にする前に、そのインターフェースがルーターという主体を受け入れる場所だったかを証明しなければならない。

出典