ページの先頭です
2012年7月2日 更新
IPパケットには、送信元と送信先のアドレス情報が含まれています。通信を行う際に、送信元はこれらのアドレス情報が設定されたIPパケットを送ります。送信先は受け取ったIPパケットの送信元アドレスに対して応答パケットを返します。送信元アドレスが正しくないと、送信先は正しく応答を返すことはできません。
インターネット上で行われる通信において、不正として扱われる送信元アドレスとしては以下のようなものが挙げられます。
より厳密な解釈では、ISPから割り当てられたアドレスを送信元アドレスとして利用した通信のみが正常であり、割り当てられたものとは異なるアドレスを送信元アドレスとして利用している場合は正常ではないと言えます。
割り当てられたアドレスとは別のアドレスが送信元アドレスとして設定される原因はいくつか考えられます。一つはソフトウエアの不具合で不正なIPアドレスが設定されたり、NATによるアドレス変換が正しく動作していない場合があります。もう一つは悪意のあるソフトウエアによって送信元アドレスが詐称されることがあります。攻撃者がワームの感染活動やDoS攻撃を行う際に、身元を隠したり、対応を難しくするために、送信元アドレスを詐称するソフトウエアを使用する場合があります。
DoS攻撃などの不正な通信において、送信元アドレスが詐称されるケースは頻繁にみられます。送信元アドレスの詐称を利用した主な攻撃として、 smurf攻撃が挙げられます。また、SYN flood攻撃やICMP flood攻撃でも送信元アドレスを詐称されている場合があります。送信元アドレスが詐称された場合には正常な通信が成り立たたないばかりか、このような不正な通信が大量に流れ込むことで、ISPバックボーンや攻撃対象のネットワーク環境に大きな負荷を与えてしまいます。
IIJでは送信元アドレスの正当性を検証するSource Address Validationを実施し、不正な通信を排除しています。
送信元アドレスの正当性を検証するための技術には以下のようなものがあります。
uRPFチェックはルータの経路情報を利用して送信元アドレスの確認を行います。宛先アドレスで経路情報を検索して次の転送先を探すのと同様に、送信元アドレスで経路情報を検索して、得られた転送先のインタフェースとパケットが流入したインタフェースを比較してチェックします。動的経路制御にも対応しており、管理は特に必要ありません。
uRPFチェックの方法には、いくつかのモードがあります。
緩やかなuRPF looseモード相当を導入しています。
インターネット接続サービス IIJデータセンター接続サービス IIJインターネットアクセスサービス |
IIJより割り当てたIPアドレスをスタティックルーティングでご利用の場合 厳密なuRPF strictモード相当を導入しています。 ポータブルアドレスまたはダイナミックルーティングでご利用の場合 緩やかなuRPF looseモード相当を導入しています。 |
---|---|
IIJ FiberAccess/Fサービス IIJ FiberAccess/Qサービス IIJ FiberAccess/Cサービス IIJ DSL/Fサービス IIJ DSL/Aサービス IIJ ISDN/Fサービス |
厳密なuRPF strictモード相当を導入しています。 |
IIJダイアルアップアドバンスト エンタープライズダイアルアップIPサービス IIJダイアルアップスタンダード |
厳密なuRPF strictモード相当を導入しています。(一部アクセスポイントを除く) |
IIJモバイルサービス/タイプD IIJモバイルサービス/タイプE IIJモバイルBiz+サービス |
IIJ4U | 厳密なuRPF strictモード相当を導入しています。(一部アクセスポイントを除く) |
---|---|
IIJmio DSL/DFサービス IIJmio FiberAccess/DFサービス IIJmio FiberAccess/NFサービス IIJmio DSL/SFサービス IIJmio FiberAccess/SFサービス IIJmio FiberAccess/DCサービス |
厳密なuRPF strictモード相当を導入しています。 |
IIJmio モバイルアクセス IIJmio モバイルアクセス/3G IIJmio モバイルアクセス/PRO |
厳密なuRPF strictモード相当を導入しています。(一部アクセスポイントを除く) |
IIJmio高速モバイル/Dサービス IIJmio高速モバイル/EMサービス |
uRPFの厳密なstrictモードやACLを用いたパケットフィルタでは、IIJが割り当てたIPアドレス空間、もしくはお客様から利用申告のあったIPアドレス空間を送信元アドレスにしたパケットは正常とみなします。それ以外のパケットについては破棄します。
一般的にインターネットとの接続点が一ヵ所のみの場合、この厳密なモードでも問題になることはありません。インターネットとの接続点が複数あり、かつ特殊な構成では問題となる場合があります。
例えば、インターネットへの接続回線が2回線あり、それぞれからIPアドレスを割り当てられている場合、
※ 接続サービスB側で厳密な送信元アドレスの検証を実施
接続サービスBの回線を利用して通信する際に、接続サービスAから割り当てられたアドレスを送信元アドレスとして設定した場合に問題が発生します。
接続サービスBではこのサービスで割り当てたIPアドレス 203.0.113.0/24及び2001:DB8:BBBB::/48を送信元アドレスとするパケットのみを通過させ、それ以外のアドレスを送信元アドレスとするパケットは破棄します。サービスAから割り当てられたアドレスを送信元アドレスにしたパケットが接続サービスBの回線から流入した場合は破棄されます。
ISP間の接続や、複数回線で冗長構成となるネットワークでは、上り下りの通信経路が非対称な状態になる場合があります。この様な状態でuRPFの厳密なstrictモードを使った場合、送信元アドレスへの経路とパケットの流入するインタフェースが一致していないため、正しい送信元アドレスのパケットまでも破棄してしまいます。つまり、接続形態によっては、uRPFの厳密なstrictモードを適用することができません。
この様な接続形態でも送信元アドレスの確認を行うための技術として、uRPFの緩やかなlooseモードがあります。uRPFの緩やかなloose モードでは、ルータの経路情報に存在するアドレスを送信元にしたパケットのみを通過させ、それ以外を破棄します。これにより、例えば一般に不正な送信元アドレスと されるプライベートアドレスや未使用アドレス、マルチキャストアドレスなど特殊なアドレスを送信元とするパケットを判別して破棄することができます。ただ し、送信元アドレスが経路情報に存在していた場合には、それが詐称されたものであっても通過させてしまう欠点があります。
Source Address Validationはパケットの送信元に近ければ近いほど効果的です。送信元に近ければ、それだけ早い段階で無用な通信を破棄することができ、ネットワークに対する影響が軽減できます。また、送信元の近くであればあるほど送信元アドレスを詳細に確認することができます。このため、ISPのネットワークのみならず、お客様のネットワーク内でも同様にSource Address Validationを導入することで、より効果的な送信元の確認が行えます。
弊社開発ルータ「SEIL」では、SEIL/Plus、SEIL/Turbo、SEIL/X1、SEIL/X2、SEIL/B1、SEIL/x86FujiにuRPFチェックの機能を実装しています。これにより、お客様のネットワークでより容易にSource Address Validationを導入いただけます。
Source Address Validationは通常の通信にはなんら影響を与えないため、その効果を実感することは難しいかもしれません。しかし、これを実装しておくことにより、送信元IPアドレスを詐称したワームの感染活動やDoS攻撃による被害を防ぐ事ができるようになります。同時に加害者となってしまうことを防げる可能性があります。RFC2827(BCP38)や RFC3704(BCP84)でも、すべてのネットワーク管理者が協力して送信元IPアドレスの詐称を防ぐ事が推奨されています。
机上では、IIJのネットワークだけではなく、すべてのネットワークで適切にSource Address Validationが実装されれば、送信元アドレスの詐称を利用した攻撃をインターネットから根絶することが可能です。
IIJでは、Source Address Validationの導入、啓蒙活動を積極的に行い、不正な通信の影響を軽減することで、お客様により安心してインターネットをご利用いただける環境を提供して参ります。
執筆者プロフィール
小野原 雄平(おのはら ゆうへい)
IIJ ネットワーク本部 ネットワークサービス部 ネットワークサービス課
2007年IIJ入社。専用線接続サービスの導入・運用業務を経て、現在はインターネット接続サービス等の法人向けネットワークサービスの開発及び運営を担当している。
ページの終わりです