作成 2010.02.22
更新 2015.12.24
Strong Host Routing Model について
目次
概要
ありえない送信元から受け取らない
送信元の詐称によるルーティング攻撃を防ぐ
受け取ったIPアドレスで応答する
応答パケットの送信元確認
問題点
参考
概要
マルチホーム(複数のアドレス)、複数のインターフェースを持つホストを安全に利用するセキュリティ モデルです。
Windows Vista から導入されており、ネットワークの挙動が大きく変化しています。次項から変更点を簡潔に述べます。
ありえない送信元から受け取らない
Windows XP, Windows Server 2003 R2 以前は来るはずのない送信元のアドレスも受け取っていました。


Windows Vista, Windows Server 2008 以降は受け取りません。
送信元の詐称によるルーティング攻撃を防ぐ
ループバックアドレスの詐称以外にも以下のような攻撃が可能でした。


Windows Vista, Windows Server 2008 以降はデフォルトで攻撃を防ぐことができます。
受け取ったIPアドレスで応答する
Windows XP, Windows Server 2003 R2 以前はルーティングのコストが同じなら、優先IPアドレスから応答していました。


Windows Vista, Windows Server 2008 以降は受信したIPで応答します。
応答パケットの送信元確認
Windows XP, Windows Server 2003 R2 以前は送信元IPアドレスしか確認していませんでした。
そのため、応答パケットのシーケンスを推測することでセッション乗っ取りが可能でした。


Windows Vista, Windows Server 2008 以降はデフォルトで攻撃を防ぐことができます。
問題点
ネットワークを長く運用していると、以下の様にゲートウェイが複数ある環境になることがあります。
クライアント(10.0.1.200)が10.0.1.2経由でサーバー(10.0.2.10)へ接続するシナリオです。


Windows XP, Windows Server 2003 R2 以前は特に問題なく通信出来ていました。


Windows Vista, Windows Server 2008 以降では、返信元のMACアドレスが異なるため攻撃と判断し、受信しません。


この場合は、以下の対策が考えられます。
対策案1 ルーティングを是正する
最も妥当な対策です。ただし、変更範囲が多岐にわたることがあり、現実的ではないかもしれません。

対策案2 Strong Host Routing を無効化する
セキュリティと利便性のトレードオフとなります。以下のコマンドで無効化出来ます。
netsh interface ipv4 set interface [InterfaceNameOrIndex] weakhostsend=enabled
netsh interface ipv4 set interface [InterfaceNameOrIndex] weakhostreceive=enabled
netsh interface ipv6 set interface [InterfaceNameOrIndex] weakhostsend=enabled
netsh interface ipv6 set interface [InterfaceNameOrIndex] weakhostreceive=enabled
元に戻すには
netsh interface ipv4 set interface [InterfaceNameOrIndex] weakhostsend=disabled
netsh interface ipv4 set interface [InterfaceNameOrIndex] weakhostreceive=disabled
netsh interface ipv6 set interface [InterfaceNameOrIndex] weakhostsend=disabled
netsh interface ipv6 set interface [InterfaceNameOrIndex] weakhostreceive=disabled
参考
タグ: Windows

©2004-2017 UPKEN IPv4