以下、図面を参照し、本発明の通信制御装置、通信システム、通信制御方法、及びプログラムの実施形態について説明する。
(第1の実施形態)
図1は、本実施形態の通信システム1の構成を示す図である。通信システム1は、ネットワークNW1を形成する。ネットワークNW1は、互いに通信を可能とする1又は複数の他のネットワークに接続されている。ネットワークNW2とネットワークNW3とネットワークNW4とネットワークNW6は、他のネットワークの一例である。ネットワークNW1とネットワークNW2とネットワークNW3とネットワークNW4とネットワークNW6のそれぞれは、自律システムとして機能する。以下の説明において、ネットワークNW1、ネットワークNW2、ネットワークNW3、ネットワークNW4、ネットワークNW6等を総称してネットワークNWということがある。例えば、各ネットワークNWは、異なるプロバイダ(ISP(Internet Service Provider))等によって独立して管理されており、管理者が定める通信規則(ポリシー等)はそれぞれ異なるものとする。例えば、各ネットワークNWは、互いに接続されており、例えば、それぞれがインターネット(広域ネットワーク)の一部を構成する。各ネットワークNWには、図示しない各種サーバ装置、各種端末装置(受信端末等)が接続されていてもよい。
各ネットワークは、互いに接続されている。比較例のネットワークNWでは、ネットワークNW1に、他のネットワーク側から攻撃的なパケットが流入し、その影響を受けることがある。本実施形態の通信システム1は、上記のような攻撃的なパケットの影響を、下記する方法の何れか又は全部により軽減させる。
・通信システム1における不当なパケットによる通信を制限するための通信規則を追加して、ネットワークセキュリティのセキュリティレベルを高める。
・不正なパケットがネットワークNW1内を転送することを規制して、ネットワークNW1内の利用状況をネットワークNW1外から探索することを困難にする。
・ネットワークNWのセキュリティレベルを高めるための対策を導入していることの優位性を客観的に評価できるようにして、その導入を、ネットワークNWごとに促進させる。
以下、上記の各方法について順に説明する。
本実施形態の各通信システムにおいて、管理者が定める通信規則(ポリシー等)に下記する通信規制を追加して、不正なパケットによる通信を通信システムごとに制限させる。追加する通信規則を次の6つの規則に分けて規定する。
第1規則は、自通信システムにおいて通信することを許可しないものを、制限対象の通信として定める。例えば、通信システム1は、制限対象として定められた通信のパケットを、廃棄対象のパケットとして選択するための条件(「廃棄対象条件」)を、「廃棄対象情報」として管理する。通信システム1は、廃棄対象情報をリスト化したブラックリスト(「廃棄対象ブラックリスト」)又はテーブル化した「廃棄テーブル」を利用することにより、制限対象とする通信を規制する。通信システム1は、廃棄対象ブラックリスト、又は、廃棄テーブルを各装置の廃棄対象記憶部等にそれぞれ格納してもよい。制限対象には、各装置に共通するもの、装置毎に固有のものが含まれていてもよい。なお、上記及び以下の説明における「廃棄」には、当該パケットに付与されている宛先情報と送信元情報の少なくともいずれかに基づく通信を制限する、又は宛先情報と送信元情報の少なくともいずれかに基づく通信を許可しない、又は宛先情報の少なくともいずれかに基づく通信を遮断する、又は宛先情報の少なくともいずれかに基づく通信を遮断し特定のポートに出力するなどのケースも含まれるものとし、これらを纏めて単に「廃棄」という。
第2規則は、自通信システムにおいて通信することを許可する条件を定めるものである。例えば、通信システム1は、許可する通信によるパケットを選択する条件(「通信許可条件」)を、「通信許可情報」に纏めて管理する。通信システム1は、通信許可情報をリスト化したホワイトリスト(「通信許可ホワイトリスト」)又はテーブル化した「MLBテーブル」を利用することにより、許可する通信を抽出する。MLBテーブルの詳細については後述する。なお、「通信許可ホワイトリスト」はホワイトリストの一例である。
第3規則は、自通信システムにおける通信のパケットのIPヘッダから宛先IPアドレスを抽出し次ポップノードへ転送するもしくは該当するネットワークアドレスがテーブルになければ廃棄する「ルーティング条件」を定めるものである。例えば、通信システム1は、ルーティング条件を、「ルーティング情報」として管理する。通信システム1は、「ルーティング情報」をリスト化したホワイトリスト(「転送許可ホワイトリスト」)又はテーブル化した「ルーティングテーブル」を利用して、パケットを宛先に向けて次ポップノードへの転送もしくは廃棄する。ルーティングテーブルはよく知られているものであるため、詳細な説明は省略する。なお、「転送許可ホワイトリスト」はホワイトリストの一例である。
第4規則は、自通信システムにおいて、通信相手として許可するものを限定する条件を定めるものである。例えば、通信システム1は、限定した通信相手からのパケットを選択する条件(「通信相手許可条件」)を、「通信相手許可情報」に纏めて管理する。通信システム1は、通信相手許可情報をリスト化したホワイトリスト(「通信相手許可ホワイトリスト」)又はテーブル化した「QoSテーブル」を利用することにより、限定した通信相手を抽出する。QoSテーブルの詳細については後述する。なお、「通信相手許可ホワイトリスト」はホワイトリストの一例である。
第5規則は、通信によるネットワークセキュリティ上のリスクが比較的低いパケットであることを、当該パケットに明示して通信するための条件を定めるものである。
例えば、通信システム1は、所定の信頼度基準を満たす送信元を選択するための条件(「認証済送信元条件」)を、「認証済送信元情報」に纏めて管理することにより、通信によるネットワークセキュリティ上のリスクが比較的低いことを検出してもよい。パケットを送信した送信端末(送信ノード)又は送信エンティティ(送信元エンティティ)は、送信元の一例である。認証済送信元情報には、パケットを送信した送信端末又は送信エンティティを特定するための情報が含まれる。
上記の場合、通信システム1は、認証済送信元情報に基づいてパケットの送信元を判定することにより、所定の信頼度基準を満たすと判定される送信元から送信されたパケットを特定し、当該パケットについては、ネットワークセキュリティ上のリスクが比較的低いと判定する。通信システム1は、その判定の結果を、認証フラグF1を用いて示すことにより、リスクが比較的低いパケットであることを管理可能にする。通信システム1は、送信元が所定の信頼度基準を満たすものであるか否かの判定を、通信の接続要求時の認証処理、又は、検疫処理により実施してもよい。その場合、上記の処理の結果に基づいて、通信システム1は、認証フラグF1の状態を決定し、当該パケットの認証フラグF1を設定する。
なお、上記の判定が実施されて、その判定結果に対応するフラグがパケットにセットされることにより、当該パケットを中継する装置又は受信装置は、上記の場合に当たるか否かの判定を、上記の「認証フラグF1」の状態の判定に代えることができる。「認証フラグF1」を当該パケットに付与する具体的な方法については後述する。
第6規則は、通信によるネットワークセキュリティ上のリスクが比較的高いパケットであることを、当該パケットに明示して通信するための条件を定めるものである。
例えば、通信システム1は、送信元もしくは宛先を隠ぺい又は詐称したパケットを検出するためのアドレス情報、メールアドレス情報、アカウント情報、電話番号、URL(Uniform Resource Locator)、URI(Uniform Resource Identifier)、URN(Uniform Resource Name)、ドメイン名、又はFQDN(Fully Qualified Domain Name)を纏めて管理することにより、通信によるネットワークセキュリティ上のリスクがある又はリスクが比較的高いことを検出してもよい。通信システム1は、送信元もしくは宛先を隠ぺい又は詐称したパケットを検出するためのアドレス情報、メールアドレス情報、アカウント情報、電話番号、URL、URI、URN、ドメイン名及びFQDNの一部又は全部をリスト化したリストを以下、アドレスリスト(「匿名アドレスリスト」)と総称し、「匿名アドレスリスト」を利用して、条件に該当するパケットを抽出する。「匿名アドレスリスト」の詳細については後述する。
上記の場合、通信システム1は、送信元もしくは宛先を隠ぺい又は詐称したパケットについては、ネットワークセキュリティ上のリスクがある又はリスクが比較的高いと判定し、その判定の結果から当該パケットが所定の信頼度基準を必ずしも満たすものではないことを、リスクフラグRFを用いて管理する。通信システム1は、送信元もしくは宛先を隠ぺい又は詐称したパケットであるか否かの判定を、外部から提供される情報に基づいて実施してもよい。その判定の結果に基づいて、通信システム1は、リスクフラグRFの状態を決定し、当該パケットのリスクフラグRFを設定する。なお、上記の判定の詳細については後述する。
上記の判定が実施されて、その判定結果に対応するフラグがパケットにセットされることにより、当該パケットを中継する装置又は受信装置は、上記の場合に当たるか否かの判定を、上記の「リスクフラグRF」の状態の判定に代えることができる。「リスクフラグRF」を当該パケットに付与する具体的な方法については後述する。
なお、上記の第5規則は、上記のホワイトリストとは異なり当該パケットの通信を奨励することを示すものではない。また、上記の第6規則は、上記のブラックリストとは異なり当該パケットの通信を制限すべきものであることを示すものではない。第5規則と第6規則はともに、所定の判定基準に則って判定した結果を当該パケットに示すことを規定するものである。このように規定され、判定の結果を示すフラグがパケットに設けられていることにより、そのフラグを参照することで、当該パケットを受信すべきものか否かを、受信者側の端末装置で判断することが可能になる。通信システム1では、受信者側の端末装置に、上記の判断の結果に基づいたパケットの処理を、受信者の指定に基づいて実施させる。これにより、通信システム1は、自律分散や自己責任などの特徴を有しているインターネット文化を維持しつつ、安心・安全なインターネット環境が実現するように支援する。
通信システム1は、上記の規則の一部又は全部を利用して、その通信を制御する。
なお、本実施形態の以下の説明において、第2規則の通信許可ホワイトリストと第3規則の転送許可ホワイトリストと第4規則の通信相手許可ホワイトリストを区別することなく説明する場合に、単に「ホワイトリスト」という。また、第2規則の通信許可情報と第3規則のルーティング情報と第4規則の通信相手許可情報の全部または一部を纏めて経路情報という。また、通信システム1において通信相手を限定して通信する特定の装置を対象装置と呼び、対象装置又は対象装置による通信の何れかを特定する情報を特定情報と呼ぶ。例えば、特定情報には、通信許可情報又は通信相手許可情報を生成するための情報が含まれる。
なお、特定の装置又は通信を識別するための情報を識別情報と呼ぶことがある。例えば、受信したパケットに付与された識別情報を取得する場合には、通信の階層のレイヤ1の識別子、レイヤ2(L2)アドレス、レイヤ3(L3)アドレス(IPアドレス)、及び、レイヤ4(L4)プロトコルのポート番号の一部又は全部を含む情報が識別情報に含まれる。また、特定の通信相手を特定する場合の識別情報には、各装置のIPアドレス又はURL(Uniform Resource Locator)などが含まれる。第3規則のルーティング情報は、上記の識別情報としての宛先IPアドレスによって規定される場合がある。
なお、本実施形態の以下の説明では、IPv4(Internet Protocol version 4)の場合を例示して説明するが、IPv6(Internet Protocol version 6)の場合も本実施形態に示す処理と同様の手法を適用することができる。
通信システム1は、eMLBR(egress Multi Layer Binding Router)11と、iMLBR(ingress MLBR)12と、bMLBR(border MLBR)13と、中継装置14と、管理ホスト15とを含む。以下の説明において、eMLBR11と、iMLBR12と、bMLBR13とを総称してMLBR10ということがある。各MLBR10は、通信システム1の通信ノードとして機能する。通信システム1は、複数のMLBR10によってネットワークNW1を構成する。ネットワークNW1内の各MLBR10間は、互いに直接的に接続されていてもよく、中継装置14等を介して接続されていてもよい。
通信システム1には、ユーザが操作する端末装置17、IoT(Internet of Things)等と総称される各種データ端末18などの端末が通信可能に接続される。例えば、端末装置17とデータ端末18は、eMLBR11等を介して、各端末からの要求等に起因する所望の通信を実施する。IoT等と総称される各種データ端末18は、対象装置の一例である。
管理ホスト15は、通信システム1における基本設定を行うとともに、各MLBR10の状態を監視させてもよい。さらに管理ホスト15は、連携サーバとして機能し、端末装置17などの認証と検疫を担うHRS(Home RADIUS Server)として機能させてもよい。また、管理ホスト15は、IDS(Intrusion Detection System)/IPS(Intrusion Prevention System)等により検出した通信履歴を記憶するように構成してもよい。また、管理ホスト15は、通信プロトコルを監視するプロトコルモニタとして機能してもよい。また、管理ホスト15は、特定の装置に対してポートスキャンを実施するように構成してもよい。また、管理ホスト15は、ネットワークの通信状況をキャプチャされた結果の解析結果を受け、その解析結果に基づいてMLBR10を制御してもよい。
通信システム1と同様に、通信システム2は、ネットワークNW2を形成する。通信システム2は、eMLBR21と、iMLBR22と、bMLBR23と、管理ホスト25とを含む。また、通信システム3は、ネットワークNW3を形成する。通信システム3は、eMLBR31と、iMLBR32と、bMLBR33と、管理ホスト35とを含む。通信システム2におけるeMLBR21と、iMLBR22と、bMLBR23と、管理ホスト25、及び、通信システム3におけるeMLBR31と、iMLBR32と、bMLBR33と、管理ホスト35は、通信システム1のeMLBR11と、iMLBR12と、bMLBR13と、管理ホスト15にそれぞれ対応する。
比較例の通信システム4は、ネットワークNW4を形成する。通信システム4は、通信システム1とは異なり、MLBR10を含まずに、MLBR10の技術的特徴とは異なる技術的特徴を有するルータ等により構成される。通信システム4は、ネットワークNW4における1台の境界ルータ(不図示)を介して、ネットワークNW1に接続されている。
以下、通信システム1において、パケットを用いて実施される通信に対するネットワークセキュリティ対策の一例について説明する。以下に示す通信システム1は、例えば、送信端末が通信を許可すべき接続要求元として認証されている場合、又は上記の通信の接続要求元が検疫されている場合に適用されてもよい。
(送信端末の認証)
通信を許可すべき接続要求元として送信端末を認証する認証方法として、端末装置の種別により異なる方法がとり得る。例えば、送信端末が汎用のパーソナルコンピュータなどであれば、その多くのものは、OS(Operating System)等の機能によりIEEE802.1X認証を利用できることが知られている。送信端末が汎用のものであれば、IEEE802.1X認証を利用することで、許容する通信の範囲を制限したり、送信元が認証済みであること示したりすることが可能になる。
これに対し、IoT機器については、IEEE802.1X認証を利用できないものがある。IEEE802.1X認証を利用できるIoT機器については、汎用の端末装置と同様にIEEE802.1X認証を適用できるが、IEEE802.1X認証を利用できないIoT機器については、汎用の端末装置と同様の手法を利用することができない。以下の説明で例示するIoT機器は、例えば、IEEE802.1X認証を利用できない通信端末装置の一例である。
そこで、通信システム1では、IoT機器については、下記のいずれかの方法で当該端末装置の認証を実施する。
第1の方法として、IoT機器の多くは特定の通信相手と通信することから、特定の通信相手に対して通信の接続を要求する端末装置を、正当なIoT機器として認証する。
第2の方法として、当該装置が送信する属性情報から、当該装置がIoT機器であることを判別する。例えば、当該装置のMACアドレスを上記の属性情報とし、その属性情報に基づいて、端末装置を、正当なIoT機器として認証してもよい。
通信システム1は、MLBR10が保持管理する物理ポート又は(セキュア)チャネルとMACアドレスとIPアドレスとの対応関係を管理する。例えば、通信システム1は、上記の対応関係を満足しないパケットについて、通信を許可しないものであると判定して廃棄する。なお、以下の説明における「パケット」には、当該パケットにレイヤ2でMACヘッダとトレーラを付加した所謂MACフレームなどフレームも含まれるものとし、これらを纏めて単に「パケット」という。
(MLBR10)
通信システム1を構成するMLBR10には、複数のタイプがあり、互いに構成と用途が異なる。利用者ネットワーク側の出口(egress)に設置するeMLBR11と、ネットワークNW1の利用者側入口(ingress)端部(エッジ)に設置するiMLBR12と、他のネットワークとの境界(border)に配置するbMLBR13は、MLBR10の一例である。MLBR10の各タイプを上記のように配置することにより、例えば、外部のネットワークから大量の送信元IPアドレスを詐称するパケットが送り付けられても、bMLBR13等が経路表の逆行経路から外れた当該攻撃パケットを遮断する。さらに、bMLBR13等は、その処理を実施するに当たり送信元IPアドレス以外の情報を組み合わせて利用して、より正確に処理をする。例えば、送信元IPアドレス以外の情報には、攻撃パケットの廃棄を要請した端末装置17もしくは実際に攻撃された通信端末等のIPアドレス、TCP等のレイヤ4(L4)のポート番号、制御フラグ等が含まれていてもよい。
図2を参照して、通信システム1における各MLBR10について説明する。図2は、通信システム1の構成例を示す図である。通信システム1におけるMLBR10の詳細について順に説明する。
(eMLBR11)
eMLBR11(通信制御装置)は、コントローラ111(制御部)と、IF部113と、IF部114と、スイッチ部112(転送部)と、記憶部115とを含む。コントローラ111と記憶部115の組み合わせは通信制御装置の一例である。
IF部113は、端末装置17又はデータ端末18とのインタフェースである。例えば、端末装置17又はデータ端末18と有線で通信する場合、IF部113は、通信回線が接続される物理ポートに対応させて設けられ、物理ポートを介して通信回線から取得したパケットをスイッチ部112に出力し、スイッチ部112により転送されたパケットを、物理ポートに接続される通信回線に出力する。また、例えば、端末装置17又はデータ端末18と無線で通信する場合、IF部113は、無線通信の(セキュア)チャネルに対応させて設けられ、特定の(セキュア)チャネルから取得したパケットをスイッチ部112に出力し、スイッチ部112により転送されたパケットを、特定の(セキュア)チャネルまたは有線の物理ポートに出力する。以下、物理ポートと(セキュア)チャネルを接続ポートと総称する。
IF部114は、他のMLBR10等と通信する際のインタフェースである。例えば、IF部114は、通信回線が接続される物理ポートに対応させて設けられ、物理ポートを介して通信回線から取得したパケットをスイッチ部112に出力する。また、スイッチ部112から転送されたパケットを、物理ポートに接続される通信回線に出力する。なお、他のMLBR10等との接続は無線回線であってもよい。
スイッチ部112は、コントローラ111により設定された条件に基づいて、IF部113とIF部114とコントローラ111等の間でパケットを転送する。例えば、スイッチ部112は、プロトコルスタックのレイヤ2(L2)からレイヤ4(L4)までの各ヘッダ情報と物理ポートの識別情報などに基づいて、当該パケットの転送を制御する。パケットを転送する処理の詳細は後述する。
記憶部115は、ROM(Read Only Memory)、EEPROM(Electrically Erasable and Programmable Read Only Memory)、HDD(Hard Disk Drive)等の不揮発性の記憶装置と、RAM(Random Access Memory)レジスタ等の揮発性の記憶装置によって実現される。記憶部115は、eMLBR11を機能させるためのプログラム、スイッチ部112を制御するための複数のテーブル、通信履歴情報等を格納する。
例えば、第1記憶部1151と第2記憶部1152と第3記憶部1153と第4記憶部1154と第5記憶部1155と第6記憶部1156とは、上記の複数のテーブルの一例である。第1記憶部1151は、eMLBR11が受信した受信パケット(受信データ)の転送を制限する条件を定めた第1規則(廃棄対象ブラックリスト)を記憶する。受信パケットは、ヘッダ情報とデータ(受信データ)とを含んで構成される。第2記憶部1152は、受信パケットの転送を許可する条件を定めた第2規則(通信許可ホワイトリスト)を記憶する。第3記憶部1153は、パケットの転送先を決定するルーティング条件を定めた第3規則(ルーティングテーブル、経路情報、転送許可ホワイトリスト)を記憶する。第4記憶部1154は、限定した通信相手との通信のみを許可する条件を定めた第4規則(通信相手許可ホワイトリスト、経路情報)を記憶する。第5記憶部1155は、所定の信頼度基準を満たした送信元を選択する条件(認証済送信元情報)を定めた第5規則を記憶する。第6記憶部1156は、送信元もしくは宛先を隠ぺい又は詐称したパケットを検出するための条件(匿名アドレスリスト)を定めた第6規則を記憶する。
コントローラ111は、例えば、CPU(Central Processing Unit)等のプロセッサを有する。コントローラ111は、記憶部115に記憶されているプログラムにより、複数の物理ポートを有するスイッチ部112から得た情報と、記憶部115に記憶されている複数のテーブルの情報の少なくとも何れかの情報に基づいて、スイッチ部112を制御する。例えば、コントローラ111は、管理ホスト15から取得した各種情報、端末装置17又はデータ端末18からの要請などに基づいて、第1記憶部1151や第2記憶部1152、第3記憶部1153、第4記憶部1154、第5記憶部1155、第6記憶部1156を必要に応じて更新し、スイッチ部112の転送処理を変更する。より具体的には、後述するように、第1記憶部1151に格納された第1規則はスイッチ部112内の廃棄テーブル1121に、第2記憶部1152に格納された第2規則はスイッチ部112内のMLBテーブル1124に、第3記憶部1153に格納された第3規則はスイッチ部112内のルーティングテーブル1125に、第4記憶部1154に格納された第4規則はスイッチ部112内のQoSテーブル1126に、第5記憶部1155に格納された第5規則はスイッチ部112内のMLBテーブル1124に、第6記憶部1156に格納された第6規則はスイッチ部112内の匿名フラグ設定テーブル1127(第2フラグ設定手段)に、登録され、各テーブルパケットの転送を制御する際に参照される。その際に、パケットヘッダの情報が各テーブルの機能により適宜変更される。
通信システム1における通信メッセージは、フレーム又はパケットとして通信される。フレーム又はパケットのヘッダ情報には、通信メッセージを含むフレーム又はパケットを識別する識別情報が付与される。
特定情報取得部1111は、スイッチ部112を介する通信において、通信相手を限定して通信するデータ端末18などの対象装置を特定する特定情報又はデータ端末18などの対象装置による通信を特定する特定情報の少なくとも何れかを取得する。特定情報の詳細は後述する。
識別情報取得部1112は、特定情報に基づいて特定される通信を識別する識別情報を取得する。識別情報取得部1112は、データ端末18からの通信要求に起因する認証処理、検疫処理、レイヤ3アドレスの割り当て処理の一部又は全部の処理の結果から、識別情報を取得してもよい。識別情報を取得する方法の詳細は後述する。
WL管理部1113は、通信を許可する条件を抽出し、ホワイトリストを生成して、その条件を管理する。このホワイトリストには、第2規則の通信許可ホワイトリストと第4規則の通信相手許可ホワイトリストの何れか一方又は両方が含まれる。
出力制御部1114は、複数の出力ポートを有するスイッチ部112の出力ポートを選択するためのルーティング情報を生成する。WL管理部1113と出力制御部1114についての詳細は後述する。
管理部1115は、識別情報取得部1112により取得された送信元の認証処理の結果、又は、検疫処理の結果を管理する。また、管理部1115は、それらの結果から、認証された送信元、又は、検疫処理の結果に異常が発見されなかったパケットの送信元に関する送信元認証情報を抽出して第5記憶部1155に書き込む。
また、管理部1115は、外部の装置から提供される「認証済送信元条件」などに関する情報を取得して、第5記憶部1155に書き込む。また、管理部1115は、外部の装置から提供される「匿名アドレスリスト」などに関する情報を取得して、第6記憶部1156に書き込む。
(iMLBR12)
iMLBR12は、コントローラ121と、IF部123と、IF部124と、スイッチ部122と、記憶部125とを含む。記憶部125が備える第1記憶部1251と第2記憶部1252と第3記憶部1253と第4記憶部1254と第5記憶部1255と第6記憶部1256とは、上記の複数のテーブルの一例である。第1記憶部1251は、iMLBR12が受信した受信パケット(受信データ)の転送を制限する条件を定めた第1規則(廃棄対象ブラックリスト)を記憶する。受信パケットは、ヘッダ情報とデータ(受信データ)とを含んで構成される。第2記憶部1252は、受信パケットの転送を許可する条件を定めた第2規則(通信許可ホワイトリスト)を記憶する。第3記憶部1253は、パケットの転送先を決定するルーティング条件を定めた第3規則(ルーテイングテーブル、経路情報)を記憶する。第4記憶部1254は、限定した通信相手との通信のみを許可する条件を定めた第4規則(通信相手許可ホワイトリスト、経路情報)を記憶する。第5記憶部1255は、「所定の信頼度基準を満たした送信元を選択する条件(認証済送信元情報)を定めた第5規則を記憶する。第6記憶部1256は、送信元もしくは宛先を隠ぺい又は詐称したパケットを検出するための条件(匿名アドレスリスト)を定めた第6規則を記憶する。
第5規則に対応する認証済送信元情報は、MLBテーブル1224に登録された端末の中で、さらに所定の信頼度基準を満たしたもので、ホワイトリストに相当する。上記の所定の信頼度基準とは、例えば、IEEE802.1X認証や検疫に用いた所定の基準を示し、IoT装置を対象としたARPリフレクションなどの簡易認証の基準は適用させないものとする。
上記の所定の信頼度基準を満たすパケットであれば、認証フラグF1がeMLBR11によってセットされる。端末装置が勝手に認証フラグF1をセットしたパケットをeMLBR11またはiMLBR12に送信したとしても、これを受信したeMLBR11またはiMLBR12は、セットされていた認証フラグF1をリセットする。認証レベル又は検疫レベルをMLBテーブル1124に付加するか、認証・検疫テーブルとして別に設けてもよい。管理ホスト15は、各端末装置について定期的に再認証と再検疫を行い認証レベルと検疫レベル、並びに、認証・検疫テーブルを更新してもよい。
一方、匿名アドレスリストは、接続経路を隠ぺいしたIPアドレスや偽装したメールアドレス、偽装したアカウント、偽装した電話番号、偽装したURL、偽装したURI、偽装したURN、偽装したドメイン名、又は偽装したFQDNなどを持つパケットの識別に当たるものである。これに該当するパケットは、eMLBR11又はiMLBR12又はbMLBR13によってリスクフラグFRがセットされる。
コントローラ121は、例えば、CPU等のプロセッサ、揮発性又は不揮発性の記憶装置等を有する。コントローラ121は、記憶部125に記憶されているプログラムにより、複数の物理ポートを有するスイッチ部122から得た情報と、記憶部125に記憶されている複数のテーブルの情報の少なくとも何れかの情報に基づいて、スイッチ部122を制御する。例えば、コントローラ121は、管理ホスト15から取得した各種情報、端末装置17又はデータ端末18からの要請などに基づいて、第1記憶部1251や第2記憶部1252、第3記憶部1253、第4記憶部1254、第5記憶部1255、第6記憶部1256を必要に応じて更新し、スイッチ部122の転送処理を変更する。スイッチ部122は、各段のフローテーブルとして、廃棄テーブル1221、パケットタイプテーブル1222、SCOPEテーブル1223、MLBテーブル1224、ルーティングテーブル1225、QoSテーブル1226、及び匿名フラグ設定テーブル1227を備える。例えば、第1記憶部1251に格納された第1規則はスイッチ部122内の廃棄テーブル1221に、第2記憶部1252に格納された第2規則はスイッチ部122内のMLBテーブル1224に、第3記憶部1253に格納された第3規則はスイッチ部122内のルーティングテーブル1225に、第4記憶部1254に格納された第4規則はスイッチ部122内のQoSテーブル1226に、第5記憶部1255に格納された第5規則はスイッチ部122内のMLBテーブル1224に、第6記憶部1256に格納された第6規則はスイッチ部122内の匿名フラグ設定テーブル1227に、登録され、パケットの転送を制御する。
(bMLBR13)
bMLBR13は、コントローラ131と、IF部133と、IF部134と、スイッチ部132と、記憶部135とを含む。
記憶部135が備える第1記憶部1351と第2記憶部1352と第3記憶部1353と第4記憶部1354と第5記憶部1355と第6記憶部1356とは、上記の複数のテーブルの一例である。第1記憶部1351は、bMLBR13が受信した受信パケット(受信データ)の転送を制限する条件を定めた第1規則(廃棄対象ブラックリスト)を記憶する。受信パケットは、ヘッダ情報とデータ(受信データ)とを含んで構成される。第2記憶部1352は、受信パケットの転送を許可する条件を定めた第2規則(通信許可ホワイトリスト)を記憶する。第3記憶部1353は、パケットの転送先を決定するルーティング条件を定めた第3規則(ルーテイングテーブル、経路情報)を記憶する。第4記憶部1354は、限定した通信相手との通信のみを許可する条件を定めた第4規則(通信相手許可ホワイトリスト、経路情報)を記憶する。第5記憶部1355は、所定の信頼度基準を満たした送信元を選択する条件(認証済送信元情報)を定めた第5規則を記憶する。具体的には、相互認証したMLBR10が該当する。第6記憶部1356は、送信元もしくは宛先を隠ぺい又は詐称したパケットを検出するための条件(匿名アドレスリスト)を定めた第6規則を記憶する。
コントローラ131は、例えば、CPU等のプロセッサ、揮発性又は不揮発性の記憶装置等を有する。コントローラ131は、記憶部135に記憶されているプログラムにより、複数の物理ポートを有するスイッチ部132から得た情報と、記憶部135に記憶されている複数のテーブルの情報の少なくとも何れかの情報に基づいて、スイッチ部132を制御する。例えば、コントローラ131は、管理ホスト15から取得した各種情報、端末装置17又はデータ端末18からの要請などに基づいて、第1記憶部1351や第2記憶部1352、第3記憶部1353、第4記憶部1354、第5記憶部1355、第6記憶部1356を必要に応じて更新し、スイッチ部132の転送処理を変更する。スイッチ部132は、各段のフローテーブルとして、廃棄テーブル1321、パケットタイプテーブル1322、SCOPEテーブル1323、MLBテーブル1324、ルーティングテーブル1325、QoSテーブル1326、及び匿名フラグ設定テーブル1327を備える。例えば、第1記憶部1351に格納された第1規則はスイッチ部132内の廃棄テーブル1321に、第2記憶部1352に格納された第2規則はスイッチ部132内のMLBテーブル1324に、第3記憶部1353に格納された第3規則はスイッチ部132内のルーティングテーブル1325に、第4記憶部1354に格納された第4規則はスイッチ部132内のQoSテーブル1326に、第5記憶部1355に格納された第5規則はスイッチ部132内のMLBテーブル1324に、第6記憶部1356に格納された第6規則はスイッチ部132内の匿名フラグ設定テーブル1227に、登録され、パケットの転送を制御する。
上記のとおり、各MLBR10は、それぞれコントローラとスイッチ部とを含む。MLBR10のコントローラは、他のMLBR10のコントローラから取得した情報等に基づいて、自装置のコントローラ及びスイッチ部をそれぞれ制御する。
(端末装置17)
端末装置17は、CPUと、ROM、EEPROM、HDD、RAM、レジスタ等の記憶装置と、を含むコンピュータであり、実行するプログラムにより端末或いはサーバとして機能する。例えば、端末装置17は、パーソナルコンピュータ、タブレット等の汎用端末である。端末装置17のCPUは、プログラムの実行により、端末装置17を、IDS/IPSとして機能させてもよい。この場合、端末装置17は、端末装置17に実装したもしくは端末装置17が接続しているローカルエリアネットワークに接続されたIDS/IPSにより、所定の通信量又は頻度を超えて到来するパケットや、その振る舞いの異常さもしくは既知の攻撃パターン(シグネチャ)や既知の攻撃パターンから予測される未知の攻撃パターン、もしくは既知のマルウェアや既知のマルウェア等から予想されるマルウェア、既知のエクスプロイトコード(プログラムのセキュリティ上の脆弱性(セキュリティホール)を攻撃するために作成されたプログラムの総称)もしくは既知のエクスプロイトコードから予測される未知のエクスプロイトコードなどから攻撃パケットとして検出する。なお、上記の検出に当たり、ハニーポットを設置してもよい。ハニーポットとは、不正アクセスを行う攻撃パケットをおびき寄せ、攻撃をそらすためのおとりであり、ウイルスやワームの検体の入手、記録された操作ログ・通信ログなどから不正アクセスの手法や傾向の調査などに用いられるものである。例えば、端末装置17は、攻撃パケットを検出した場合に、ネットワークNW1への接続を遮断する。
eMLBR11は、ネットワークNW1における攻撃パケットの転送を中断させることを要求するメッセージをiMLBR12やbMLBR13などに対して送信してもよい。例えば、iMLBR12などは、攻撃パケットの転送を中断させることを要求するメッセージを、攻撃パケットを廃棄することを要求する廃棄要請メッセージとして受け付けて、攻撃パケットを廃棄してもよい。以下の説明では、攻撃パケットの転送を中断させることを要求するメッセージをDRM(Dropping Request Message)と呼ぶ。例えば、端末装置17は、自装置の正当性と完全性を示す検証用データもしくは認証コードをDRMに付加してeMLBR11などへ送信する。さらに、DRMは、攻撃パケットの送信元アドレスに接近するようMLBR10間でバケツリレーされ、DRMを受信した各MLBR10では、前述の第1規則として第1記憶部に登録する。
(データ端末18)
データ端末18は、CPUと、ROM、EEPROM、HDD、RAM、レジスタ等の記憶装置と、を含むコンピュータであり、実行するプログラムにより端末或いはサーバとして機能するいわゆるIoT機器である。以下の説明に例示するデータ端末18は、パケットのタイプとしてIPv4のパケットを利用して通信するものとし、IEEE802.1X認証を利用できないものとする。例えば、データ端末18は、ネットワークに接続される各種センサ、スマートメータ、コネクテッドカー(自動車)、プリンター、テレビ、冷蔵庫、スマート家電、M2M(Machine to Machine)デバイス、ネットワークカメラ、自動販売機など多種多様な端末を総称する。これらの端末の通信相手は、特定のアドレス又はURL又はURI又はURNに限定される場合が多い。
(スイッチ部を制御して端末装置のセキュリティ対策を実施するための処理)
図3を参照して、端末装置のセキュリティ対策を実施するための処理について説明する。図3は、端末装置のセキュリティ対策を実施するための処理の手順を示すフローチャートである。
通信システム1は、端末装置を、通信システム1において双方向通信を実施する端末として登録する(S10)。
通信システム1において、例えば、上記の処理(S10)は、下記する複数の処理の組み合わせとして実現される。
まず、通信システム1は、通信相手を限定する対象の端末装置を特定する(S11)。
次に、通信システム1は、上記で特定された対象を識別可能な識別情報(第1識別情報)を取得する(S12)。
次に、通信システム1は、上記で特定された対象の通信相手を識別可能な識別情報(第2識別情報)を取得する(S13)。
次に、通信システム1は、限定する対象として特定された対象から送信されたパケットについて、そのパケットの通信相手を、上記で取得した識別情報(第1識別情報と第2識別情報)に基づいて限定するための通信相手許可ホワイトリストの要素(第1要素)を生成する(S14)。
次に、通信システム1は、限定する対象として特定された対象宛に送信されたパケットの通信相手を、上記で取得した識別情報(第1識別情報と第2識別情報)に基づいて限定するための通信相手許可ホワイトリストの要素(第2要素)を生成する(S15)。
次に、通信システム1は、通信相手許可ホワイトリストに上記の第1要素と第2要素とを追加する(S16)。
次に、通信システム1は、S11において特定した対象の端末装置のうち、所定の信頼度基準を満たした送信元(端末装置)を選択し、その識別情報を認証リストに追加する(S18)。
次に、通信システム1は、信頼を置ける認定機関の監視装置から、匿名アドレスを利用して通信することを許容するノードのアドレスリストを取得する。例えば、管理ホスト15は、配信されたノードのアドレスリストから匿名アドレスリストを生成して登録する(S19)。
次に、通信システム1は、通信相手許可ホワイトリストに登録後に、第1要素と第2要素とに基づいて実際の通信を保護するための処理を実施して(S20)、パケットの信頼度を示すフラグを、当該パケットに設定する(S22)。
これにより、通信システム1は、端末装置のセキュリティ対策を実施する。
[より具体的な一実施例]
以下の説明では、OpenFlow(登録商標)の技術を適用してMLBR10を構成する場合を例示する。
(分散型のコントローラ)
OpenFlowの各ノードは、OpenFlowコントローラにより制御されるOpenFlowスイッチ部を備える。一般的なOpenFlowの技術では、1つのOpenFlowコントローラが複数のOpenFlowスイッチを一元管理する。
これに代えて、本実施形態のMLBR10は、コントローラ111とスイッチ部112とを備えており、MLBR10毎に設けられたコントローラ111がスイッチ部112を管理する。コントローラ111は、他のMLBR10のコントローラと独立に機能してもよく、連系して機能してもよい。この点が一般的なOpenFlowの構成と異なる。以下、上記の相違点を中心に説明する。
例えばコントローラ111は、特定情報取得部1111、識別情報取得部1112、WL管理部1113、出力制御部1114、管理部1115、パケットイン(Packet-In)1116、パケットアウト(Packet-Out)1117、及び、フロー変更出力部(Flow-Mod)1118を備える。
パケットイン1116は、スイッチ部112からの情報を受信する。パケットアウト117は、パケットとその宛先情報とを、スイッチ部112宛に出力する。フロー変更出力部(Flow-Mod)1118は、スイッチ部112の設定を変更するための情報をスイッチ部宛に出力する。スイッチ部112における他の構成の詳細については、後述する。
MLBR10のコントローラは、少なくとも自装置のスイッチ部を制御して、その通信のセキュリティ性を確保する。なお、MLBR10のコントローラは、互いに通信することにより、分散型のコントローラとして機能してもよく、その場合に、例えばDRMを順に転送する。上記のとおり、DRMは、各MLBR10における転送を制限するための情報である。MLBR10は、DRMが通知されるまでに構成されていた転送情報を変更することなく、転送を制限する制限条件を追加し、また、制限条件を単位にして個々に削除する。これにより、通信システム1は、ネットワークNW内の転送規則を維持したまま、転送を制限する制限条件のみを変更する。
(スイッチ部の一例)
図4から図10を参照して、スイッチ部のより具体的な一例について説明する。図4は、eMLBR11を示す図である。スイッチ部112は、各段のフローテーブルとして、廃棄テーブル1121、パケットタイプテーブル1122、SCOPEテーブル1123、MLBテーブル1124、ルーティングテーブル1125、QoSテーブル1126及び、匿名フラグ設定テーブル1127を備える。図5Aから図10のそれぞれは、廃棄テーブル1121、匿名フラグ設定テーブル1127、パケットタイプテーブル1122、SCOPEテーブル1123、MLBテーブル1124、ルーティングテーブル1125、及びQoSテーブル1126の一例を示す図である。
(スイッチ部における各種テーブルの一例)
スイッチ部112において、廃棄テーブル1121には、廃棄するパケットのフローエントリが必要数格納される。廃棄するパケットのフローエントリは、前述のパケットの転送を制限する条件である第1規則(ブラックリスト)に対応する。例えば図5Aに示すように、廃棄テーブル1121は、格納されたフローエントリにマッチしたパケットを廃棄(drop)する。格納されたフローエントリにマッチしなかったパケットは、パケットタイプテーブル1122による選択処理の対象にする。フローエントリに規定する制限情報は、1つのIPアドレスであってもよく、或いは、複数のIPアドレスを含むネットワークアドレスであってもよい。さらに、宛先IPアドレスや宛先ポート番号、送信元ポート番号、パケット長、パケットタイプ、TCP制御フラグ等を適宜組み合わせて規定することによって、攻撃パケットと同じ宛先IPアドレスに送信しようとしている他の一般ユーザの通信を妨げることを抑制することができる。例えば、廃棄テーブル1121のフローエントリとして、転送を制限する領域に対応するネットワークアドレスをマッチ条件として規定する。廃棄テーブル1121は、そのネットワークアドレスが示すアドレス空間に含まれた送信元IPアドレスが付与されているパケットの転送を制限する。図5Aに示す「129.168.3.0/24」は、IPv4で記述した場合のネットワークアドレスの一例である。
例えば図5Bに示すように、匿名フラグ設定テーブル1127は、匿名アドレスリストを保持しており、匿名アドレスリスト中のいずれかのアドレスに、送信元アドレス又は宛先アドレスが一致するパケットについて匿名フラグF2をセットし、一致しないパケットについて匿名フラグF2をリセットする。匿名アドレスリストは、例えば特定の認定機関の監視装置から要請されたアドレス、使い捨て型で利用される電子メールアドレス、転送履歴情報として残された情報のうち、アドレス詐称(なりすまし)などの疑義が含まれた電子メールの送信元アドレスなどを含めて形成されるものであってもよい。転送履歴情報に疑義が含まれていることの検出の一例は、SMTP(Simple Mail Transfer Protocol)サーバ等の電子メールサーバと、電子メールサーバのIPアドレスとドメイン名の対応関係の不整合が挙げられる。なお、匿名アドレスリストには、パケットの送信元又は宛先を特定可能な、IPアドレス、電子メールアドレス、電話番号、アカウント情報、URL、URI、URN、ドメイン名、FQDNなどが含まれてもよい。匿名フラグ設定テーブル1127は、匿名アドレスリストに基づいた処理を実施しない場合には、廃棄テーブル1121による処理の結果を、次段のパケットタイプテーブル1122の処理対象にする。
パケットタイプテーブル1122は、廃棄テーブル1121により廃棄されずに残ったパケットであって、匿名フラグ設定テーブル1127により匿名フラグが必要に応じてセットされたパケットと、コントローラから取得したパケットを処理対象のパケットとして、パケットのタイプ毎のフローエントリを格納する。例えば図6に示すように、パケットタイプテーブル1122に格納するフローエントリには、IPv4のパケットであることを特定するものと、IPv6のパケットであることを特定するものと、コントローラ宛に送信するパケットであることを特定するものが含まれる。例えば、パケットタイプテーブル1122として、各パケットのタイプに対応するアクションを下記のように定義する。パケットタイプテーブル1122は、自MLBR10宛のICMPv6(Internet Control Message Protocol for IPv6)、又はARP(Address Resolution Protocol)、ICMP(Internet Control Message Protocol)、DHCP(Dynamic Host Configuration Protocol)、DRP(Dropping Request Message Protocol)、RIP(Routing Information Protocol)、OSPF(Open Shortest Path First)、BGP(Border Gateway Protocol)、UPnP(Universal Plug and Play)、DNS(Domain Name System)、SIP(Session Initiation Protocol)、NTP(Network Time Protocol)などの各プロトコルにより通信制御に利用されるパケットをコントローラ111宛のパケット(Packet−In)とし、上記を除くIPv4のパケットをMLBテーブル1124による処理の対象にし、上記を除くIPv6のパケットをSCOPEテーブル1123による処理の対象にする。上記のDRPは、DRMに検証データもしくは認証コードを付加した規格である。DRPの詳細については後述する。パケットタイプテーブル1122は、コントローラ111宛のパケットのうち、コントローラ111による判定結果に基づいて、必要であればFlow−Modにて各テーブルを更新するとともに、他のMLBRに転送が必要なパケットは、スイッチ部112に戻す(Packet−Out)。
SCOPEテーブル1123は、パケットタイプテーブル1122によりIPv6のパケットであると特定されたパケットに対し、スコープ(SCOPE)の逸脱有無を判定して当該パケットのルーティングを許可するか否かを特定する。例えば図7に示すように、当該パケットの送信元IPアドレスと宛先IPアドレスが同じスコープ(グローバルアドレス、ユニークローカルアドレス、リンクローカルアドレスなど)に属し、ルーティングを許可すると判定した場合には、SCOPEテーブル1123は、当該パケットをMLBテーブル1124による処理の対象にする。一方、当該パケットのスコープに逸脱がありルーティングを許可しないと判定した場合には、SCOPEテーブル1123は、対象のパケットを廃棄する。
MLBテーブル1124は、パケットタイプテーブル1122によりIPv4のパケットであると特定されたパケット、又は、SCOPEテーブル1123によりルーティングを許可するIPv6のパケットであると特定されたパケットに対し、当該パケットが転送を許可すべきパケットであるか否かを特定する。その特定の条件は第2規則(通信許可ホワイトリスト)に対応する。MLBテーブル1124は、IoT装置やホスト等のMACアドレスとIPアドレス及びeMLBR11の接続ポートの識別情報を組み合わせて、当該パケットが偽装パケットでないかをチェックする通信許可ホワイトリストとして機能するが、IoT装置から送信されたパケットであるか否かを判別することもできる。例えば図8に示すように、マッチ条件には、スイッチ部112の入力ポート番号(IN_Port)、IoT装置に割り付けられているMACアドレスとIPアドレスなどが設定される。例えば、当該パケットが、IoT装置から送信されたパケットであると判別すると(図8上段)、QoSテーブル1126(図10)に遷移し、通信相手として許可された宛先アドレスであるかをQoSテーブル1126によって判定し、該当する通信相手許可ホワイトリストがQoSテーブル1126に存在した場合、QoSテーブル1126は、当該パケットをルーティングテーブル1125による転送処理の対象(図10上段)にする。なお、図8は、MLBテーブル1124の一例を示す。
さらに、MLBテーブル1124は、転送を許可すべきパケットであると判定されたパケットに対して、第5規則に従って認証フラグF1をセットするようにしてもよい(図8下段を除く各段)。なお、認証フラグF1として、認証レベル又は検疫レベルを示すようにしてもよい。
図9に示すように、ルーティングテーブル1125は、MLBテーブル1124(図8)により当該パケットが偽装されたパケットではないと判定された場合、当該パケットをルーティングテーブル1125により規定される物理ポートに出力するのが基本であるが、ルーティングテーブル1125によりIoT装置宛のパケットであることが判明した場合(図9上段)は、QoSテーブル1126(図10)に遷移し、送信元が該IoT装置の通信相手であるか否かを判定し、該当する通信相手許可ホワイトリストが存在した場合に、転送処理の対象にする(図10中段)。ルーティングテーブル1125は、当該パケットが転送すべきパケットでないと特定された場合(図9下段)、当該パケットをルーティングテーブル1125の第3規則に従って、廃棄処理の対象にしてもよい。
QoSテーブル1126は、MLBテーブル1124により当該パケットが、IoT装置から送信されたパケット、又は、IoT装置宛に送信されたパケットであると判定されたパケットに対し、所望のQoSを設定する。QoSとして設定する条件は、第4規則(通信相手許可ホワイトリスト)に対応する。例えば図10に示すように、QoSテーブル1126における所望のQoSには、送信元アドレスと宛先アドレスがマッチ条件に一致する場合に、パケットの転送を許可することで、許可される範囲を超えた宛先への転送を制限する(図10下段)ことが含まれる。
(第5規則に基づいた認証フラグF1を利用した認証処理)
通信システム1におけるMLBR10、端末装置17、データ端末18などの各装置(受信端末)は、前述の第5規則に基づいた認証フラグF1(第1フラグ)を用いて通信することで、通信の接続要求元が認証されていること又は接続要求元から送信されたパケットが検疫されていることを、当該パケットを受信することにより検出可能になる。認証フラグF1に、通信の接続要求に対する判定の結果を反映することにより、パケットを受信した受信端末又は受信エンティティは、認証フラグF1の状態に基づいて、パケットを送信した送信元の認証処理及び検疫処理を行うことを間接的に実施することができる。以下の説明において、パケットを受信した受信端末又は受信エンティティのことを、受信端末等ということがある。パケットを受信する側に設けられた端末装置17、データ端末18などは、受信端末等の一例である。このような認証フラグF1を用いることにより、受信端末におけるパケットの認証処理及び検疫処理による負荷を軽減することができる。以下、その一例について説明する。
MLBR10により構成されるネットワークNW1では、認証フラグF1が付与されたパケットを用いて通信する。例えば、eMLBR11は、受信したパケットの認証処理及び検疫処理を実施して、その認証処理及び検疫処理の結果を認証フラグF1に反映させる。以下の説明において、認証フラグF1がセットされた状態は、パケットを送信した送信元が所定の条件を満たすものである場合を示すものとする。
上述したとおり、MLBテーブル1124は、転送を許可するパケットに対して認証フラグF1をセット状態にし、転送を許可しないパケットを廃棄する。
なお、MLBR10は、認証フラグF1が付与されていないパケットを、認証フラグF1が付与されたパケットと混在させて通信することができる。その場合、認証フラグF1が付与されていないパケットは、認証フラグF1がリセット状態と同様の信頼度と判断される。
図11Aは、IPv4のパケットヘッダを示す図である。図11A(a)に示すように、IPv4のパケットヘッダは、バージョン、ヘッダ長、サービス種別(Type of Service)、全長、識別子、フラグ、断片位置、生存時間、プロトコル、チェックサム、送信元アドレス、宛先アドレス、拡張情報の各フィールドにより構成されている。このパケットヘッダの後に、上位プロトコルにより指定されたデータを割り付けるペイロード部が続く。
図11A(b)に、上記のうちサービス種別フィールドについて示す。サービス種別フィールドにおけるビット配列は、3ビット分の優先度、1ビットずつの遅延度、転送量、信頼性、2ビット分の予備ビットがそれぞれ割り付けられている。ここで、上記の予備ビットの2ビットに、認証フラグF1と、リスクフラグRFとをそれぞれ割り付ける。
受信端末等は、このように設定された認証フラグF1の状態を判定することにより、パケットの通信元である送信端末又は送信エンティティについて間接的に判定して、それを認証することができる。以下の説明において、パケットの通信元である送信端末又は送信エンティティのことを、単に、送信端末等ということがある。パケットを送信する側に設けられた端末装置17、データ端末18などは、送信端末等の一例である。
受信端末等は、受信したパケットのパケットヘッダに、ネットワークセキュリティ上のリスクが比較的低いことを示すように認証フラグF1が設定されたパケットを選択的に受信する受信手段を備えて構成してもよい。なお、上記のような受信端末等には、eMLBR11やファイアウォールなどが含まれる。
(認証フラグF1の設定方法)
図12から図13を参照して、認証フラグF1について説明する。図12は、認証フラグF1の設定に関する条件を示す図である。図13は、eMLBR11における認証フラグF1の設定に関する状態遷移図である。
eMLBR11は、受信したパケットの認証フラグF1の状態に依存することなく認証フラグF1を設定する。eMLBR11は、所定の認証レベル及び/又は検疫レベルを満たした送信端末からのパケットを検出することにより(<eF1SET>)、認証フラグF1をセットする。一方、eMLBR11は、認証されていない送信端末からのパケットを検出することにより(<eF1RST>)、認証フラグF1をリセットする。
なお、eMLBR11が設けられていない場合など、eMLBR11を経由しないパケットをiMLBR12及びbMLBR13が受信して、認証フラグF1の状態を設定したり、変更したりする場合がある。
図14は、iMLBR12とbMLBR13における認証フラグF1の設定に関する状態遷移図である。MLBR10は、通信に先立ってMLBR10間の認証処理を実施する。
前述の図12に示すように、iMLBR12は、所定の認証レベル及び/又は検疫レベルを満たした送信端末からのパケットを検出することにより(<iF1SET>)、認証フラグF1をセットする。一方、iMLBR12は、認証されていない送信端末からのパケットを検出することにより(<iF1RST>)、認証フラグF1をリセットする。また、iMLBR12は、eMLBR11−iMLBR12間で転送されるパケットに付加されたメッセージ認証(AH)の検証に失敗した状態を、認証フラグF1の不正な書き換えが行われ得る状態と判定する。iMLBR12は、上記の状態を検出すると(<eF1RST>)、そのパケットを、不正なパケットと見做して、そのパケットの認証フラグF1をリセットする。なお、iMLBR12は、上記の条件に該当しなければ、その認証フラグF1の状態を保持して、パケットを転送する。
また、bMLBR13は、所定の認証レベル及び/又は検疫レベルを満たした送信端末からのパケットを検出することにより(<bF1SET>)、認証フラグF1をセットしてもよい。一方、bMLBR13は、認証されていない送信端末からのパケットを検出することにより(<bF1RST>)、認証フラグF1をリセットする。bMLBR13は、iMLBR12−bMLBR13間、及び、bMLBR13−bMLBR13間のメッセージ認証の検証に失敗した状態を、認証フラグF1の不正な書き換えが行われ得る状態と判定する。bMLBR13は、上記の状態を検出すると(<bF1RST>)、そのパケットを、不正なパケットと見做して、そのパケットの認証フラグF1をリセットする。なお、bMLBR13は、上記の条件に該当しなければ、その認証フラグF1の状態を保持して、パケットを転送する。
受信端末等は、このように認証フラグF1がリセットされたパケットを受信することにより、少なくとも認証フラグF1がセットされたパケットと同等の信頼度を、そのパケットが満たさないということを、検出することができる。
なお、eMLBR11によって設定された認証フラグF1の状態が、受信端末等まで転送される間に書き換えられてしまうと、認証フラグF1が示す状態を信頼できなくなるリスクがある。このようなリスクを回避するために、例えば、そのパケットの中継経路で、不正な書き換えが行われ得る状態が検出された場合には、MLBR10は、当該パケットに認証フラグF1がセットされていても、その状態をリセットしてもよい。
(認証フラグF1を利用する装置)
認証フラグF1を利用する装置として、eMLBR11や、MLBR10以外の装置が挙げられる。認証フラグF1のセット状態を検出する用途としては、eMLBR11、受信端末等、ファイアウォール等の装置が、パケットを選択して受信する判断基準として利用する用途が挙げられる。認証フラグF1のリセット状態を検出する用途としては、IDS(Intrusion Detection System)、IPS(Intrusion Prevention System)、DPI(Deep Packet Inspection)等の装置がサイバー攻撃やサイバー犯罪などのマルウェアなどに汚染もしくは不正パケットかを検査する際に優先的に検査する信頼度の低いパケットを受信した履歴データとして利用する用途が挙げられる。
上記のとおり通信システム1では、通信によるネットワークセキュリティ上のリスクが比較的低いパケットであることを示す認証フラグF1が、パケットのパケットヘッダの所定位置に設けられている。MLBR10のスイッチ部112等は、認証フラグF1が設けられているパケットであって所定の信頼度基準を満たした送信元から送信されたパケットに対しては、上記のリスクが比較的低いことを示すように認証フラグF1をセットするものとして構成できる。
また、スイッチ部112は、認証フラグF1として、通信の接続要求元が認証されていること又は接続要求元が検疫されていることを示すフラグ(第1フラグ)が設けられ、通信の接続要求に対する判定の結果により、上記フラグの状態を設定するMLBテーブル1124を含む。MLBテーブル1124は、第1フラグ設定手段の一例である。
以上に示した認証フラグF1を用いることにより、下記のことが実施可能になる。
[1]IDSやIPSが、認証フラグF1が立っていないものから優先的にDPIなどを行うことによって、IDSやIPSの処理を軽減する。
[2]認証フラグF1が立っていないパケットを直ちに受信するのではなく、DPIを行って異常がないことが確認できた後に、そのパケットを、内部ネットワークないしはコンピュータに取り込む。
[3]要求されるセキュリティレベルが高い組織や、同組織で利用されるシステムでは、認証フラグF1が立っていないパケットの受信を拒否し廃棄する。
上記の例に示したように、認証フラグF1が立っているか否かによって、そのパケットをどのように処理するかは、受信者側の判断、つまり受信装置等の設定に委ねるものとなる。
(第2規則の通信許可ホワイトリストの生成について)
第2規則の通信許可ホワイトリストは、例えば下記する方法で生成する。
最初に、ルータがパケットを転送するためのアルゴリズムの一つとして知られているuRPF((unicast Reverse Path Forwarding(RFC3704))について説明する。ルータは、パケットを受信したらパケットの宛先IPアドレスを検出し、ルーティングテーブルを参照してパケットの次ホップノードと出力インタフェース(接続ポート)を決める経路制御を行っている。uRPFはこの経路制御機能を応用したものである。ルータは、uRPFにより、受信したパケットの送信元IPアドレスを、ルーティングテーブルに照会することで、当該パケットが本来の経路を辿ってきたものであるか否かを判定する。ルータは、ルーティングテーブル内に該当するネットワークアドレスがなければ、当該パケットをアドレス詐称パケットとみなして廃棄する。このように、uRPFの経路制御のアルゴリズムは、パケットフィルタリング技術として利用できるものである。uRPFには、ストリクトモード(strict mode)とルースモード(loose mode)とがある。前者は、パケットを受信したインタフェースと送信元IPアドレスとを組み合わせてフィルタリングするのに対して、後者は送信元IPアドレスのみでフィルタリングする。
ルーティングテーブルを参照するuRPFをインターネットの利用者側エッジに設定すれば、これにより、ルーティングテーブルから外れたアドレス詐称パケットを遮断できる。uRPFは、上記のように、通信方向の対称性が保障される経路を利用する構成に適用可能である。
また、他の事例として、ネットワークNW1に、1台の境界ルータを介して接続しているネットワークNW4(たとえば、下位プロバイダ)であれば、上記の境界ルータにuRPFを設定することにより上記と同様の効果が期待できる。
ところで、下記する事例のように、一般的なuRPFを利用することは適さないことがある。
(事例1)通信方向の対称性が保障されない経路を利用する構成に適用する場合。
通信方向の対称性が保障されない経路を利用する構成に適用する場合として、上位プロバイダのように複数台の境界ルータを保持し複数のプロバイダと複数の経路で接続している場合が挙げられる。例えば、上記のように構成された上位プロバイダのネットワークでは、パケットの転送経路がネットワークの状態(障害発生や輻輳など)によって変化するため、通信方向の対称性が保障されないことがある。このような場合、uRPFを設定していると、ルーティングテーブルに存在しない送信元IPアドレスを持つ非不正パケット、すなわち最善経路でない迂回経路から転送されてきた善良な利用者からのパケットを誤廃棄する可能性がある。
(事例2)ルーティングテーブルに規定されたネットワークアドレス空間と同一のネットワークアドレス空間内からアドレス詐称パケットが送信され得る場合。
uRPFは、送信元IPアドレスの正当性を、ルーティングテーブルを照会して判定する。uRPFのみの対策では、ルーティングテーブルに規定されたネットワークアドレス空間と同一のネットワークアドレス空間内のアドレス詐称パケットを通してしまうという不完全性が存在する。
上記の(事例1)と(事例2)とに対して、通信システム1は、下記の方法を採る。
例えば、uRPF相当機能を意味する「e−uRPF」をbMLBR13に実装して、同一のネットワークNW1内のbMLBR13同士があたかもルーティングテーブルの情報を共有しているように機能させる。e−uRPFでは、一般的なルーティングテーブルに代えて、上記のように専用の通信許可ホワイトリストを利用する。例えば、各bMLBR13は、通信許可ホワイトリストの情報を互いに共有することができる。上記のとおり、通信許可ホワイトリストは、ルーティングに利用する経路情報と異なる情報である。bMLBR13は、一般のルーティングテーブルに代えて、e−uRPFによってこの通信許可ホワイトリストを参照して、uRPFにおける逆行経路を示す経路情報と同様に扱える経路情報(逆行経路)を決定する。
比較例のルータにおいては、そのルーティングテーブルは、ルータごとに最善経路性を確保するように独立に異なる情報として保持されており、ルータ間でルーティングテーブルが共有されることはない。これに対し、e−uRPFでは、bMLBR13間で共有される通信許可ホワイトリストの情報を利用することで、あたかもuRPFがルーティングテーブルを参照するような方法で逆行経路を決定したとしても、それと同様の機能を実現できる。
なお、MLBR10では、第1規則から第6規則までを適宜組み合わせることができ、一般的なルーティングテーブルに登録された情報と異なる情報をも利用することができる。つまり、MLBR10は、一般的なルーティングテーブルのみを参照するuRPFによって制限することができない場合においても、ルーティングテーブルに規定されたネットワークアドレス空間と同一のネットワークアドレス空間内のアドレス詐称パケットを、制限することができる。これによれば、通信システム1では、例え全ビットをアドレス詐称されたパケットであっても、e−uRPFの逆行経路内に攻撃パケットを封じ込めることが可能になる。その結果、被害ノードとなった端末装置17などから廃棄要請を示すパケットをネットワークNWに対して送信することによって、そのパケットが各MLBR10により転送され、所望のMLBR10に到達する。これにより、通信システム1において、サイバー攻撃の攻撃ノードにより接近したところで、サイバー攻撃によるパケットを遮断することが可能になる。
上記のとおり、通信方向の対称性が保障されない経路を利用する構成のもとで、e−uRPFを利用するための具体的な一例について説明する。ここでは、他のネットワークと複数の経路で接続する構成に適用されるe−uRPFのアグリゲートモード(aggregate mode)を例示する。
なお、e−uRPFのアグリゲートモードでは、ネットワームNW1内のbMLBR13同士で経路制御情報を共有し合うようにしてもよい。bMLBR13では、経路制御情報として、例えばRIB(Routing Information Base)とFIB(Forwarding Information Base)のいずれか又は双方を所定のルーティングプロトコルにより交換する。例えば、その所定のルーティングプロトコルは、iBGP(interior Border Gateway Protocol)の機能を拡張して、RIB又はFIBを交換できるようにしたものであってもよい。
上記のように経路制御情報を共有し合ったbMLBR13は、その情報に基づいて、第2規則の通信許可ホワイトテーブルを生成し、MLBテーブルに登録する。bMLBR13は、通信許可ホワイトテーブルから外れたパケットを、アドレス詐称パケットとして廃棄することを可能にする。
(匿名フラグF2(第2フラグ)について)
MLBR10は、匿名フラグF2を利用してもよい。例えば、eMLBR11のスイッチ部112は、匿名フラグ設定テーブル1127によって匿名フラグF2を設定する。匿名フラグF2は、前述の図4におけるリスクフラグRFと同じ位置に割り付けてもよい。
図15は、匿名フラグF2の設定に関する条件を示す図である。図16は、匿名フラグF2の設定に関する状態遷移図である。
匿名フラグ設定テーブル1127には、少なくとも自身が管理するアドレス空間内の匿名アドレスリスト等が設定されている。匿名フラグ設定テーブル1127は、受信した処理対象のパケットに、接続経路を隠ぺいするようにパケットの送信元IPアドレス又は宛先IPアドレスが設定されていることを検出し、その検出の結果により、上記に該当するパケットである場合(<F2SET>)に、匿名フラグF2をセットする。一方、匿名フラグ設定テーブル1127は、上記以外のパケットを検出しても、匿名フラグF2をセットすることはなく、上記の条件に該当しなければ匿名フラグF2の状態を保持して、パケットを転送する。
通信システム1における受信端末等は、上記の匿名フラグF2を参照して、匿名フラグF2がセットされたパケットを、送信元もしくは宛先を隠ぺい又は詐称したパケットであると判定し、ネットワークセキュリティ上のリスクがある又はリスクが比較的高いものとして扱ってもよい。
上記の受信装置等は、受信したパケットのパケットヘッダに、認証フラグF1がリセットされてネットワークセキュリティ上のリスクが比較的低いと判定できないパケットと、匿名フラグがセットされて上記のリスクがある又はリスクが比較的高いと判定されるパケットの一方又は両方を選択的に検査するパケット検査手段を備えて構成してもよい。受信装置等は、受信したパケットのパケットヘッダに、認証フラグF1がセットされ、ネットワークセキュリティ上のリスクが比較的低いと判定されるパケットと、匿名フラグがセットされ、上記のリスクがある又はリスクが比較的高いと判定されるパケットの一方又は両方を選択的に検査するパケット検査手段を備えて構成してもよい。
上記のようにスイッチ部112は、リスクフラグRFとして、接続経路を隠ぺいするようにパケットの送信元IPアドレス又は宛先IPアドレスが設定されたパケットであることを示す匿名フラグF2を、匿名フラグ設定テーブル1127により当該パケットに設定する。これにより、通信システム1は、認証フラグF1と匿名フラグF2とを利用する場合においても、パケットの検査を容易に実施することができる。
また、この匿名フラグF2を利用することにより、下記の特徴を有する通信であることを、受信端末等が容易に検出することが可能になる。例えば、受信端末等は、通信の接続系路を匿名化するために、多数(数千台)のノードから構成される匿名化ネットワークを利用する通信であることを検出する。上記の各ノードは、所謂Proxy機能と複数のノード同士を繋ぐノード間通信を暗号化する機能を備える。上記のProxy機能とは、受信したパケットの送信元IPアドレスを別のIPアドレスに変換して送信し、その返答パケットの宛先IPアドレスを上記送信元IPアドレスに変換して送信元のノードへ返すものである。上記のように通信の接続系路を匿名化するネットワークの一例として、Tor(The Onion Router,トーア)規格が知られている。Tor規格のクライアントとして機能する端末装置は、Tor規格の通信サービスを提供するTorサーバに対して通信の接続開始を要求し、Torサーバにより許可されると、そのTorサーバを介して目的の通信相手宛にパケットを送信する。上記の端末装置は、このような手順を踏み通信することで接続経路を隠ぺい化することができる。
なお、インターネットインフラが直面している大きな問題の一つとして、境界ルータのルーティングテーブルのエントリ数の増大が挙げられている。プロバイダ単位又は自律システムとして機能するネットワーク単位で見れば最大でも6kエントリ程度と見込まれる。ワイヤスピードでのルーティング処理などで用いられている最新のTCAM(Ternary Content-Addressing Memory)チップであれば、L1からL4の基本ヘッダ(80B(バイト))を単位に128kエントリを登録でき、上記のプロバイダ単位に見込む最大エントリ数を収容可能である。
さらに、多くの下位のプロバイダなどのネットワークでuRPF又はe−uRPFが設定されており、あるMLBR10において一定期間検出しなくなったアドレス詐称パケットのエントリが存在するようになれば、当該エントリを当該MLBR10のMLBテーブルにおける通信許可ホワイトリスト(逆行経路情報)から削除することができる。MLBR10は、逆行経路情報の集約化を併せて実施することにより、プロバイダ単位に必要とされるエントリ数を上記の最大数よりも少なく見込むことができる。上記により、通信システム1において、MLBR10にMLBテーブルを含めて構成することに伴うコスト負担を軽減するようにしてもよい。
(MLBR10の導入検討とその効果について)
図17を参照して、上記の機能要素を有する各MLBR10の導入検討と、構成例毎の効果について説明する。図17は、各MLBR10に配置した機能要素とそれによる効果の関係を示す図である。同図に示すように、3種類のMLBR10に、上記の機能要素を配置する組み合わせは、同図に示す7通りになる。それぞれの組み合わせに適した機能要素の導入形態の一例を同図に示す。各導入形態について、機能要素による攻撃パケットの遮断効果、導入コスト並びに投資対効果比を試算した例である。
例えば、第1の導入形態、つまりeMLBR11のみに機能要素を配置する場合には、第1機能要素としての「認証・検疫・QoS設定」と、第2機能要素としての「MLBテーブル(L1〜L3)」とを、eMLBR11に配置するとよい。第2機能要素の「MLBテーブル(L1〜L3)」は、レイヤ1(L1)からレイヤ3(L3)までの情報の一致を検出する機能を実現するものである。
この第1の導入形態の場合に、通信システム1は、アドレスを詐称するパケットを遮断することができる(効果A−1)。ただし、他のネットワークNWから流入するパケットや、同じネットワークNW1内の他のeMLBR11をすり抜けたパケットを遮断できない場合がある。その一方で、通信が許可された端末装置の健全性を確保したり、マルウェアに感染したIoT装置などが不特定多数宛に送信する探索パケットによって感染させることを防いだり、汚染されたIoT装置を無害化したりできるという点で、ネットワークNWの入り口となるeMLBR11に機能要素を配置した効果を得ることができる。
また、例えば、第3の導入形態、つまりbMLBR13のみに機能要素を配置する場合には、第3機能要素としての「MLBテーブル(L3)」と、第4機能要素としての「認定機関からの廃棄要請」とを、bMLBR13に配置するとよい。第3機能要素の「MLBテーブル(L3)」は、例えばe−uRPF、などにより、レイヤ3(L3)の情報の一致を検出する機能を実現するものである。第4機能要素としての「認定機関からの廃棄要請」は、インターネットにおける定点観測データ等に基づいて生成されたDRMを、bMLBR13が受信することで、その廃棄要請としてもよい。
この第3の導入形態の場合に、通信システム1は、他のネットワークからのアドレスを詐称するパケットをe−uRPFで遮断することができる(効果A−1)。ただし、eMLBR11における対策を講じることができないため、自ネットワークNW内の攻撃を遮断することができず、e−uRPF内の詐称を遮断しきることはできない。その一方で、不特定多数宛のパケットを遮断したり、匿名アドレスを利用する通信であることを匿名フラグF2を用いて明示(匿名アドレスの見える化)したりするという点で、他のネットワークNWとの出入り口となるbMLBR13に機能要素を配置した効果を得ることができる。
また、例えば、第5の導入形態、つまりeMLBR11とbMLBR13とに機能要素を配置する場合には、前述の第1の導入形態と第3の導入形態の双方を組み合わせたものに、さらに、第5機能要素として、「被害ノード(端末装置)からの廃棄要請」を受け付けるように、eMLBR11に配置するとよい。
この第5の導入形態の場合に、通信システム1は、アドレスを詐称するパケットを遮断することができる(効果A−1)。また、アドレスを詐称せずに攻撃するパケットや不特定多数宛のパケットを遮断したり、匿名アドレスを利用する通信であることを匿名フラグF2を用いて明示したりするという点で、他のネットワークNWとの出入り口となるbMLBR13に機能要素を配置した効果を得ることができる。ただし、同じネットワークNW1内の他のeMLBR11をすり抜けたパケットを遮断することはできない。
また、例えば、第7の導入形態、つまり全てのMLBR10に機能要素を配置する場合には、前述の第5の導入形態の場合の機能要素をiMLBR12にも配置するものになる。この第7の導入形態の場合に、通信システム1は、図17に示す効果A−1から効果A−4の全てと、汚染されたIoT装置を無害化したりできるという効果を得ることができる。
上記の説明で示した導入形態の他に、第2の導入形態、第4の導入形態、第6の導入形態がある。ただし、同図に示すように、対象の装置が多くなるほど導入コストがかかることになる。導入コストは3種類のMLBR10の全てに導入する形態を10とし、想定される機器コストと敷設台数および敷設・運用コストを勘案して、eMLBR11とiMLBR12とbMLBR13とに対して、それぞれのコストを6:3:1の比率で配分した。
また、導入形態の機能要素によって、遮断効果が異なる。遮断効果を高めることにより、ネットワークセキュリティの到達レベルを高めることができる。遮断効果は、各機能要素が期待通りに機能することで、攻撃パケットを、ほぼ遮断できる場合を「○」で示し、そのスコアを2とし、遮断できない事象が起こり得る場合を「△」で示し、そのスコアを1とし、攻撃パケットの遮断に寄与しない場合を「−」で示し、そのスコアを0とする3段階で評価する。
ネットワークセキュリティの到達レベルは、導入コストに対して必ずしも比例するものではない。そのため、目標とするネットワークセキュリティの到達レベルと、投資対効果の比(投資対効果比)に応じて、適宜決定するとよい。
ただし、ネットワークNW全体に対する対策済みの比率が高くなるほど、その対策の効果が顕著に表れるようになる。
(第1規則と第2規則と第6規則の組み合わせの一例)
図18を参照して、第1規則と第2規則と第6規則の組み合わせについて説明する。図18は、第1規則と第2規則と第6規則の組み合わせによる処理を説明するための図である。
第1規則に該当するパケットは、その通信が制限される。
一方、第1規則に該当しないパケットであり、第2規則に該当するパケットは、その通信が許可される。さらに、上記で通信が許可されるパケットであって、第6規則に該当するパケットには、匿名フラグF2がセットされて通信され、第6規則に該当しないパケットには、匿名フラグF2がセットされることなく通信される。
また、上記の第1規則にも第2規則にも該当しないパケットは、その通信が制限される。例えば、MLBR13において、コントローラ131は、受信したパケットに対し上記のように各規則を組み合わせて、下記するようにパケットを処理するようにスイッチ部132を制御する。
例えば、コントローラ131は、第2規則として設定された通信許可条件に該当する通信を許可する。コントローラ131は、通信許可条件に従い、スイッチ部132のMLBテーブル1321により、通信許可条件に該当するパケットを所定のテーブルに遷移させ、通信許可条件に非該当のパケット、すなわちアドレスを詐称したパケットを廃棄するなどの所定の処理を実施させる。
また、コントローラ131は、第6規則として設定された規制条件(匿名アドレスリスト)に該当するパケットを条件付きで通信させる。コントローラ131は、第6規則として設定された規制条件に従い匿名アドレスリストを匿名フラグ設定テーブル1327に設定する。なお、スイッチ部132の匿名フラグ設定テーブル1327は、第6規則の条件を満たすパケット、つまり匿名アドレスリストに該当するパケットに匿名フラグF2をセットして転送し、第6規則の条件を満たさないパケット、つまり匿名アドレスリストに該当しないパケットに匿名フラグF2をリセットして転送する。
スイッチ部132は、上記のように匿名フラグF2(識別情報)が付与されたパケットを許可して転送してもよい。
このように、コントローラ131は、複数種類の規制の条件に基づいて、許可条件を満たす通信のパケットを受信して、受信したパケットによる要請に基づいて規制条件を設定する。複数種類の条件には、少なくともネットワークNW1と他のネットワーク間の通信を制限するための第1規則(規制条件)と、少なくともネットワークNW1内の通信を許可するための第2規則(許可条件)とが含まれる。コントローラ131は、複数種類の規制の条件に基づいて、第2規則を満たす通信のパケットを受信して、受信したパケットによる要請に基づいて第1規則を設定し、第1規則に該当する通信のパケットを制限する。又は、コントローラ131は、第2規則に反する通信のパケットを制限してもよい。このようなコントローラ131は、第1規則に該当する通信と第2規則に反する通信の一方又は両方を制限してもよい。
その規制条件には特定のパケットを廃棄対象として選択するための条件(第1規則による廃棄条件など)が含まれ、許可条件には特定のパケットによる通信を許可するための条件(第2規則による通信許可条件など)が含まれている。
また、例えば、規制条件には、匿名性を有するパケットを特定するための条件(第6規則による匿名アドレスリストなど)が含まれていてもよい。例えば、コントローラ131は、匿名性を有するパケットを特定するための匿名アドレスリストに該当し、さらに、上記の第2規則の条件を満たす通信のパケットを識別して、匿名フラグF2を当該パケットに付与してもよい。
なお、上記の通りbMLBR13は、eMLBR31と、iMLBR32などのルータを含んで構成されるネットワークNW1と、他のネットワークとの境界部に配備されるものである。例えば、bMLBR13は、ネットワークNW1における、他ネットワークNWとの境界部に配備される。
コントローラ131は、少なくともネットワークNW1に含まれるMLBR10のうち一部又は全部のルータから当該ルータのルーティング情報を取得する。コントローラ131は、取得したルーティング情報に基づいて、他のネットワーク側からネットワークNW1側に向けての通信を該通信の送信元アドレスに応じて許可又は制限してもよい。例えば、コントローラ131は、取得したルーティング情報に基づいて、各ルータが許可していた通信経路を示す経路情報を抽出し、通信許可条件を示す通信許可ホワイトリスト(e−uRPF)を生成する。コントローラ131は、生成した通信許可ホワイトリストに基づいてスイッチ部132を制御する。
コントローラ131は、上記のように認証された通信のもとで、上記の規制条件を設定することについての要請を送信した送信元から、単方向の通信手順を用いて通知された要請に応じて、上記の規制条件を設定してもよい。例えば、端末装置17及びMLBR10は、上記の要請を送信する際に、UDPを用いて、前述のDRMを送信する。上記のDRMの送信では、その通信経路(送信経路)が、廃棄すべき攻撃パケットが多数送信されている、すなわち帯域攻撃されている通信経路と同じ経路が含まれる。その通信経路のうち最も有効な経路が、攻撃パケットが到来する経路に一致する。つまりDRMは、攻撃パケットとは逆向きに送信される。このように、端末装置17及びMLBR10は、UDP(単方向)を用いて要請(DRM)を送信することにより、その送信方向と逆向きのトラフィックによる影響を避けて、所望の宛先にDRMを送信することができる。なお、端末装置17及びMLBR10は、UDPを用いて単方向にDRMを送信する際に、送信するDRMの真正性及び完全性(改ざんされていないこと)を示すために、TPM(Trusted Platform Module)やHSM(Hardware Security Module)を用いて端末装置17のプラットホームやOS、IDS/IPSの真正性と完全性を示す認証コードを付加してeMLBR11に送信する。また、端末装置17及びMLBR10は、iMBLR12やbMLBR13間、bMLBR13間は予め相互認証の際に交換した共有鍵又はその更新鍵を使用してメッセージ認証(AH)を付加してもよい。
上記の実施形態によれば、MLBR10のコントローラは、それぞれが自律システムとして機能する自ネットワーク(たとえば、ネットワークNW1)と自ネットワーク(ネットワークNW1)と異なる他ネットワークとを介した通信を制御する。MLBR10は、少なくとも自ネットワークと他ネットワークとの間の通信を制限するための規制条件と、少なくとも前記自ネットワーク内の通信を許可するための許可条件とを含む複数種類の条件に基づいて、前記許可条件を満たす通信による要請に基づいて前記規制条件を設定し、前記規制条件に該当する通信と前記許可条件に反する通信の一方又は両方を制限する。これにより、MLBR10は、広域ネットワーク側のネットワークセキュリティのセキュリティレベルをより簡易な方法で高めることができる。
(第1の実施形態の第1変形例)
第1の実施形態の第1変形例として、投資対効果が優位となる構成例について説明する。上記の図17に示したとおり、bMLBR13のみを配備する構成が、上記の7つの導入形態の中で最も投資対効果が優れている。本変形例では、MLBR10のうちbMLBR13のみを配備した構成例を例示する。図19は、bMLBR13のみを配備した構成例を示す図である。図1との相違点を中心に説明する。
ネットワークNW1を構成する通信システム1は、自律システムとして機能する自ネットワークNW1内、又は、自ネットワークNW1と、ネットワークNW1とはポリシーが異なる他ネットワークとを介した通信を可能とする。
通信システム1は、eR(egress Router)11Bと、iR(ingress Router)12BとbMLBR13と、中継装置14と、管理ホスト15とを備える。つまり、通信システム1は、eMLBR11とiMLBR12とに代えて、eR(egress Router)11Bと、iR(ingress Router)12Bとを備えるものである。eR11BとiR12BとbMLBR13は、通信システム1の通信ノードとして機能する。通信システム1は、少なくともbMLBR13を含み、eR11BとiR12Bとの一部又はその組み合わせによってネットワークNW1を構成してもよい。eR11BとiR12Bは、一般的なルータ又はスイッチ等により構成することができる。eR11Bは、利用者ネットワーク側の出口(egress)に設置され、iR12Bは、ネットワークNW1の利用者側入口(ingress)端部(エッジ)に設置される。
例えば、通信システム1と同様に、通信システム2は、ネットワークNW2を形成する。通信システム2は、eR21Bと、iR22Bと、bMLBR23と、管理ホスト25とを含む。また、通信システム3は、ネットワークNW3を形成する。通信システム3は、eR31Bと、iR32Bと、bMLBR33と、管理ホスト35とを含む。通信システム2におけるeR21Bと、iR22Bと、bMLBR23と、管理ホスト25、及び、通信システム3におけるeR31Bと、iR32Bと、bMLBR33と、管理ホスト35は、通信システム1のeR11Bと、iR12Bと、bMLBR13と、管理ホスト15にそれぞれ対応する。
図20は、第1変形例の通信システムの概要を示す図である。
端末装置17は、eR11Bに収容される。端末装置17から送信されたパケットは、eR11BとiR12Bとを経てbMLBR13に到達する。bMLBR13は、第1の実施形態に示す判定と同様の判定を、到達したパケットに対して実施して、必要に応じて他のネットワークであるネットワークNW2等にそのパケットを転送する。
bMLBR13は、ネットワークNW2等の他のネットワークからパケットを受信して、上記の通りの判定を、受信したパケットに対して実施して、必要に応じてiR12B側にそのパケットを転送する。転送されたパケットは、iR12BとeR11Bを経て端末装置17に到達する。
前述のとおり、bMLBR13は、ネットワークNW1の境界ルータとして機能するものである。bMLBR13が上記のようにパケットの判定と転送の処理を実施するに当たり、コントローラ131は、少なくとも第1規則と第2規則とに基づいて、bMLBR13を経由する通信を制御する。
コントローラ131は、第1規則として、所定の信頼度を有する端末装置(例えば、管理ホスト15など)からの廃棄要請に基づいて、特定の通信を制限するための廃棄対象ブラックリストを生成し、廃棄テーブル1321に反映する。例えば、管理対象の端末装置17は、管理ホスト15によってその属性情報などが管理されている。管理ホスト15は、被害ノードである端末装置17などからの廃棄要請に基づいて、特定の通信を制限するための要請をコントローラ131に対して送信する。コントローラ131は、その廃棄要請に基づいて廃棄対象ブラックリストを生成し、廃棄テーブル1321に反映する。
コントローラ131は、第2規則として、自ネットワークNW1内の一部又はすべてのbMLBR13の経路表による逆行経路内に送信元アドレスが含まれる通信を許可する通信許可ホワイトリストを生成し、それをMLBテーブル1324に反映する。例えば、コントローラ131が生成する通信許可ホワイトリストは、e−uRPFのアグリゲートモード又はe−uRPFルースモードに対応するものである。MLBテーブルは、e−uRPFのアグリゲートモード又はルースモードの何れかに対応する情報を格納する。
コントローラ131は、第6規則として、送信元経路を隠ぺい化して通信する通信ノードのアドレスを匿名アドレスリストに反映する。
コントローラ131は、上記の各規則に従い、第2規則に該当する許可条件を満たす通信によって要請を受け、その要請に基づいて、第1規則として規制条件を設定し、第1規則として設定された規制条件に該当する通信を制限する。例えば、コントローラ131は、第1規則として設定された規制条件に従い、スイッチ部132の廃棄テーブル1321により、規制条件に該当するパケットを廃棄し、規制条件に非該当のパケットを通過させる。なお、コントローラ131とスイッチ部132は、前述の図18に示す第1規則と第2規則と第6規則の組み合わせによる処理を実施してもよい。
このように、コントローラ131は、複数種類の規制の条件に基づいて、許可条件を満たす通信のパケットを受信して、受信したパケットによる要請に基づいて規制条件を設定する。複数種類の条件には、少なくともネットワークNW1と他のネットワーク間の通信を制限するための第1規則(規制条件)と、少なくともネットワークNW1内の通信を許可するための第2規則(許可条件)とが含まれる。コントローラ131は、複数種類の規制の条件に基づいて、第2規則を満たす通信のパケットを受信して、受信したパケットによる要請に基づいて第1規則を設定し、第1規則に該当する通信のパケットを制限する。
なお、上記の通りbMLBR13は、eR31Bと、iR32Bなどのルータを含んで構成されるネットワークNW1と、他のネットワークとの境界部に配備されるものである。例えば、bMLBR13は、ネットワークNW1における、他ネットワークNWとの境界部に配備される。
コントローラ131は、少なくともネットワークNW1に含まれるeR31Bと、iR32BとbMLBR13などのルータのうち一部又は全部のルータから当該ルータのルーティング情報を取得する。コントローラ131は、取得したルーティング情報に基づいて、他のネットワーク側からネットワークNW1側に向けての通信を制限してもよい。
コントローラ131は、上記のように認証された通信のもとで、上記の規制条件を設定することについての要請を送信した送信元から、単方向の通信手順を用いて通知された要請に応じて、上記の規制条件を設定してもよい。例えば、端末装置17、及びeR31Bと、iR32BとbMLBR13などのルータは、上記の要請を送信する際に、UDPを用いて、前述のDRMをAHなどを付加して送信する。上記のDRMの送信では、その通信経路(送信経路)が、廃棄すべき攻撃パケットが多数送信されている通信経路と同じ経路が含まれる。その通信経路のうち最も有効な経路が、攻撃パケットが到来する経路に一致する。つまりDRMは、攻撃パケットとは逆向きに送信される。このように、端末装置17及びeR31Bと、iR32BとbMLBR13などのルータは、UDP(単方向)で要請(DRM)を送ることにより、その送信方向と逆向きのトラフィックによる影響を避けて、所望の宛先にDRMを送信し、受信側MLBR10では受信したDRMが偽造されたり改ざんされたりしたものではないことを確認することができる。
上記の変形例によれば、第1の実施形態と同様の効果を奏することに加えて、通信システム1を、その境界ルータであるbMLBR13を中心としたセキュリティ対策により実現し、広域ネットワーク側のネットワークセキュリティのセキュリティレベルをより簡易な方法で高めることができる。
(第1の実施形態の第2変形例)
第1の実施形態の第2変形例について説明する。第1の実施形態では、IPv4のパケットによる通信に認証フラグF1を利用して、MLBR10が送信端末等について認証する一例を示した。本変形例では、これに代えて、IPv6のパケットによる通信に、認証フラグF1を利用して送信端末等について認証する場合の一例について説明する。
図11Bは、IPv6のパケットヘッダを示す図である。例えば、図11Bに示すように、認証フラグF1を、IPv6のIPv6パケットヘッダのトラフィッククラスフィールドの予備ビットに割り当ててもよい。トラフィッククラスフィールドは、送信時のQoSを指定する情報が格納されるが、MLBR10及び受信端末等は、認証フラグF1についてもQoSと同様に処理するとよい。
上記の変形例によれば、第1の実施形態と同様の効果を奏することに加えて、IPv6の場合も、IPv4の場合と同様の効果を奏するものとすることができる。
(第2の実施形態)
第2の実施形態について説明する。第1の実施形態では、MLBR10を用いて各ネットワークを構成することによりネットワークセキュリティのセキュリティレベルを高める方法について例示して、その効果について説明した。これに対し、第2の実施形態では、より初期投資を抑えつつ、ネットワークセキュリティのセキュリティレベルを高める方法について説明する。以下、第1の実施形態との相違点を中心に説明する。
ネットワークセキュリティのセキュリティ基盤を導入展開していくうえで、セキュリティ対策固有の課題が存在する。第1の課題は、セキュリティ対策に対する投資は直接利益を生まないことである。また、第2の課題は、これまでの“自分を守るセキュリティ対策”に確たる成功事例が存在しないことにより、ネットワークセキュリティのセキュリティ基盤の構築に対する投資について慎重にならざるを得ないことである。
これらの課題に対して、本実施形態では、さらに初期投資を抑えつつ、かつ、その初期投資の範囲内で、ネットワークセキュリティのリスクを低減させることができる技術について説明する。以下に示す導入シナリオは、高い投資対効果が得られるものであり、かつ、誰もがその効果を容易に認知できるものである。
図21は、本実施形態の通信システム1の構成を示す図である。
通信システム1は、eMLBR11と、iMLBR12と、bMLBR13に代え、eR11Bと、iR12Bと、bR(border Router)13Bとを備え、さらにbMLBA(border MLB Adaptor)13A(通信制御装置)と、中継装置14と、管理ホスト15とを含む。
eR11Bと、iR12Bと、bR13Bの各装置は、MLBR10と異なる技術を有する通信ノードであり、所謂ルータとして機能する。例えば、通信システム1は、上記の複数のルータによってネットワークNW1を形成する。ネットワークNW1内の各ルータ間は、互いに直接的に接続されていてもよく、中継装置14等を介して接続されていてもよい。
bMLBA13Aは、ネットワークNW1と、ネットワークNW1以外のネットワークNW(以下、他のネットワークという。)とを接続する接続回線に配備されているbR13Bの前段に設けられている。bMLBA13Aは、ネットワークNW1と他ネットワークとを介した通信を制御する。bMLBA13Aの詳細について後述する。
管理ホスト15は、通信システム1における基本設定を行うとともに、通信システム1内の各装置の状態を監視させてもよい。さらに管理ホスト15は、連携サーバとして機能し、端末装置17などの認証と検疫を担うHRSとして機能させてもよい。また、管理ホスト15は、IDS/IPS等により検出した通信履歴を記憶するように構成してもよい。また、管理ホスト15は、通信プロトコルを監視するプロトコルモニタとして機能してもよい。また、管理ホスト15は、特定の装置に対してポートスキャンを実施するように構成してもよい。
通信システム1と同様に、通信システム2は、ネットワークNW2を形成する。通信システム2は、eR21Bと、iR22Bと、bR23Bと、bMLBA23Aと、管理ホスト25とを含む。また、通信システム3は、ネットワークNW3を形成する。通信システム2におけるeR21Bと、iR22Bと、bR23Bと、bMLBA23Aと、管理ホスト25は、通信システム1のeR11Bと、iR12Bと、bR13Bと、bMLBA13Aと、管理ホスト15にそれぞれ対応する。例えば、通信システム3は、eMLBR31と、iMLBR32と、bMLBR33と、管理ホスト35とを含む。
図22と図23とを参照して、通信システム1の構成例について説明する。図22は、通信システムの概要を示す図である。図23は、bMLBA13Aを示す図である。
端末装置17は、eR11Bに収容される。端末装置17から送信されたパケットは、eR11BとiR12Bとを経てbR13に到達する。bR13は、そのパケットの転送処理をして、必要に応じて他のネットワークに送信するように、bMLBA13Aに向けて送信する。bMLBA13Aは、bR13から送信されたパケットを受信して、所望の処理を実施して、必要に応じて他のネットワークに送信する。
bMLBA13Aは、他のネットワークからパケットを受信して、そのパケットの処理をして、必要に応じてbR13B側にパケットを転送する。転送されたパケットは、bR13BとiR12BとeR11Bを経て端末装置17に到達する。
前述のとおり、bMLBA13Aは、ネットワークNW1の境界ルータとして機能するbR13Bより、他のネットワーク側に設けられるものである。
bMLBA13Aが上記のようにパケットを処理するに当たり、コントローラ131は、少なくとも第1規則と第2規則とに基づいて、bMLBA13Aを経由する通信を制御する。
(bMLBA13A)
bMLBA13Aは、コントローラ131と、IF部133と、IF部134と、スイッチ部132Aと、記憶部135Aとを含む。コントローラ131と、IF部133と、IF部134のそれぞれは、前述のbMLBR13に附した符号に対応する。
記憶部135Aが備える第1記憶部1351と第2記憶部1352と第5記憶部1355と第6記憶部1356とは、上記の複数のテーブルの一例である。第5記憶部1355は、所定の信頼度基準を満たした送信元を選択する条件(認証済送信元情報)を定めた第5規則を記憶するが、具体的には、相互認証した端末装置17、他のbMLBA13A等が該当する。第6記憶部1356は、送信元もしくは宛先を隠ぺい又は詐称したパケットを検出するための条件(匿名アドレスリスト)を定めた第6規則を記憶する。
コントローラ131は、例えば、CPU等のプロセッサ、揮発性又は不揮発性の記憶装置等を有する。コントローラ131は、記憶部135に記憶されているプログラムにより、複数の物理ポートを有するスイッチ部132Aから得た情報と、記憶部135に記憶されている複数のテーブルの情報の少なくとも何れかの情報に基づいて、スイッチ部132Aを制御する。例えば、コントローラ131は、管理ホスト15から取得した各種情報、端末装置17又はデータ端末18からの要請などに基づいて、第1記憶部1351や第2記憶部1352、第5記憶部1355、第6記憶部1356を必要に応じて更新し、スイッチ部132Aの転送処理を変更する。
スイッチ部132Aは、各段のフローテーブルとして、廃棄テーブル1321、パケットタイプテーブル1322、SCOPEテーブル1323、MLBテーブル1324、及び匿名フラグ設定テーブル1327を備える。例えば、第1記憶部1351に格納された第1規則はスイッチ部132内の廃棄テーブル1321に、第2記憶部1352に格納された第2規則はスイッチ部132A内のMLBテーブル1324に、第5記憶部1355に格納された第5規則はスイッチ部132A内のMLBテーブル1324に、第6記憶部1356に格納された第6規則はスイッチ部132A内の匿名フラグ設定テーブル1227に、登録され、パケットの転送を制御する。スイッチ部132Aは、上記の制御により、ネットワークNW1とネットワークNW1を除く他のネットワークNWとを介した通信を許可又は制限する。
図24は、MLBテーブル1324の一例を示す。
MLBテーブル1324は、パケットタイプテーブル1322によりIPv4のパケットであると特定されたパケット、又は、SCOPEテーブル1323によりルーティングを許可するIPv6のパケットであると特定されたパケットに対し、当該パケットが転送を許可すべきパケットであるか否かを特定する。その特定の条件は第2規則(通信許可ホワイトリスト)に対応する。MLBテーブル1324は、当該パケットが偽装パケットでないかをチェックする通信許可ホワイトリスト(e−uRPFアグリゲートモード又はルースモード)として機能する。
(認証フラグF1の設定方法)
図25と図13を参照して、認証フラグF1について説明する。図25は、認証フラグF1の設定に関する条件を示す図である。なお、eMLBR31における認証フラグF1の状態遷移については、前述の図13を参照する。
MLBテーブル1324は、転送を許可すべきパケットであると判定されたパケットに対して、第5規則に従って認証フラグF1をセットする(図8B下段を除く各段)。
上記のとおり、bMLBA13Aのコントローラ131は、他のbMLBA13A又はMLBR10のコントローラから取得した情報等に基づいて、自装置のコントローラ131及びスイッチ部132Aをそれぞれ制御する。
(端末装置17)
端末装置17は、CPUと、ROM、EEPROM、HDD、RAM、レジスタ等の記憶装置と、を含むコンピュータであり、実行するプログラムにより端末或いはサーバとして機能する。
例えば、端末装置17は、ネットワークNW1における攻撃パケットの転送を中断させることを要求するメッセージをeR11Bに対して送信してもよい。例えば、eR11BとiR12BとbR13Bは、攻撃パケットの転送を中断させることを要求するメッセージを、bMLBA13A宛に中継する。bMLBA13Aは、上記のメッセージを、攻撃パケットを廃棄することを要求する廃棄要請メッセージとして受け付けて、攻撃パケットを廃棄してもよい。例えば、端末装置17は、自装置の正当性と完全性を示す検証用データもしくは認証コードをDRMに付加してeR11Bへ送信する。さらに、DRMは、攻撃パケットの送信元アドレスに接近する位置に設けられたbMLBA13Aに転送され、DRMを受信した各bMLBA13Aでは、前述の第1規則として第1記憶部に登録する。
(bMLBA13Aがスイッチ部を制御して端末装置のセキュリティ対策を実施するための処理)
bMLBA13Aは、前述の図3に示す処理を、下記するように端末装置のセキュリティ対策を実施するための処理として実施する。
通信システム1は、管理対象の端末装置を、通信システム1において双方向通信を実施する端末として登録する(S10)。
通信システム1において、例えば、上記の処理(S10)は、下記する複数の処理の組み合わせとして実現される。
まず、通信システム1の管理ホスト15は、通信相手を限定する対象の端末装置(例えば、端末装置17)を特定する(S11)。
次に、通信システム1の管理ホスト15は、上記で特定された対象を識別可能な識別情報(第1識別情報)を取得する(S12)。
次に、通信システム1の管理ホスト15は、上記で特定された対象(例えば、端末装置17)の通信相手を識別可能な識別情報(第2識別情報)を取得する(S13)。
次に、通信システム1におけるbMLBA13Aは、管理ホスト15から上記で取得した識別情報(第1識別情報と第2識別情報)を受ける。bMLBA13Aは、限定する対象として特定された対象から送信されたパケットについて、そのパケットの通信相手を、上記で取得した識別情報(第1識別情報と第2識別情報)に基づいて限定するための通信相手許可ホワイトリストの要素(第1要素)を生成する(S14)。
次に、bMLBA13Aは、限定する対象として特定された対象宛に送信されたパケットの通信相手を、上記で取得した識別情報(第1識別情報と第2識別情報)に基づいて限定するための通信相手許可ホワイトリストの要素(第2要素)を生成する(S15)。
次に、bMLBA13Aは、通信相手許可ホワイトリストに上記の第1要素と第2要素とを追加する(S16)。
次に、bMLBA13Aは、S11において特定した対象の端末装置のうち、所定の信頼度基準を満たした送信元(端末装置)を選択し、その識別情報を認証リストに追加する(S18)。
次に、通信システム1は、信頼を置ける認定機関の監視装置から、匿名アドレスを利用して通信することを許容するノードのアドレスリストを取得する。例えば、管理ホスト15は、配信されたノードのアドレスリストから匿名アドレスリストを生成して、bMLBA13Aに登録する(S19)。
次に、通信システム1は、通信相手許可ホワイトリストの登録後に、第1要素と第2要素とに基づいて実際の通信を保護するための処理を、bMLBA13Aによって実施して(S20)、パケットの信頼度を示すフラグを、当該パケットに設定する(S22)。
これにより、通信システム1は、端末装置のセキュリティ対策を実施する。なお、より具体的な処理については、第1の実施形態と同様の処理を適用することができる。
また、第1規則の廃棄リストには、bR13B等のルータのIPアドレスを宛先IPアドレスとするパケットや、bR13B等が利用する特定のポートアドレスを指定するパケットなどを廃棄するように、所定の条件を登録してもよい。これにより、他のネットワーク側からネットワークNW1に流入し、bR13B等を攻撃するパケットをbMLBA13Aにて遮断することができる。
なお、bMLBA13Aは、上記の通りルーティング機能を設けずに構成することができる。これにより、bMLBA13Aに障害が生じた場合に、bMLBA13Aをバイパスさせ、プロバイダとしてのサービスを停止することなく継続することもできる。
実施形態によれば、第1の実施形態と同様の効果を奏することに加え、bMLBA13Aのコントローラ131Aは、アドレス空間において未使用状態にあるべきアドレス空間宛に送られたパケットを特定する特定情報に基づいて前記パケットの転送を制限することを要求する遮断要求を取得し、前記遮断要求に該当する前記パケットによる通信を、あらかじめ定められた処理ルールに基づいて制御することにより、広域ネットワーク側のネットワークセキュリティのセキュリティレベルをより簡易な方法で高めることができる。
(第3の実施形態)
第3の実施形態について説明する。第3の実施形態における通信システム1は、不正なパケットがネットワークNW1内を転送することを規制して、ネットワークNW1内の利用状況をネットワークNW1外から探索したりすることを困難にするものである。図26を参照し、不当な宛先アドレスが指定されたパケットによる通信を制限する具体的な方法について説明する。図26は、ダークネットのアドレスが指定されたパケットによる通信を制限する方法を説明するための図である。
ネットワークにおけるアドレス空間は、通信に利用可能なアドレスが割り付けられているアドレス空間(ライブネットLN)と、通信に利用可能とするようにアドレスが割り付けられていないアドレス空間(ダークネットDN)とに分けられる。つまりライブネットLNには、端末装置などが実在する可能性があり、ダークネットDNには、端末装置などが実在する可能性はない。
それゆえ、ダークネットDN宛に送られるパケットは、本来存在しないはずのものであるが、実際には、大量に観測されている。例えば、インターネット上に設けられた定点観測施設8(定点観測システム85(図1))における観測結果の解析によれば、様々な攻撃パケットと判定し得るものがインターネット上を飛び交っていることが知られている。例えば、そのようなパケットの一例として、DDoS攻撃の跳ね返りパケットや、マルウェアに感染したIoT機器などから、さらにマルウェアの感染先となり得るIoT機器やサイバー攻撃先となり得る脆弱性(セキュリティホール)を持つサイトなどを総当たりで探索するパケットなどが知られている。以下、上記の総当たりで探索するパケットを探索パケットという。
比較例の定点観測システムは、上記のように、インターネットに送信されているパケットを観測し、その結果を解析することで、ネットワーク利用者に関連するネットワークのアドレス範囲内で、ダークネットのアドレスを利用する通信(パケット)が検出されていることをネットワーク利用者側に通知している。
これに対し、本実施形態の定点観測システム85は、例えば、前述の図1に示すようにネットワークNW3に接続されており、ネットワークNW3上の未使用アドレス空間(ダークネットDN)宛に送信されているパケットを観測する。
図27は、定点観測システム85によって探索パケットが検出された場合のシーケンスを示す図である。
定点観測システム85は、ネットワークNWに送信されているパケットを観測する(S851)。例えば、定点観測システム85は、少なくとも、ネットワークNW6からネットワークNW3に流入するネットワークNW3のダークネットDN宛パケットを観測する。
次に、定点観測システム85は、その観測結果を解析(S852)して、ダークネットDN宛のパケットが検出されたか否かを判定し(S853)、検出されなければS851からの処理を繰り返す。定点観測システム85は、ダークネットDN宛パケットが検出された場合には、その検出結果を、各ネットワークNWの管理ホストに通知する(S854)。各ネットワークNWの管理ホストには、ネットワークNW1の管理ホスト15、ネットワークNW2の管理ホスト25、ネットワークNW3の管理ホスト35などが含まれている。以下の説明では、ネットワーク管理ホスト15を例示して説明する。なお、ダークネットDN宛のパケットとは、送信元IPアドレス又は宛先IPアドレスの少なくとも何れかがダークネットDNに含まれるものである。
例えば、管理ホスト15は、定点観測システム85から、ダークネットDN宛のパケットが検出されていることの通知を受ける(S151)。上記の通知には、当該パケット又はそのパケットによる通信を特定するための情報が含まれる。
管理ホスト15は、上記の通知を取得することにより(S151)、MLBR10又はbMLBA13A(以下、上記を纏めてMLBR10等という。)に対し、上記通知により特定されるパケットをそれぞれの装置において遮断するように、遮断要求を通知する(S152)。遮断要求には、遮断する対象のパケット又はそのパケットによる通信を特定するための情報が含まれる。
MLBR10等は、上記遮断要求を取得して(S101)、自装置の第1規則の条件に、当該遮断する対象のパケットによる通信を遮断する条件を追加(S102)して、自装置のスイッチ部により当該通信を遮断するようにスイッチ部を制御する(S103)。
(探索パケットの特定について)
探索パケットには、マルウェアの新たな感染先やサイバー攻撃先を探索するなどの目的で送信されるパケットが含まれる。首謀者自身が操作する端末或いはマルウェアに感染したIoT機器などを使って、上記の端末又はIoT機器から探索パケットを送信する場合などが知られている。上記のような探索パケットは、通過するルータのルーティングテーブルに記載されているネットワークアドレス空間内に封じ込められ、そのアドレス空間内の宛先に対し総当たりで送信されるという特徴がある。
マルウェアとは、ウイルス、ワーム、トロイの木馬、スパイウェア、ボットなど、情報漏えいやデータ破壊、他のコンピュータへの感染などの有害な活動を行うソフトウェアを総称する。
例えば、定点観測システム85は、定点観測施設などに設置されたハニーポットなどにより検出したパケットを解析することにより、マルウェアを検出する。定点観測システム85は、ハニーポットなどにより検出したパケットのうちから、上記のような特徴を有するパケットを抽出し、抽出されたパケットからマルウェア検体を捕捉する。マルウェア検体の捕捉では、既知のマルウェアであるか、あるいは既知のマルウェアから予測される新たなマルウェアであるかを解析する。定点観測システム85は、上記の処理によって、探索パケットか否か判別し、探索パケットを特定する。
(DDoS攻撃の跳ね返りパケットの特定について)
DDoS攻撃の跳ね返りパケットとは、攻撃パケットの送信元IPアドレスをランダムに変えながら攻撃パケットを送信すると、被攻撃側から送信元IPアドレスを宛先IPアドレスとして返信されたパケットのことである。
要求に応じて応答を返すプロトコルとして、TCPやICMP、ICMPv6、DNS、NTPなどが知られている。首謀者は、要求に応答して送信されるパケットを使って、送信元IPアドレスをランダムに変えながらターゲットサイトに大量に攻撃パケットを送り付けるDDoS(分散型サービス妨害)攻撃を実行する。その際に、攻撃されたターゲットサイトからは、要求パケットにより決定される宛先IPアドレス(要求パケットの送信元IPアドレス)に向けて大量の応答パケットが送信され,これらの一部が定点観測システム85によりキャプチャされる。なお、応答パケットの送信元IPアドレスは、被攻撃サイトのIPアドレスであり、宛先IPアドレスはランダムになることが多い。応答パケットの宛先IPアドレスは、受信した攻撃パケットに設定されていた送信元IPアドレスにより決定されるが、ランダムなアドレスになるように詐称されている場合には、上記の通りランダムになる。
特に、bMLBR13(又はbMLBA13A)において上記の処理を実施することにより、他のネットワークNWからネットワークNW1に流入するパケットのうち、送信元IPアドレス又は宛先IPアドレスにダークネットDNのアドレスが設定されたパケットを、ネットワークNW1内に流入させないように遮断することができる。
また、bMLBR13(又はbMLBA13A)において上記の処理を実施することにより、ネットワークNW1から他のネットワークNWに送信するパケットのうち、送信元IPアドレス又は宛先IPアドレスにダークネットDNのアドレスが設定されたパケットを、ネットワークNW1から送信しないように遮断することができる。
比較例の技術では、DDoS攻撃やDDoS攻撃の跳ね返りを、速やかに遮断することが困難であった。
これに対し、実施形態の通信システム1によれば、DDoS攻撃の跳ね返りパケットが観測され次第速やかに、跳ね返りパケットに対応するDRMを生成し、これをMLBR10等に向けて送信することによって、DDoS攻撃を遮断することが可能となる。上記の跳ね返りパケットに対応するDRMは、被害者ノードのIPアドレスを宛先IPアドレスとし、e−uRPFアグリゲートモード又はルースモードとして動作するMLBR10等のMLBテーブルの中で、定点観測システムで観測された跳ね返りパケットの宛先IPアドレス(ダークネットDN宛のIPアドレス)を含むネットワークアドレスを送信元アドレスとし、これにL4のポート番号やパケットタイプ、制御フラグなどの属性情報などの情報を含んで構成される。これにより、DDoS攻撃の跳ね返りパケットの発生を目的とするDDoS攻撃を無効化することができ、首謀者が上記のようなDDoS攻撃を実施する意欲を低減させることが可能になる。ひいては、踏み台となり得るIoT機器が、上記のようなDDoS攻撃の標的になることが無くなる。
これまで、”自分を守るセキュリティ対策”を講じていながら、多くの官公庁や企業のサイトがDDoS攻撃され、サービス不能状態に陥っている。こうした攻撃は、これまでの”自分を守るセキュリティ対策”では対処しきれないものであったと想定される。本実施形態の通信システム1であれば、上記の通り、そのようなDDoS攻撃をも無効化することができる。
実施形態によれば、第1の実施形態と同様の効果を奏することに加え、コントローラ131は、アドレス空間において未使用状態にあるべきアドレス空間宛に送られたパケットを特定する特定情報に基づいて前記パケットの転送を制限することを要求する遮断要求を取得し、前記遮断要求に該当する前記パケットによる通信を、あらかじめ定められた処理ルールに基づいて制御することにより、広域ネットワーク側のネットワークセキュリティのセキュリティレベルをより簡易な方法で高めることができる。
(第4の実施形態)
第4の実施形態について説明する。第4の実施形態における通信システム1は、不正なパケットがネットワークNW1内を転送することを規制して、ネットワークNW1内の利用状況をネットワークNW1外から探索やサイバー攻撃、サイバー犯罪などの不正パケットを送信することを困難にするものである。以下、その具体的な一例として、ネットワーク間に送られる不正なパケットに対して課金する通信システムについて例示する。
インターネットを構成するプロバイダは、階層構造を形成して相互接続されており、最上位のプロバイダは、世界で17社ほどしかない。このような最上位のプロバイダは、ティア1(Tier-1)と言われている。例えば、最上位のプロバイダ間で、不正なパケットの送信を制限するように契約により取り決めることにより、互いに送信しあうパケットに混入する不正なパケット数が減少することが期待できる。最上位のプロバイダは、自身が管理するネットワークにおいて、自身が管理するネットワークと異なるネットワークに対して、不正なパケットを送信しないようにする。例えば、最上位のプロバイダは、自身が管理するネットワークが不正なパケットを送信しないように構成するか、ネットワークを利用する配下のプロバイダに不正なパケットを流入させないように指示するかの方法で、不正なパケットの他のプロバイダへの転送を制限し、不正なパケットの送信を削減する。
MLBR10等を利用して、不正なパケットを送信しないようにする構成の一例を示す。例えば、前述の図1に示すネットワークNW3を管理するプロバイダが最上位のプロバイダであり、ネットワークNW1を管理するプロバイダが、より下位のプロバイダであるとする。
少なくとも、ネットワークNW1に設けられているbMLBR13のそれぞれについて、不正なパケットをネットワークNW3などの他のネットワークに向けて送信しないように、第1規則から第6規則の各条件が決定される。各bMLBR13のコントローラ131は、その条件に対応するようにスイッチ部132を設定する。
上記の第1規則から第6規則の各条件に従って規制すれば、ネットワークNW1からネットワークNW3に流出する不正なパケットを制限することができる。例えば、ネットワークNW1内からbMLBR13に到達したパケットに不正なパケットが混入していたとしても、bMLBR13は、当該不正なパケットを遮断する。
上記のように不正なパケットを適切に遮断するためには、不正なパケットを検出したら速やかに、その不正なパケットを遮断できるように、上記の第1規則から第6規則の各条件を都度見直すとよい。
上記は、ネットワークNW1からネットワークNW3に流出する不正なパケットを制限する場合を例示したものであるが、これに対しネットワークNW3からネットワークNW1に流出する不正なパケットを制限することも同様の手法をネットワークNW3側でとることにより実施することができる。
上記のように、互いに不正なパケットを送信しないように各プロバイダが対応することで、それぞれに流入/流出する不正なパケットが削減するが、これに対し、少なくとも一方のプロバイダがこれに対応しない場合には、上記のような状態にはならないことがある。
例えば、ネットワークNW4側は、不正なパケットの流出を制限しなければ、ネットワークNW1には、ネットワークNW4から不正なパケットが流入することがあり得る。上記の場合、ネットワークNW1を管理するプロバイダは、自身が管理するネットワークNW1において発生しうる不正なパケットに対する対策を実施することに加え、ネットワークNW4から流入する不正なパケットに対する対策を講じることが必要とされる。対策を要する不正なパケットの個数、発生頻度などにより、対策のための費用が変化する。つまり、ネットワークNW4のような他のネットワーク側の分までネットワークNW1側で対策することが必要になる。
このような状況に対し、他のネットワーク側の対策を肩代わりすることに代えて、対策に要する費用を不正なパケットを送信したプロバイダに対して請求できるように、各プロバイダ間の契約が行えるとよい。上記は、契約方法の概略を示すものであるが、例えば、流入する不正なパケットの個数、発生頻度などに応じて従量課金して、その額を不正なパケットの送信元であるプロバイダに請求できるようにするという方法を採ってもよい。
上記の課金の対象とする不正なパケットについては、例えば、下記の例に従い決定してもよい。図28は、不正なパケットに対する課金処理の手順を示すフローチャートである。
第1の例では、不正なパケットを受信したプロバイダ側が管理するネットワークNW1のbMLBR13が、その不正なパケットを計数する場合を例示する。
bMLBR13のスイッチ部132は、上記の第1規則に該当するパケット、第2規則に反するパケット、第3規則に反するパケット、第4規則に反するパケット、第5規則に反するパケット、第6規則に該当するパケット、の一部又は全部のパケットについて、受信した物理ポート単位に、上記の規則ごとに、受信したパケットの個数とトラフィック(情報量)とを計数し計数値を得る。上記の第5規則には、パケットの送信元である送信元ノードもしくはパケットの送信元エンティティを認証するための条件、又は、上記の送信元の健全性を示すための条件などが含まれる。なお、スイッチ部132は、計数部の一例である。上記のパケットの個数は、不正なパケットの検出頻度に代えてもよい。以下の説明では、パケットの個数を代表して説明する。
bMLBR13のコントローラ131は、スイッチ部132によって不正なパケットを計数させる(SA131)。コントローラ131は、スイッチ部132による計数結果をスイッチ部132から取得して(SA132)、計数結果と規則ごとに決定されている係数との積に基づいた課金データを生成し(SA133)、出力する(SA134)。なお、上記の係数は、受信したパケットの個数や情報量によらず、単位数量当たりの値が一定であってもよく、その個数や情報量に応じて単位数量当たりの値が決定されていてもよい。例えば、係数の値が、その個数や情報量に応じて分類されており、その分類に応じた値が設定されていてもよい。なお、コントローラ131は、課金制御部の一例である。
第2の例では、不正なパケットを受信したプロバイダ側が管理するネットワークNW1のbMLBR13が、その不正なパケットを計数する場合を例示する。
bMLBR13のスイッチ部132は、上記の第1規則に該当するパケット、第2規則に反するパケット、第3規則に反するパケット、第4規則に反するパケット、第5規則に反するパケット(例えば、MLBR10未導入のネットワークNWから不正に認証フラグF1がセットされたパケット)、第6規則に該当するパケット、の一部又は全部のパケットについて、第2規則もしくは第3規則によって決まる逆行経路単位に、上記の規則ごとに、受信したパケットの個数とトラフィック(情報量)とを計数する。なお、スイッチ部132は、計数部の一例である。
bMLBR13のコントローラ131は、スイッチ部132によって不正なパケットを計数させる(SA131)。コントローラ131は、スイッチ部132による計数結果をスイッチ部132から取得して(SA132)、計数結果と規則ごとに決定されている係数との積に基づいた課金データを生成し(SA133)、出力する(SA134)。上記の係数は、第1の例と同様の方法で決定することができる。なお、コントローラ131は、課金制御部の一例である。
なお、上記の何れの例によっても、すべての規則は、通信の状況により適宜更新される。
図29と図30は、第2規則の更新処理の手順を示すフローチャートを一例として示すものである。
例えば、図29に示すように、ネットワークNW1内の各MLBR10のコントローラ(コントローラ131等)は、同じポリシーで運用しているネットワークNW1内の他のMLBR10のすべて又は一部と第2規則の情報を交換して、その情報を共有する(SB131)。例えば、コントローラ131は、自bMLBR13の第2規則の情報、つまり通信許可情報を更新する(SB133)。
或いは、図30に示すように、ネットワークNW1内の各MLBR10のコントローラ(コントローラ131等)は、同じポリシーで運用しているネットワークNW1内の他のルータの経路情報(ルーティングテーブル)を相互に交換して共有し(SC132)、これに基づいて第2規則の情報を生成する(SC132)。例えば、コントローラ131は、自身の第2規則の情報を更新する。例えば、コントローラ131は、自bMLBR13の第2規則の情報、つまり通信許可情報を更新する(SC133)。
これによりMLBR10のコントローラ131は、直接的或いは間接的に第2規則を共有し、それぞれ共有した第2規則に基づいて許可する通信の逆行経路を認識して、これから外れた逆行経路のパケットの転送を制限することができる。つまり、MLBR10は、第2規則として更新される情報に基づいて、許可された逆行経路と異なる逆行経路を指定する不正なパケットを識別することができ、その不正なパケットの転送を制限することが可能になる。さらに、逆行経路内の不正パケットであっても、被害ノードから廃棄要請によって第1規則に該当するパケットとして転送を制限することが可能になる。
なお、スイッチ部132は、第6規則に該当するパケットについては、上記の計数対象から除外してもよい。例えば、スイッチ部132は、第6規則に該当するパケットとして、リスクフラグRFがセットされているパケットについては、上記の計数対象から除外してもよい。
実施形態によれば、第1の実施形態と同様の効果を奏することに加え、MLBR10において、スイッチ部132が、条件のうち規制条件に該当する通信のパケットの通信量と、条件のうち許可条件に反する通信のパケットの通信量とを、通信の経路毎に条件の種類に分けて計数する。コントローラ131は、スイッチ部132により計数された通信量から決定された値を出力することにより、広域ネットワーク側のネットワークセキュリティのセキュリティレベルをより簡易な方法で高めることができる。
さらに、実施形態によれば、上記のような処理ルールに基づいて、ネットワークNW、ひいてはインターネットが運用されるように変化することにより、上記のような契約に同意しないプロバイダは、契約に同意するプロバイダに比べて、運用に係る費用が多く発生することが生じ得る。その結果、経済的な面で不利になることが推定され、実質的にインターネットを利用するプロバイダとしての運営が困難になる場合があり得る。つまり、運営を継続できるプロバイダは、上記の契約に基づいて相互接続したプロバイダに自然的に集約される。上記のような段階になれば、各プロバイダは不正なパケットを流出しないよう留意するプロバイダだけになり、インターネット全体のセキュリティレベルが格段に向上することが期待される。
以上説明した少なくともひとつの実施形態によれば、通信制御装置は、それぞれが自律システムとして機能する自ネットワークと自ネットワークと異なる他ネットワークとを介した通信を制御する通信制御装置である。通信制御装置は、少なくとも前記自ネットワークと前記他ネットワークとの間の通信を制限するための規制条件と、少なくとも前記自ネットワーク内の通信を許可するための許可条件とを含む複数種類の条件に基づいて、前記許可条件を満たす通信による要請に基づいて前記規制条件を設定し、前記規制条件に該当する通信と前記許可条件に反する通信の一方又は両方を制限することにより、広域ネットワーク側のネットワークセキュリティのセキュリティレベルをより簡易な方法で高めることができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
例えば、上記の実施形態の説明では、MLBR10等のスイッチ部が攻撃パケットを“廃棄する”こととして説明したが、MLBR10等は、当該パケットを、各スイッチ部内で廃棄せずに、特定のポートから外部記憶装置に出力して格納させ、同装置内で各規則に反する又は該当するパケットを計数させてもよい。
また、上記の実施形態の説明では、IPv4プライベートアドレスを用いたが、本発明は、これに限定するものではなく、IPv4のプライベートIPアドレスとグローバルIPアドレスとで通信許可情報を構成してもよく、あるいはIPv4のグローバルIPアドレスで通信許可情報を構成してもよく、あるいはIPv6アドレスで通信許可情報を構成してもよく、さらにレイヤ2アドレス(MACアドレス)で通信許可情報を構成してもよい。
なお、上記の実施形態の説明では、端末装置17がIDS/IPSを備えるものとして説明したが、eMLBR11又はiMLBR12がIDS/IPSを備えるように構成してもよい。この場合、eMLBR11又はiMLBR12は、端末装置17のIDS/IPSに代えて、eMLBR11又はiMLBR12が備えるIDS/IPSの検出結果を取得するように構成する。