(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-10
(45)【発行日】2024-01-18
(54)【発明の名称】不正検出装置および不正検出方法
(51)【国際特許分類】
H04L 12/22 20060101AFI20240111BHJP
H04L 12/66 20060101ALI20240111BHJP
H04L 12/28 20060101ALI20240111BHJP
【FI】
H04L12/22
H04L12/66
H04L12/28 200Z
(21)【出願番号】P 2019181217
(22)【出願日】2019-10-01
【審査請求日】2022-09-22
(73)【特許権者】
【識別番号】000006666
【氏名又は名称】アズビル株式会社
(74)【代理人】
【識別番号】100098394
【氏名又は名称】山川 茂樹
(74)【代理人】
【識別番号】100064621
【氏名又は名称】山川 政樹
(72)【発明者】
【氏名】太田 貴彦
【審査官】羽岡 さやか
(56)【参考文献】
【文献】特開2006-287299(JP,A)
【文献】米国特許出願公開第2012/0144483(US,A1)
【文献】Ferdous A Barbhuiya et al.,Detection of Neighbor Solicitation and Advertisement Spoofing in IPv6 Neighbor Discovery Protocol,SIN '11: Proceedings of the 4th international conference on Security of information and networks,2011年11月30日,P.111-118,<URL> https://dl.acm.org/doi/10.1145/2070425.2070444
【文献】Gunjan Bansal et al.,Detection of NDP Based Attacks using MLD,SIN '12: Proceedings of the Fifth International Conference on Security of Information and Networks,2012年12月31日,P.163-167,<URL> https://dl.acm.org/doi/abs/10.1145/2388576.2388600
【文献】志田 智 SATOSHI SHIDA,マスタリングTCP/IP IPv6編 第2版 ,第2版,株式会社オーム社 竹生 修己,P.122,第3章 近隣探索とアドレス自動生成、SENDによる近隣探索のセキュリティ向上
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/00-69/40
(57)【特許請求の範囲】
【請求項1】
ネットワーク上を流れるパケットを監視して、近隣探索プロトコルに基づく
近隣広告パケットを検知するように構成された検知部と、
検知された前記
近隣広告パケットの送信元のMACアドレスを送信先のMACアドレスとして設定し、マルチキャストグループへの参加状況を問い合わせる問い合わせパケットを前記ネットワークを介してオールノードマルチキャスト送信するように構成された送信部と、
前記問い合わせパケットに対する応答パケットを前記送信先のMACアドレスを有する端末装置から受信するように構成された受信部と、
前記応答パケットに含まれる、前記応答パケットの送信元である前記端末装置が参加するマルチキャストグループを識別するマルチキャストアドレスが示す第1のIPアドレスと、前記
近隣広告パケットにより近隣探索の対象となっている第2のIPアドレスとが異なる場合に、前記応答パケットの送信元の前記端末装置は不正であると判断するように構成された判断部と
を備える不正検出装置。
【請求項2】
請求項1に記載の不正検出装置において、
前記判断部は、前記受信部が前記応答パケットを受信しなかった場合に、前記問い合わせパケットの前記送信先のMACアドレスを有する前記端末装置は不正であると判断する
ことを特徴とする不正検出装置。
【請求項3】
請求項1または請求項2に記載の不正検出装置において、
前記判断部は、前記検知部が検知した前記
近隣広告パケットから、前記第2のIPアドレスを取得する
ことを特徴とする不正検出装置。
【請求項4】
請求項1から
3のいずれか1項に記載の不正検出装置において、
前記マルチキャストアドレスは、要請ノードマルチキャストアドレスである
ことを特徴とする不正検出装置。
【請求項5】
請求項1から
4のいずれか1項に記載の不正検出装置において、
前記判断部による判断結果を表示画面に表示するように構成された表示装置をさらに備える
ことを特徴とする不正検出装置。
【請求項6】
ネットワーク上を流れるパケットを監視して、近隣探索プロトコルに基づく
近隣広告パケットを検知する第1ステップと、
前記第1ステップで検知された前記
近隣広告パケットの送信元のMACアドレスを送信先のMACアドレスとして設定し、マルチキャストグループへの参加状況を問い合わせる問い合わせパケットを前記ネットワークを介してオールノードマルチキャスト送信する第2ステップと、
前記問い合わせパケットに対する応答パケットを前記送信先のMACアドレスを有する端末装置から受信する第3ステップと、
前記応答パケットに含まれる、前記応答パケットの送信元である前記端末装置が参加するマルチキャストグループを識別するマルチキャストアドレスが示す第1のIPアドレスと、前記
近隣広告パケットにより近隣探索の対象となっている第2のIPアドレスとが異なる場合に、前記応答パケットの送信元の前記端末装置は不正であると判断する第4ステップと
を備える不正検出方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、不正検出装置および不正検出方法に関し、特にIPv6環境における不正を検知する技術に関する。
【背景技術】
【0002】
近年、IoTの普及により様々な機器がインターネットにつながるようになっている。これにともなって、インターネットにつながる機器の数も爆発的に増え、従来インターネットプロトコルとして用いられてきたIPv4から、新たに128ビットのアドレス長を持つプロトコルとしてIPv6への移行が進んでいる。また、ネットワーク監視装置などの多くのネットワークセキュリティ製品においても、IPv6に対応したものが急速に求められている。
【0003】
IPv6環境における、盗聴や通信妨害のハッキングのひとつとして、近隣探索(Neighbor Discovery:ND)スプーフィングが知られている。これはIPv4のarpスプーフィングに相当する手法である。IPv6環境では、ICMPv6による近隣探索により、目的のIPv6アドレスのMACアドレスを探し出し、探し出したMACアドレスを近隣キャッシュに登録する。例えば、不正アクセスなどによりマルウェアに感染した端末装置が同一リンク内にあった場合、この不正な端末装置が任意の端末装置からの近隣要請(Neighbor Solicitation:NS)に対して、使われていないMACアドレスを格納した近隣広告(Neighbor Advertisement:NA)を返信したようになりすますことでDoS攻撃などが可能となる(非特許文献1参照)。
【0004】
このような近隣探索スプーフィングを検知する上での対策として、例えば、非特許文献1は、ND関連のパケットを監視して、L2(Data link layer)とL3(Network layer)のアドレスマッピングを学習し、すでに学習済みのL3に関する不正端末からのNAをフィルタによりブロックする手法を開示している。
【0005】
上記の近隣探索スプーフィングを検知する従来技術によると、例えば、スイッチングHUB等で予めIPアドレスとMACアドレスとの正常なペアを登録または学習しておき、スイッチングHUB内に流れるNAパケットで、正常とされるペアから外れたNAパケットが流れた場合に不正であると判断する。
【先行技術文献】
【非特許文献】
【0006】
【文献】IPv6 技術検証協議会「セキュリティ評価・対策検証部会最終報告書 2.1.1.2.対策案」2012年8月
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかし、非特許文献1に記載の技術では、例えば、IPアドレスが変更されるIPv6環境も存在するなかで、登録済みのIPアドレスが変更されることや、端末装置が新たに追加される度にIPアドレスとMACアドレスとのペアを新たに登録しなければならず、誤検知や登録作業が増えるなどの欠点があった。
【0008】
本発明は、上述した課題を解決するためになされたものであり、予めIPアドレスとMACアドレスとのペアの登録や学習を必要とせず、より簡易な構成により近隣探索スプーフィングを検知することを目的とする。
【課題を解決するための手段】
【0009】
上述した課題を解決するために、本発明に係る不正検出装置は、ネットワーク上を流れるパケットを監視して、近隣探索プロトコルに基づく近隣広告パケットを検知するように構成された検知部と、検知された前記近隣広告パケットの送信元のMACアドレスを送信先のMACアドレスとして設定し、マルチキャストグループへの参加状況を問い合わせる問い合わせパケットを前記ネットワークを介してオールノードマルチキャスト送信するように構成された送信部と、前記問い合わせパケットに対する応答パケットを前記送信先のMACアドレスを有する端末装置から受信するように構成された受信部と、前記応答パケットに含まれる、前記応答パケットの送信元である前記端末装置が参加するマルチキャストグループを識別するマルチキャストアドレスが示す第1のIPアドレスと、前記近隣広告パケットにより近隣探索の対象となっている第2のIPアドレスとが異なる場合に、前記応答パケットの送信元の前記端末装置は不正であると判断するように構成された判断部とを備える。
【0010】
また、本発明に係る不正検出装置において、前記判断部は、前記受信部が前記応答パケットを受信しなかった場合に、前記問い合わせパケットの前記送信先のMACアドレスを有する前記端末装置は不正であると判断してもよい。
【0011】
また、本発明に係る不正検出装置において、前記判断部は、前記検知部が検知した前記近隣広告パケットから、前記第2のIPアドレスを取得してもよい。
【0013】
また、本発明に係る不正検出装置において、前記マルチキャストアドレスは、要請ノードマルチキャストアドレスであってもよい。
【0014】
また、本発明に係る不正検出装置において、前記判断部による判断結果を表示画面に表示するように構成された表示装置をさらに備えていてもよい。
【0015】
上述した課題を解決するために、本発明に係る不正検出方法は、ネットワーク上を流れるパケットを監視して、近隣探索プロトコルに基づく近隣広告パケットを検知する第1ステップと、前記第1ステップで検知された前記近隣広告パケットの送信元のMACアドレスを送信先のMACアドレスとして設定し、マルチキャストグループへの参加状況を問い合わせる問い合わせパケットを前記ネットワークを介してオールノードマルチキャスト送信する第2ステップと、前記問い合わせパケットに対する応答パケットを前記送信先のMACアドレスを有する端末装置から受信する第3ステップと、前記応答パケットに含まれる、前記応答パケットの送信元である前記端末装置が参加するマルチキャストグループを識別するマルチキャストアドレスが示す第1のIPアドレスと、前記近隣広告パケットにより近隣探索の対象となっている第2のIPアドレスとが異なる場合に、前記応答パケットの送信元の前記端末装置は不正であると判断する第4ステップとを備える。
【発明の効果】
【0016】
本発明によれば、近隣探索プロトコルに基づく所定のパケットを検知し、その所定のパケットの送信元のMACアドレスを送信先のMACアドレスとしてオールノードマルチキャスト送信した問い合わせパケットに対する応答パケットに含まれる、送信元の端末装置が参加するマルチキャストアドレスが示す第1のIPアドレスと、近隣探索の対象となっている第2のIPアドレスとが異なる場合に、応答パケットの送信元の端末装置は不正であると判断する。そのため、予めIPアドレスとMACアドレスとのペアの登録や学習を必要とせず、より簡易な構成により近隣探索スプーフィングを検知することができる。
【図面の簡単な説明】
【0017】
【
図1】
図1は、本発明の実施の形態に係る不正検出装置を含むネットワークシステムの構成を示すブロック図である。
【
図2】
図2は、実施の形態に係る不正検出装置の構成を示すブロック図である。
【
図3】
図3は、実施の形態に係る不正検出装置のハードウェア構成を示すブロック図である。
【
図4】
図4は、実施の形態に係る不正検出方法を説明するためのフローチャートである。
【
図5】
図5は、実施の形態に係るネットワークシステムの動作を示すシーケンス図である。
【
図6】
図6は、実施の形態に係るネットワークシステムの動作を示すシーケンス図である。
【発明を実施するための形態】
【0018】
以下、本発明の好適な実施の形態について、
図1から
図6を参照して詳細に説明する。
【0019】
[ネットワークシステムの構成]
まず、本発明の実施の形態に係る不正検出装置1を備えるネットワークシステムの概要について説明する。
図1に示すように、ネットワークシステムは不正検出装置1と、LANなどのネットワークNWを介して接続されている複数の端末装置2、3、4とを備える。ネットワークシステムは、例えば、BA(Building Automation)システムなどに設けられる。
【0020】
本発明の実施の形態に係る不正検出装置1は、ネットワークNWを監視して、近隣探索スプーフィングを行う不正端末を検出する。
【0021】
端末装置2、3、4は、IPv6が動作するPCなどの端末である。本実施の形態において、
図1に示す端末装置2、3は正規端末である。一方、端末装置4は、例えば、マルウェアなどに感染した不正端末である。
図1に示すように、端末装置2、3、4には、それぞれIPv6アドレスが設定されている。
【0022】
不正検出装置1は、ネットワークNWを流れるパケットを監視して、近隣探索プロトコル(NDP)に基づくNAパケットおよびNSパケット(所定のパケット)を検知する。不正検出装置1は、検知したNAパケットに含まれるターゲットリンク層アドレス(Target Link-layer Address)、または、NSパケットに含まれるソースリンク層アドレス(Source Link-layer Address)が示すMACアドレスを取得する。
【0023】
近隣探索スプーフィングを行う不正端末は、ネットワークNWの通信傍受やデータの改ざんなどの不正アクセスを行う目的で、ネットワークNW上の他の正規の端末装置になりすましてNAパケットあるいはNSパケットを送信する。このような不正端末は、不正なNAパケットやNSパケットにおけるオプションフォーマットのフィールド「Target Link-layer Address」または「Source Link-layer Address」に自装置のMACアドレスを格納する。
【0024】
本実施の形態に係る不正検出装置1は、検知したNAパケットに含まれるTarget Link-layer Address、またはNSパケットに含まれるSource Link-layer Addressが示すMACアドレスを送信先MACアドレスとして設定し、検査のためのGeneral QueryのMulticast Listener Query(MLQ)をオールノードマルチキャスト送信する。
【0025】
MLQパケットは、ルータがリスナーに対して受信を希望するマルチキャストグループが存在するかどうかを問い合わせることに用いられるメッセージである。また、General Queryは、リンクローカルスコープ内に存在するすべてのリスナーに対して、どのマルチキャストグループに参加しているのかを調べるクエリである。
【0026】
不正検出装置1は、MLQパケットに対する応答パケットとしてMLQパケットを受信した端末装置が参加しているマルチキャストグループを識別するマルチキャストアドレスを報告するためのMulticast Listener Report(MLR)を受信する。MLRパケットには、要請ノードマルチキャストアドレスが含まれる。要請ノードマルチキャストアドレスは、インターフェースに割り当てられたユニキャストアドレスやエニーキャストアドレスであるIPv6アドレスから計算される。
【0027】
また、要請ノードマルチキャストアドレスは、ユニキャストアドレスやエニーキャストアドレスの下位24bitから構成される。要請ノードマルチキャストアドレスのアドレス範囲は、[FF02::1FF00:0000]から[FF02::1FFFF:FFFF]であることから、IPv6アドレスが容易に判別可能である。
【0028】
本実施の形態に係る不正検出装置1は、検査のために送信したMLQパケットに対する応答として受信したMLRパケットに含まれる要請ノードマルチキャストアドレスが示すMLRパケットの送信元のIPv6アドレス(第1のIPアドレス)と、NSパケットやNAパケットの送信により近隣探索の対象となっているIPv6アドレス(第2のIPアドレス)とを比較する。これらのIPv6アドレスが一致しない場合には、不正検出装置1は、MLRパケットの送信元は、近隣探索スプーフィングを行う不正端末であると判断する。
【0029】
[不正検出装置の機能ブロック]
不正検出装置1は、
図2に示すように、検知部10、送信部11、受信部12、判断部13、および記憶部14を備える。
【0030】
検知部10は、ネットワークNWを流れるパケットを監視して、近隣探索プロトコルに基づくNSパケットおよびNAパケットを検知する。検知部10は、例えば、ポートミラーリングにより、ネットワークNW上のパケットを監視することができる。
【0031】
送信部11は、検知部10により検知されたNSパケットまたはNAパケットの送信元MACアドレスを送信先MACアドレスとして設定し、General QueryのMLQパケットをオールノードマルチキャスト送信する。より詳細には、送信部11は、NSパケットまたはNAパケットに含まれる、Source/Target Link-layer Addressに格納された、パケットの送信元MACアドレスを、MLQパケットの送信先MACアドレスとして設定する。例えば、端末装置4がNSパケットまたはNAパケットを送信した場合、Source/Target Link-layer Addressに格納されたMACアドレス「H」を、MLQパケットの送信先MACアドレスとして設定する。
【0032】
受信部12は、送信部11により送信されたMLQパケットに対する応答パケットであるMLRパケットを受信する。受信部12によって受信されるMLRパケットは、MLQパケットの送信先MACアドレス、例えば「H」を有する端末装置4によって返信されたMLRパケットである。なお、MLQパケットの送信先MACアドレス「H」を有する
図1の端末装置4が、IPv6プロトコルスタックを無効にしたステルス端末の場合には、端末装置4はMLRパケットを返さない。この場合、受信部12は、MLQパケットの送信先である端末装置4からMLRパケットを受信しないことになる。この場合の不正検出処理については後述する。
【0033】
判断部13は、受信部12が受信したMLRパケットに含まれる要請ノードマルチキャストアドレスが示すIPv6アドレスと、検知部10によって検知されたNSパケットまたはNAパケットにより近隣探索の対象となっているIPv6アドレスとが異なる場合には、MLRパケットの送信元の端末装置(例えば、端末装置4)は、不正であると判断する。
【0034】
より詳細には、判断部13は、受信部12が受信したMLRパケットに含まれる、MLRパケットの送信元の端末装置4が参加するマルチキャストグループを識別する要請ノードマルチキャストアドレスが示すIPv6アドレス(
図1の「K」)を取得する。前述したように、要請ノードマルチキャストアドレスは、リンクローカルのプレフィックスにIPv6アドレスの下位24bit(下位3バイト)を加えることで生成される。これに基づき、判断部13は、MLRパケットに含まれる要請ノードマルチキャストアドレスから、IPv6アドレス(
図1の「K」)を判別することができる。
【0035】
また、判断部13は、検知部10が検知したNSパケットまたはNAパケットから近隣探索の対象となっているIPv6アドレスを判別して取得することができる。例えば、近隣探索の対象となっているIPv6アドレスが、端末装置3のIPv6アドレス「G」であり、MLRパケットの要請ノードマルチキャストアドレスが示すIPv6アドレスが「K」である場合を考える。この場合、IPv6アドレスは一致しないので、判断部13は、MLRパケットの送信元の端末装置4(IPv6アドレス「K」、MACアドレス「H」)は不正であると判断する。
【0036】
また、判断部13は、受信部12がMLRパケットをMLQパケットの送信先MACアドレス、例えば「H」の端末装置4から受信しなかった場合には、その送信先MACアドレス「H」の端末装置4は不正であると判断する。例えば、判断部13は、送信部11がMLQパケットを送信してから一定の時間が経過した場合に、MLRパケットを受信しなかった場合に、MLRパケットの受信はなかったとすることができる。
【0037】
記憶部14は、検知部10が検知したNSパケットまたはNAパケットにより近隣探索の対象となっているIPv6アドレスに関する情報を記憶する。
【0038】
[不正検出装置のハードウェア構成]
次に上述した機能を有する不正検出装置1のハードウェア構成の一例について、
図3を用いて説明する。
【0039】
図3に示すように、不正検出装置1は、例えば、バス101を介して接続されるプロセッサ102、主記憶装置103、通信インターフェース104、補助記憶装置105、入出力I/O106を備えるコンピュータと、これらのハードウェア資源を制御するプログラムによって実現することができる。
【0040】
主記憶装置103には、プロセッサ102が各種制御や演算を行うためのプログラムが予め格納されている。プロセッサ102と主記憶装置103とによって、
図2に示した検知部10、送信部11、受信部12、判断部13など、不正検出装置1の各機能が実現される。
【0041】
通信インターフェース104は、不正検出装置1と端末装置2、3、4や各種外部電子機器との間をネットワーク接続するためのインターフェース回路である。通信インターフェース104により、
図2で説明した送信部11によって送信処理されたパケットが送信される。また、通信インターフェース104より受信されたパケットが受信部12によって受信処理される。
【0042】
補助記憶装置105は、読み書き可能な記憶媒体と、その記憶媒体に対してプログラムやデータなどの各種情報を読み書きするための駆動装置とで構成されている。補助記憶装置105には、記憶媒体としてハードディスクやフラッシュメモリなどの半導体メモリを使用することができる。
【0043】
補助記憶装置105は、不正検出装置1が、ネットワークNW上で近隣探索スプーフィングを行う不正端末を検出するためのプログラムを格納するプログラム格納領域を有する。補助記憶装置105によって、
図2で説明した記憶部14が実現される。さらには、例えば、上述したデータやプログラムやなどをバックアップするためのバックアップ領域などを有していてもよい。
【0044】
入出力I/O106は、外部機器からの信号を入力したり、外部機器へ信号を出力したりするI/O端子により構成される。
【0045】
入力装置107は、キーボードやタッチパネルなどで構成され、操作入力を受け付けて対応する信号を生成する。
【0046】
表示装置108は、液晶ディスプレイなどによって構成される。表示装置108は、判断部13による判断結果を表示画面に表示することができる。
【0047】
[不正検出方法]
次に上述した構成を有する不正検出装置1の動作について、
図4のフローチャートを用いて説明する。
【0048】
まず、検知部10は、ネットワークNWを流れるパケットを監視する(ステップS1)。その後、検知部10によってNSパケットまたはNAパケットが検知されると(ステップS2:YES)、送信部11は、NSパケットまたはNAパケットの送信元MACアドレスを、送信先MACアドレスとして設定して、General QueryのMLQパケットをオールノードマルチキャスト送信する(ステップS3)。例えば、NAパケットに含まれるTarget Link-layer AddressのMACアドレスを、MLQパケットの送信先MACアドレスとして設定する。
【0049】
次に、受信部12は、MLQパケットに対する応答であるMLRパケットを、MLQパケットの送信先MACアドレスを有する端末装置から受信しなかった場合には(ステップS4:NO)、判断部13は、MLQパケットの送信先MACアドレスを有する端末装置は不正であると判断する(ステップS7)。
【0050】
一方、受信部12は、MLQパケットに対するMLRパケットを、MLQパケットの送信先MACアドレスを有する端末装置から受信した場合(ステップS4:YES)、判断部13は、以下の処理を実行する。すなわち、判断部13は、MLRパケットに含まれる要請ノードマルチキャストアドレスが示すIPv6アドレスと、検知部10が検知したNSパケットまたはNAパケットにより近隣探索の対象となっているIPv6アドレスとを比較する(ステップS5)。
【0051】
判断部13は、MLRパケットに含まれる要請ノードマルチキャストアドレスが示すIPv6アドレスと、検知部10が検知したNSパケットまたはNAパケットにより近隣探索の対象となっているIPv6アドレスとが一致しない場合には(ステップS6:NO)、MLRパケットの送信元の端末装置は不正であると判断する(ステップS7)。
【0052】
その後、表示装置108は、判断結果を表示画面に表示して出力する(ステップS8)。なお、判断部13による判断結果は、ネットワークNW上の特定のサーバなどに通信インターフェース104から送出される構成とすることもできる。
【0053】
[ネットワークシステムの動作シーケンス]
次に、本実施の形態に係る不正検出装置1を備えるネットワークシステムの動作を
図5および
図6のシーケンス図を参照して説明する。以下において、端末装置2、3は正規端末であり、端末装置4は不正端末であるものとする。また、端末装置2は、IPv6アドレス「A」、MACアドレス「S」を有し、端末装置3は、IPv6アドレス「G」、MACアドレス「M」を有する。また、端末装置4は、IPv6アドレス「K」、MACアドレス「H」を有する。
【0054】
[不正なNAパケットが検知される場合]
図5は、端末装置4が不正なNAパケットを送信する場合のネットワークシステムの動作シーケンスである。
【0055】
不正検出装置1は、ネットワークNWを監視している(ステップS100)。その後、正規端末である端末装置2は、NSパケットをオールノードマルチキャスト送信する(ステップS101)。より詳細には、端末装置2は、正規端末である端末装置3のMACアドレスを解決するために、端末装置3のIPv6アドレス「G」(
図5の「Target IPv6:G」)を指定する。なお、
図5に示すように、NSパケットの送信元には、端末装置2が示されている(
図5の「Src:端末装置2」)。
【0056】
次に、不正検出装置1は、端末装置2がステップS101で送信したNSパケットを検知する(ステップS102)。このとき、不正検出装置1は、近隣探索の対象となっているIPv6アドレス「G」をNSパケットから取得する。なお、端末装置4においても、端末装置2によりオールノードマルチキャスト送信されたNSパケットは受信されている。
【0057】
次に、端末装置4は、端末装置3になりすまして、NSパケットに対する応答としてNAパケットを送信する(ステップS103)。より詳細には、端末装置4は、NAパケットのTarget Link-layer Addressに自装置のMACアドレス「H」を格納し、NSパケットの送信元である端末装置2に対して、不正なNAパケットを返信する。また、この不正なNAパケットの送信元は端末装置4がなりすましている端末装置3を示している(
図5の「Src:端末装置3」)。
【0058】
ネットワークNW上を流れるパケットを監視する不正検出装置1は、端末装置4が送信した不正なNAパケットを検知する(ステップS104)。次に、不正検出装置1は、NAパケットのTarget Link-layer Address「H」を、
送信先MACアドレス「H」としたGeneral QueryのMLQパケットを、オールノードマルチキャスト送信する(ステップS105)。
【0059】
次に、MACアドレス「H」の端末装置4は、MLQパケットを受信し、MLQパケットに対する応答パケットとしてMLRパケットを不正検出装置1に返信する(ステップS106)。具体的には、MLQパケットを受信した端末装置4は、自装置が所属しているマルチキャストアドレスをMLRパケットとして返信する。このMLRパケットには、端末装置4のIPv6アドレス「K」に基づいた要請ノードマルチキャストアドレスが含まれる。
【0060】
その後、不正検出装置1は、端末装置4からのMLRパケットを受信し、MLRパケットに含まれる要請ノードマルチキャストアドレスが示すIPv6アドレス「K」と、近隣探索の対象となっているIPv6アドレス「G」とは一致しないため(ステップS107:NO)、MLRパケットの送信元である端末装置4は不正であると判断する(ステップS108)。なお、ステップS101で送信されたNSパケットに対して、正規の端末装置3がNAパケットを送信する場合には、ステップS107において、近隣探索の対象となっているIPv6アドレスと、要請ノードマルチキャストアドレスが示すIPv6アドレスとは一致することになる。
【0061】
その後、不正検出装置1は、端末装置4が不正であると判断した結果を出力する(ステップS109)。
【0062】
[不正なNSパケットが検知される場合]
図6は、端末装置4が不正なNSパケットを送信する場合のネットワークシステムの動作シーケンスを示している。
【0063】
まず、不正検出装置1は、ネットワークNW上を流れるパケットを監視する(ステップS200)。その後、端末装置4は、自装置のMACアドレス「H」を「Source Link-layer Address」に格納し、正規の端末装置2になりすましてNSパケットを送信する(ステップS201)。この不正なNSパケットは、端末装置4が端末装置2になりすまして(
図6の「Src:端末装置2」)、端末装置3のIPv6アドレス「G」のMACアドレスを問い合わせるものである(
図6の「Target IPv6:G」)。
図6に示すように、正規の端末装置2は、実際にはNSパケットを送信していない。
【0064】
次に、不正検出装置1は、端末装置4が送信した不正なNSパケットを検知する(ステップS202)。次に、不正検出装置1は、検知したNSパケットのSource Link-layer Addressが示すMACアドレス「H」を送信先MACアドレスとしたGeneral QueryのMLQパケットをオールノードマルチキャスト送信する(ステップS203)。
【0065】
MLQパケットを受信した端末装置4は、自装置のIPv6アドレス「K」に基づいた要請ノードマルチキャストアドレスを含むMLRパケットを返信する(ステップS204)。次に、不正検出装置1は、MLRパケットを受信し、MLRパケットに含まれる要請ノードマルチキャストアドレスが示すIPv6アドレス「K」と、近隣探索の対象となっているIPv6アドレス「G」とは一致しないため(ステップS205:NO)、MLRパケットの送信元の端末装置4は不正であると判断する(ステップS206)。
【0066】
その後、表示装置108は、判断結果を表示画面に表示する(ステップS207)。
【0067】
以上説明したように、本実施の形態によれば、ネットワークNW上を流れるNSパケットおよびNAパケットを検知して、これらのパケットに含まれるSource/Target Link-layer Addressに格納されたMACアドレスを送信先MACアドレスとしてGeneral QueryのMLQパケットをオールノードマルチキャスト送信する。また、MLQパケットに対する応答であるMLRパケットに含まれる要請ノードマルチキャストアドレスが示すIPv6アドレスと近隣探索の対象となっているIPv6アドレスとを比較して不正端末を検出する。そのため、予めIPアドレスとMACアドレスとのペアの登録や学習を必要とせず、より簡易な構成により近隣探索スプーフィングを検知することができる。
【0068】
また、本実施の形態によれば、送信先MACアドレスを指定したMLQパケットに対する応答であるMLRパケットが受信されなかった場合には、MLQパケットの送信先の端末装置は不正であると判断する。そのため、不正端末がステルス端末の場合であっても、近隣探索スプーフィングを検知することができる。
【0069】
なお、説明した実施の形態に係る不正検出装置1では、判断部13によるIPv6アドレスの比較による判断結果を出力し、例えば、表示装置108の表示画面に判断結果を表示する場合を例示した。これに加えて、不正検出装置1は、正規の端末装置2、3が送信した1つのNSパケットに対して、2つ以上のNAパケットを検知した場合においても、その旨を表示装置108に表示させることができる。例えば、判断部13が、近隣探索の対象となっているIPv6アドレスとMLRパケットに含まれる要請ノードマルチキャストアドレスが示すIPv6アドレスが同じであると判断した場合であっても、2つ以上のNAパケットが検知された場合には、ユーザに対して不正の可能性を通知することができる。
【0070】
以上、本発明の不正検出装置および不正検出方法における実施の形態について説明したが、本発明は説明した実施の形態に限定されるものではなく、請求項に記載した発明の範囲において当業者が想定し得る各種の変形を行うことが可能である。
【符号の説明】
【0071】
1…不正検出装置、2、3、4…端末装置、10…検知部、11…送信部、12…受信部、13…判断部、14…記憶部、101…バス、102…プロセッサ、103…主記憶装置、104…通信インターフェース、105…補助記憶装置、106…入出力I/O、107…入力装置、108…表示装置、NW…ネットワーク。