JP6737610B2 - 通信装置 - Google Patents

通信装置 Download PDF

Info

Publication number
JP6737610B2
JP6737610B2 JP2016060875A JP2016060875A JP6737610B2 JP 6737610 B2 JP6737610 B2 JP 6737610B2 JP 2016060875 A JP2016060875 A JP 2016060875A JP 2016060875 A JP2016060875 A JP 2016060875A JP 6737610 B2 JP6737610 B2 JP 6737610B2
Authority
JP
Japan
Prior art keywords
communication
packet
information
identification information
communication partner
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016060875A
Other languages
English (en)
Other versions
JP2017175462A (ja
Inventor
小林 浩
浩 小林
博史 八槇
博史 八槇
洋一郎 上野
洋一郎 上野
佐々木 良一
良一 佐々木
香 佐野
香 佐野
Original Assignee
小林 浩
浩 小林
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 小林 浩, 浩 小林 filed Critical 小林 浩
Priority to JP2016060875A priority Critical patent/JP6737610B2/ja
Publication of JP2017175462A publication Critical patent/JP2017175462A/ja
Application granted granted Critical
Publication of JP6737610B2 publication Critical patent/JP6737610B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明の実施形態は、通信装置に関する。
従来、複数のノードを含んで構成されるネットワークにおける通信を、そのネットワークの管理者が定める通信規則に従って制御する集中制御型の通信制御装置が知られている。関連するOpenFlow(登録商標)という技術がある。OpenFlowでは、コントローラが各ノードのスイッチを一元管理する(特許文献1、非特許文献1参照)。
ところで、ネットワークに接続されるIoT機器が増加する傾向にある。IoT機器において、セキュリティ面の不安を低減するための対策が必要とされている。
特表2014−526810号公報
"OpenFlow Switch Specification Version 1.3.1,"The Open Networking Foundation,(2013),[online]、[平成28(2016)年1月7日検索]、インターネット〈https://www.opennetworking.org/images/stories/downloads/sdn-resources/onf-specifications/openflow/openflow-spec-v1.3.1.pdf〉
しかしながら、パーソナルコンピュータなどの端末装置やサーバ装置などのネットワークに接続する装置では、これまでも様々なセキュリティ対策がとられてきたが、同様の手法のセキュリティ対策をとることができないIoT機器がある。
本発明が解決しようとする課題は、IoT機器のセキュリティ対策を簡易な方法で実施する通信装置を提供することである。
上記目的を達成するため、本発明の一態様に係る通信装置は、通信相手を限定して通信する対象装置を収容し、前記対象装置の通信に関わるパケットの転送を制御するスイッチ部を備え、前記スイッチ部は、前記対象装置から送信されたパケットであることを識別するための第1識別情報を格納した第1テーブルと、前記第1テーブルにより前記対象装置から送信されたパケットであると判定した第1パケットについて、前記第1パケットの送信先が前記通信相手であることを識別するための第2識別情報を格納した第2テーブルと、前記対象装置宛に送信されたパケットの宛先アドレス情報を少なくとも用いて当該パケットを識別するための第3識別情報を格納した第3テーブルと、前記第3テーブルにより前記対象装置宛に送信されたパケットであると判定した第2パケットについて、前記第2パケットの送信元が前記通信相手であることを識別するための第4識別情報を格納した第4 テーブルと、を備え、前記第1テーブルにより識別し、その後前記第2テーブルにより送信先が前記通信相手であると判定した前記第1パケットを前記通信相手に向けて転送し、前記第3テーブルにより識別し、その後前記第4テーブルにより送信元が前記通信相手であると判定した前記第2パケットを前記対象装置に向けて転送し、前記第2テーブルによる判定の結果、または前記第4テーブルによる判定の結果に基づいて、前記転送を許可しないと判定したパケットを廃棄する通信装置である。
本発明の一態様に係る通信装置は、前記第2識別情報と前記第4識別情報は、少なくともレイヤ2のアドレスと、レイヤ3のアドレスとの何れかを要素に含み、又は前記要素に更にレイヤ4のポート番号を含み、前記第1識別情報は、少なくともレイヤ1の識別子と、レイヤ2の送信元アドレスと、レイヤ3の送信元アドレスとの何れかを要素に含む。
本発明の一態様に係る通信装置は、少なくとも前記対象装置から自通信装置に向けたパケット又は前記対象装置から自通信装置に向けた通信において使用される通信プロトコルを監視した結果と、前記対象装置から前記通信相手に向けたパケット又は前記対象装置から前記通信相手に向けた通信で使用される通信プロトコルを監視した結果と、自通信装置の情報と前記対象装置の情報とを管理する管理装置より取得する情報との何れかに基づいて、前記第1識別情報、前記第2識別情報、前記第3識別情報、及び前記第4識別情報のうちの一部又は全部を取得して、前記スイッチ部による前記通信の制御に利用する識別情報取得部を備える。
本発明の一態様に係る通信装置における前記スイッチ部の各テーブルは、前記第1テーブル、前記第2テーブル、前記第3テーブル、及び前記第4テーブルの夫々が分割して構成され、又は、前記第1テーブル、前記第2テーブル、前記第3テーブル、及び前記第4テーブルのうち、少なくとも前記第2テーブル及び前記第4テーブルが統合して構成される。
本発明の一態様によれば、IoT機器のセキュリティ対策を簡易な方法で実施する通信制御装置、通信制御方法、及びプログラムを提供することができる。
第1の実施形態に係る通信システムを示す構成図である。 本実施形態に係る通信システムの構成例を示す図である。 IoT機器のセキュリティ対策を実施するための処理の手順を示すフローチャートである。 eMLBR11を示す図である。 廃棄テーブル1121の一例を示す図である。 パケットタイプテーブル1122の一例を示す図である。 SCOPEテーブル1123の一例を示す図である。 MLBテーブル1124の一例を示す図である。 ルーティングテーブル1125の一例を示す図である。 QoSテーブル1126の一例を示す図である。 eMLBR11におけるIoT機器のセキュリティ対策に係る処理の手順を示すフローチャートである。 eMLBR11におけるIoT機器のセキュリティ対策に係る処理の手順を示すフローチャートである。 各ノードで観測した累積パケット数の継時変化を示す図である。 通信システム1におけるデータ端末18のセキュリティ対策の手順を示す図である。 MACアドレスに含まれる製造者情報例の一部について示す図である。 QoSの設定について説明するための図である。 QoSの設定について説明するための図である。 WEBサーバ52の表示画面制御の状態遷移を示す図である。 WEBサーバ52の表示画面の例を示す図である。 WEBサーバ52の表示画面の例を示す図である。 WEBサーバ52の表示画面の例を示す図である。 WEBサーバ52の表示画面の例を示す図である。 WEBサーバ52の表示画面の例を示す図である。 WEBサーバ52の表示画面の例を示す図である。 第4の実施形態におけるeMLBR11を示す図である。 本実施形態におけるQoSの設定について説明するための図である。 本実施形態におけるeMLBR11におけるIoT機器のセキュリティ対策に係る処理の手順を示すフローチャートである。 第5の実施形態におけるeMLBR11を示す図である。 本実施形態におけるQoSの設定について説明するための図である。
以下、図面を参照し、本発明の通信制御装置、通信制御方法、及びプログラムの実施形態について説明する。
図1は、本実施形態の通信制御装置を含む通信システム1の構成を示す図である。
通信システム1は、ネットワークNW1を形成する。ネットワークNW1は、互いに通信を可能とする1又は複数の他のネットワークに接続されている。ネットワークNW2とネットワークNW3とネットワークNW4は、他のネットワークの一例である。以下の説明において、ネットワークNW1、ネットワークNW2、ネットワークNW3、ネットワークNW4等を総称してネットワークNWということがある。例えば、各ネットワークNWは、異なるISP(Internet Service Provider)等によって独立して管理されており、管理者が定める通信規則(ポリシー等)はそれぞれ異なるものとする。例えば、各ネットワークNWは、互いに接続されており、例えば、それぞれがインターネットの一部を構成する。
本実施形態の各通信システムにおいて、それぞれの通信規則を次の4つの規則に分けて規定する。
第1規則は、自通信システムにおいて通信することを許可しないものを、制限対象の通信として定める。例えば、通信システム1は、制限対象として定められた通信のパケットを、廃棄対象のパケットとして選択するための条件(「廃棄対象条件」)を、「廃棄対象情報」として管理する。通信システム1は、廃棄対象情報をリスト化したブラックリスト(「廃棄対象ブラックリスト」)又はテーブル化した「廃棄テーブル」を利用することにより、制限対象とする通信を規制する。通信システム1は、廃棄対象ブラックリスト、又は、廃棄テーブルを各装置の廃棄対象記憶部等にそれぞれ格納してもよい。制限対象には、各装置に共通するもの、装置毎に固有のものが含まれていてもよい。なお、上記及び以下の説明における「廃棄」には、当該パケットに付与されている宛先情報に基づく通信を制限する、又は宛先情報に基づく通信を許可しない、又は宛先情報に基づく通信を遮断する、又は宛先情報に基づく通信を遮断し特定のポートに出力するなどのケースも含まれるものとし、これらを纏めて単に「廃棄」という。
第2規則は、自通信システムにおいて通信することを許可する条件を定めるものである。例えば、通信システム1は、許可する通信によるパケットを選択する条件(「通信許可条件」)を、「通信許可情報」に纏めて管理する。通信システム1は、通信許可情報をリスト化したホワイトリスト(「通信許可ホワイトリスト」)又はテーブル化した「MLBテーブル」を利用することにより、許可する通信を抽出する。MLBテーブルの詳細については後述する。なお、「通信許可ホワイトリスト」はホワイトリストの一例である。
第3規則は、自通信システムにおける通信のパケットの転送先を決定する「ルーティング条件」を定めるものである。例えば、通信システム1は、ルーティング条件を、「ルーティング情報」として管理する。通信システム1は、「ルーティング情報」をテーブル化した「ルーティングテーブル」を利用して、通信を制御する。
第4規則は、自通信システムにおいて、通信相手として許可するものを限定する条件を定めるものである。例えば、通信システム1は、限定した通信相手からのパケットを選択する条件(「通信相手許可条件」)を、「通信相手許可情報」に纏めて管理する。通信システム1は、通信相手許可情報をリスト化したホワイトリスト(「通信相手許可ホワイトリスト」)又はテーブル化した「QoSテーブル」を利用することにより、限定した通信相手を抽出する。QoSテーブルの詳細については後述する。なお、「通信相手許可ホワイトリスト」はホワイトリストの一例である。
通信システム1は、上記の規則の一部又は全部を利用して、その通信を制御する。
なお、本実施形態の以下の説明において、第2規則の通信許可ホワイトリストと第4規則の通信相手許可ホワイトリストの双方を区別することなく説明する場合に、単に「ホワイトリスト」という。また、第2規則の通信許可情報と第3規則のルーティング情報と第4規則の通信相手許可情報の全部または一部を纏めて経路情報という。また、通信システム1において通信相手を限定して通信する特定の装置を対象装置と呼び、対象装置又は対象装置による通信の何れかを特定する情報を特定情報と呼ぶ。例えば、特定情報には、通信許可情報又は通信相手許可情報を生成するための情報が含まれる。
なお、特定の装置又は通信を識別するための情報を識別情報と呼ぶことがある。例えば、受信したパケットに付与された識別情報を取得する場合には、通信の階層のレイヤ1の識別子、レイヤ2(L2)アドレス、レイヤ3(L3)アドレス(IPアドレス)、及び、レイヤ4(L4)プロトコルのポート番号の一部又は全部を含む情報が識別情報に含まれる。また、特定の通信相手を特定する場合の識別情報には、各装置のIPアドレス又はURL(Uniform Resource Locator)などが含まれる。第3規則のルーティング情報は、上記の識別情報としての宛先IPアドレスによって規定される場合がある。
通信システム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は、特定の装置に対してポートスキャンを実施するように構成してもよい。
通信システム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とは異なるルータ等により構成される。
以下、通信システム1は、IoT機器等のデータ端末18を含み、データ端末18による通信を中継する場合にその通信に対するセキュリティ対策を講じることにより、IoT機器であるデータ端末18による通信のセキュリティ面の不安を低減する方法の一例を例示する。なお、データ端末18は、様々な形態の通信端末であってよい。
IoT機器による通信におけるセキュリティ面の不安としては、例えば、下記のものが挙げられる。第1の不安として、IoT機器を標的としたサイバー攻撃が増加しており、これによりIoT機器がマルウェアに感染するリスクが挙げられる。第2の不安として、マルウェアに感染したIoT機器が、C&Cサーバなどに接続を試みるようになるリスクが挙げられる。第3の不安として、マルウェアに感染したIoT機器が、本来の機能を全うせずに異常な動作をするリスクが挙げられる。第4の不安として、マルウェアに感染したIoT機器が、他の機器を攻撃したり、不正なパケットを送信したりするリスクが挙げられる。
なお、上記の第1の不安として挙げたマルウェアの感染は、IoT機器に対する探索パケット等によってマルウェアが埋め込まれる場合のように、ネットワークを介して感染することが想定される。また、その他に、例えば、IoT機器の製造段階でマルウェアや遠隔操作などのためのバックドア(裏口、侵入口)が埋め込まれていたりする場合など様々なパターンが想定される。これまで、一般的な端末装置については、マルウェアなどの感染を予防する様々な処置がとられてきたが、IoT機器では、それらの方法を必ずしも適用することができない場合がある。
例えば、パーソナルコンピュータなどの汎用の端末装置の多くのものは、OS等の機能によりIEEE802.1X認証を利用できることが知られている。IEEE802.1X認証を利用することで、許容する通信の範囲を制限することが可能になる。これに対し、IoT機器については、IEEE802.1X認証を利用できないものがある。IEEE802.1X認証を利用できるIoT機器については、汎用の端末装置と同様にIEEE802.1X認証を適用できるが、IEEE802.1X認証を利用できないIoT機器については、汎用の端末装置と同様の手法を利用することができない。以下の説明で例示するIoT機器は、例えば、IEEE802.1X認証を利用できない通信端末装置の一例である。
そこで、通信システム1では、下記の点に着目してIoT機器のマルウェア感染に対する対策を実施する。
第1に、IoT機器の多くは、特定の通信相手と通信する場合が多く、通信先が限定されていることが多い。
第2に、IoT機器であることが、その機器が示す属性情報から判別可能である。
第3に、IoT機器が通信相手を限定して通信するように容易にネットワークの設定を変更可能にする。
第4に、上記第1から第3までの結果をeMLBR11に適切に反映させる。
なお、通信システム1では、上記の着目点の他、下記の点に留意して通信の完全性を確保する。
通信システム1は、端末装置17とデータ端末18などの端末について、真正性と健全性を検査して、その結果に応じて帯域制限や通信相手の限定等を課すサービス品質(QoS)を決定する。
通信システム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から転送されたパケットを、物理ポートに接続される通信回線に出力する。
スイッチ部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とは、上記の複数のテーブルの一例である。第1記憶部1151は、eMLBR11が受信した受信パケット(受信データ)の転送を制限する条件を定めた第1規則(廃棄対象ブラックリスト)を記憶する。受信パケットは、ヘッダ情報とデータ(受信データ)とを含んで構成される。第2記憶部1152は、受信パケットの転送を許可する条件を定めた第2規則(通信許可ホワイトリスト)を記憶する。第3記憶部1153は、パケットの転送先を決定するルーティング条件を定めた第3規則(ルーテイングテーブル、経路情報)を記憶する。第4記憶部1154は、限定した通信相手との通信のみを許可する条件を定めた第4規則(通信相手許可ホワイトリスト、経路情報)を記憶する。
コントローラ111は、例えば、CPU(Central Processing Unit)等のプロセッサを有する。コントローラ111は、記憶部115に記憶されているプログラムにより、複数の物理ポートを有するスイッチ部112から得た情報と、記憶部115に記憶されている複数のテーブルの情報の少なくとも何れかの情報に基づいて、スイッチ部112を制御する。例えば、コントローラ111は、管理ホスト15から取得した各種情報、端末装置17又はデータ端末18からの要請などに基づいて、第1記憶部1151や第2記憶部1152、第3記憶部1153、第4記憶部1154を必要に応じて更新し、スイッチ部112の転送処理を変更する。より具体的には、後述するように、第1記憶部1151に格納された第1規則はスイッチ部112内の廃棄テーブル1121に、第2記憶部1152に格納された第2規則はスイッチ部112内のMLBテーブル1124に、第3記憶部1153に格納された第3規則はスイッチ部112内のルーティングテーブル1125に、第4規則はスイッチ部112内のQoSテーブル1126に、登録され、パケットの転送を制御する。
通信システム1における通信メッセージは、フレーム又はパケットとして通信される。フレーム又はパケットのヘッダ情報には、通信メッセージを含むフレーム又はパケットを識別する識別情報が付与される。
特定情報取得部1111は、スイッチ部112を介する通信において、通信相手を限定して通信するデータ端末18などの対象装置を特定する特定情報又はデータ端末18などの対象装置による通信を特定する特定情報の少なくとも何れかを取得する。特定情報の詳細は後述する。
識別情報取得部1112は、特定情報に基づいて特定される通信を識別する識別情報を取得する。識別情報取得部1112は、データ端末18からの通信要求に起因する認証処理、検疫処理、レイヤ3アドレスの割り当て処理の一部又は全部の処理の結果から、識別情報を取得してもよい。識別情報を取得する方法の詳細は後述する。
WL管理部1113は、通信を許可する条件を抽出し、ホワイトリストを生成して、その条件を管理する。このホワイトリストには、第2規則の通信許可ホワイトリストと第4規則の通信相手許可ホワイトリストの何れか一方又は両方が含まれる。
出力制御部1114は、複数の出力ポートを有するスイッチ部112の出力ポートを選択するためのルーティング情報を生成する。WL管理部1113と出力制御部1114についての詳細は後述する。
(iMLBR12)
iMLBR12は、コントローラ121と、IF部123と、IF部124と、スイッチ部122と、記憶部125とを含む。
(bMLBR13)
bMLBR13は、コントローラ131と、IF部133と、IF部134と、スイッチ部132と、記憶部135とを含む。
上記のとおり、各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に対して送信してもよい。例えば、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に限定される場合が多い。
(スイッチ部を制御してIoT機器のセキュリティ対策を実施するための処理)
図3を参照して、IoT機器のセキュリティ対策を実施するための処理について説明する。図3は、IoT機器のセキュリティ対策を実施するための処理の手順を示すフローチャートである。
通信システム1は、IoT機器を、通信システム1において双方向通信を実施する端末として登録する(S10)。
通信システム1において、例えば、上記の処理(S10)は、下記する複数の処理の組み合わせとして実現される。
まず、通信システム1は、通信相手を限定する対象のIoT機器を特定する(S11)。
次に、通信システム1は、上記で特定された対象を識別可能な識別情報(第1識別情報)を取得する(S12)。
次に、通信システム1は、上記で特定された対象の通信相手を識別可能な識別情報(第2識別情報)を取得する(S13)。
次に、通信システム1は、限定する対象として特定された対象から送信されたパケットの通信相手を、上記で取得した識別情報(第1識別情報と第2識別情報)に基づいて限定するための通信相手許可ホワイトリストの要素(第1要素)を生成する(S14)。
次に、通信システム1は、限定する対象として特定された対象宛に送信されたパケットの通信相手を、上記で取得した識別情報(第1識別情報と第2識別情報)に基づいて限定するための通信相手許可ホワイトリストの要素(第2要素)を生成する(S15)。
次に、通信システム1は、通信相手許可ホワイトリストに上記の第1要素と第2要素とを追加する(S16)。
通信システム1は、通信相手許可ホワイトリストに登録後に、第1要素と第2要素とに基づいて実際の通信を保護するための処理(S20)を実施する。
これにより、通信システム1は、IoT機器のセキュリティ対策を実施する。
[より具体的な一実施例]
以下の説明では、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を備える。図5から図10のそれぞれは、廃棄テーブル1121、パケットタイプテーブル1122、SCOPEテーブル1123、MLBテーブル1124、ルーティングテーブル1125、及びQoSテーブル1126の一例を示す図である。
(スイッチ部における各種テーブルの一例)
スイッチ部112において、廃棄テーブル1121には、廃棄するパケットのフローエントリが必要数格納される。廃棄するパケットのフローエントリは、前述のパケットの転送を制限する条件である第1規則(ブラックリスト)に対応する。例えば図5に示すように、廃棄テーブル1121は、格納されたフローエントリにマッチしたパケットを廃棄(drop)する。格納されたフローエントリにマッチしなかったパケットは、パケットタイプテーブル1122による選択処理の対象にする。フローエントリに規定する制限情報は、1つのIPアドレスであってもよく、或いは、複数のIPアドレスを含むネットワークアドレスであってもよい。さらに、宛先IPアドレスや宛先ポート番号、送信元ポート番号、パケット長、パケットタイプ、TCP制御フラグ等を適宜組み合わせて規定することによって、攻撃パケットと同じ宛先IPアドレスに送信しようとしている他の一般ユーザの通信を妨げることを抑制することができる。例えば、廃棄テーブル1121のフローエントリとして、転送を制限する領域に対応するネットワークアドレスをマッチ条件として規定する。廃棄テーブル1121は、そのネットワークアドレスが示すアドレス空間に含まれた送信元IPアドレスが付与されているパケットの転送を制限する。図5に示す「129.168.3.0/24」は、IPv4で記述した場合のネットワークアドレスの一例である。
パケットタイプテーブル1122は、廃棄テーブル1121により廃棄されなかったパケットと、コントローラから取得したパケットを処理対象のパケットとし、パケットのタイプ毎のフローエントリを格納する。例えば図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)などの通信制御パケットをコントローラ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上段)にする。
図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下段)ことが含まれる。その詳細は後述する。
(IoT機器のセキュリティ対策に係る処理)
図11Aと図11Bは、eMLBR11におけるIoT機器のセキュリティ対策に係る処理の手順を示すフローチャートである。
まず、eMLBR11においてコントローラ111は、パケットイン1116を介してスイッチ部112からのパケットを取得する(S105)。
次に、特定情報取得部1111は、スイッチ部112から取得したパケットが、通信相手を限定する対象装置等の特定情報を含むものであるか否かを判定する(S111)。S111の判定により通信相手を限定する対象装置等の特定情報を含むものであるであると判定された場合、特定情報取得部1111は、通信相手を限定する対象装置等の特定情報を取得する(S112)。
次に、WL管理部1113は、通信許可ホワイトリストに追加する通信許可情報(要素)を生成する条件を満たすか否かを判定する(S113)。
S113の判定により、通信許可ホワイトリストに追加する通信許可情報を生成する条件を満たすと判定された場合、WL管理部1113は、通信許可情報を生成する(S114)。なお、通信許可情報を生成する処理の詳細については後述する。
次に、WL管理部1113は、生成した通信許可情報が、第2記憶部1152に第2規則として登録されているか否かを判定する(S115)。生成した通信許可情報が第2記憶部1152に登録されていないと判定した場合、WL管理部1113は、生成した通信許可情報を第2記憶部1152に書き込み、第2規則として追加して更新する(S116)。上記通り、通信許可情報の追加に伴う第2規則の変更が実施される毎に、WL管理部1113は、フロー変更出力部1118を介して、新たな第2規則の情報をスイッチ部112に送信する。
一方、S113の判定により通信許可ホワイトリストに追加する通信許可情報を生成する条件を満たしていないと判定された場合、S115の判定により生成した通信許可情報が第2記憶部1152に登録されていると判定した場合、又はS116の処理を終えた場合、WL管理部1113は、所定期間が経過した通信許可情報が有るか否かを判定する(S117)。例えば、WL管理部1113は、第2記憶部1152に登録されている通信許可情報のうち、通信許可情報に対応する通信が所定期間発生しなかった場合、つまり、上記通信のパケットが到来しない状態になった後、或いは、到来しなくなって所定期間が経過した後、第2記憶部1152に格納されている第2規則のうちから、上記場合の通信許可情報を削除する(S118)。上記通り、通信許可情報の削除に伴う第2規則の変更が実施される毎に、WL管理部1113は、フロー変更出力部1118を介して、新たな第2規則の情報をスイッチ部112に送信する。
eMLBR11のスイッチ部112は、更新された第2記憶部1152を用いて転送処理を実施する。
一方、S111の判定により通信相手を限定する対象装置等の特定情報を含むものではないと判定された場合、識別情報取得部1112は、スイッチ部112から取得したパケットが、特定された対象の通信相手の識別情報を含むものであるか否かを判定する(S121)。S121の判定により特定された対象の通信相手の識別情報を含むものであると判定された場合、特定された対象装置等の識別情報を取得する(S122)。
S122の処理を終えた後、又は、S121の判定により特定された対象の通信相手の識別情報を含むものではないと判定された場合、識別情報取得部1112は、スイッチ部112から取得したパケットが、特定された対象の通信相手の識別情報を含むものであるか否かを判定する(S131)。S131の判定により特定された対象の通信相手の識別情報を含むものであると判定された場合、識別情報取得部1112は、特定された対象装置等の識別情報を取得する(S132)。
S132の処理を終えた後、又は、S131の判定により特定された対象の通信相手の識別情報を含むものではないと判定された場合、WL管理部1113は、通信相手許可ホワイトリストに追加する通信相手許可情報(要素)を生成する条件を満たすか否かを判定する(S141)。
S141の判定により、通信相手許可ホワイトリストに追加する通信相手許可情報を生成する条件を満たすと判定された場合、WL管理部1113は、通信相手許可情報を生成する。例えば、WL管理部1113は、S122とS132において識別情報がそれぞれ生成された段階で、通信相手許可情報を生成する条件を満たすと判定する。なお、通信相手許可情報を生成する処理の詳細については後述する。
次に、WL管理部1113は、生成した通信許可情報が、第4記憶部1154に第4規則として登録されているか否かを判定する(S161)。生成した通信相手許可情報が第4記憶部1154に登録されていないと判定した場合、WL管理部1113は、生成した通信相手許可情報を第4記憶部1154に書き込み、第4規則として追加して更新する(S162)。上記通り、通信相手許可情報の追加に伴う第4規則の変更が実施される毎に、WL管理部1113は、フロー変更出力部1118を介して、新たな第4規則の情報をスイッチ部112に送信する。
一方、S141の判定により通信相手許可ホワイトリストに追加する通信相手許可情報を生成する条件を満たしていないと判定された場合、S161の判定により生成した通信相手許可情報が第4記憶部1154に登録されていると判定した場合、又はS162の処理を終えた場合、WL管理部1113は、所定期間が経過した通信相手許可情報が有るか否かを判定する(S171)。例えば、WL管理部1113は、第4記憶部1154に登録されている通信相手許可情報のうち、通信相手許可情報に対応する通信が所定期間発生しなかった場合、つまり、上記通信のパケットが到来しない状態になった後、或いは、到来しなくなって所定期間が経過した後、第4記憶部1154に格納されている第4規則のうちから、上記場合の通信相手許可情報を削除する(S172)。上記通り、通信相手許可情報の削除に伴う第4規則の変更が実施される毎に、WL管理部1113は、フロー変更出力部1118を介して、新たな第4規則の情報をスイッチ部112に送信する。
eMLBR11のスイッチ部112は、更新された第4記憶部1154を用いて転送処理を実施する。
コントローラ111は、IoT機器のセキュリティ対策に係る処理を、上記の手順に従い実施する。
(IoT機器のセキュリティ対策に係る処理の詳細)
上記のとおり、IoT機器のセキュリティ対策に係る処理は、特定情報を取得する処理と、識別情報を取得する処理と、通信許可情報を生成する処理と、出力制御処理とに大別される。
(機能検証に用いた構成例)
機能検証に用いた構成例を示して、通信許可情報を生成する処理について説明する。図12は、本実施形態の通信システムの機能検証モデルの一例を示す図である。
同図に示すように、eMLBR11のポート3には、L2スイッチ装置41を介してデータ端末18と管理ホスト15と、擬似HRS51とが接続され、ポート4には、L2スイッチ装置42を介してメールサーバ53が接続され、ポート5には、WEBサーバ52が接続され、ポート6には、管理ホスト61が接続されている。
なお、コントローラ111は、スイッチ部112に対して接続されるほかに、L2スイッチ装置42を介してメールサーバ53が接続されている。
上記のように構成した通信システム1における各装置は、下記のように機能する。
まず、擬似HRS51は、データ端末18の認証サーバであり、Nmap(Network Mapper)などを実行可能とする。
(特定情報を取得する処理)
図13は、通信システム1におけるデータ端末18のセキュリティ対策の一手順を示す図である。
擬似HRS51は、Nmapなどによりデータ端末18に対してポートスキャンを実施して(S202)、その結果をeMLBR11に通知する(S204)。ポートスキャンの結果には、データ端末18の属性情報として、例えば、データ端末18のL2スイッチ装置41に接続されているポートのMACアドレス、開放しているL4ポートアドレス、データ端末18のOSや実行中のアプリケーションプログラム等が含まれる。例えば、擬似HRS51は、属性情報を示すテキストデータをICMPパケットのペイロード部に含めて、eMLBR11への通知を、ICMP requestとして送信して、eMLBR11において判定させる。
eMLBR11のコントローラ111は、スイッチ部112を介して、擬似HRS51から通知されたデータ端末18の属性情報を受信する。コントローラ111の特定情報取得部1111は、データ端末18の候補とされる候補データ端末18A(候補対象装置)に対するポートスキャンを実施した結果、すなわちデータ端末18の属性情報から、その特定情報を抽出する(S206)。特定情報取得部1111は、例えば、データ端末18の候補とされるIoT機器の製造者情報を予め保持しており、この製造者情報と、抽出した特定情報とを対比してデータ端末18の属性情報を判定する(S208)。
なお、データ端末18の候補とされるIoT機器の製造者情報は、特定情報取得部1111に代えて、擬似HRS51が保持するように構成してもよい。この場合、擬似HRS51は、この製造者情報に基づいてデータ端末18の属性情報を判定し、判定の結果とIoT機器による通信の特定情報とをコントローラ111に送信する。コントローラ111の特定情報取得部1111は、判定の結果とIoT機器による通信の特定情報とを取得する。
なお、データ端末18の候補とされるIoT機器の製造者情報は、特定情報取得部1111に代えて、製造者または通信事業者などが管理する外部のサーバが保持するように構成してもよい。この場合、擬似HRS51は、外部のサーバが保持する製造者情報に基づいてデータ端末18の属性情報を判定し、判定の結果とIoT機器による通信の特定情報とをコントローラ111に送信する。コントローラ111の特定情報取得部1111は、判定の結果とIoT機器による通信の特定情報とを取得する。
(MACアドレスに含まれる製造者情報を取得する処理の詳細)
図14は、MACアドレスに含まれる製造者情報例の一部について示す図である。同図に示されるように、MACアドレスの上位24bitは、製造者を識別可能な固有の情報(ベンダーコード)として割り当てられている。特定情報取得部1111は、データ端末18の属性情報から抽出したMACアドレスの一部と、保持しているIoT機器の製造者情報としてのMACアドレスの一部を比較する。比較の結果一致しない場合は、特定情報取得部1111は、その候補データ端末18Aがデータ端末18として適格でないものであると判定する。特定情報取得部1111は、製造者情報が一致する候補データ端末18Aについてのみ、データ端末18の属性情報から特定情報を抽出して取得する。
なお、属性情報から抽出した製造者情報がベンダーコード表に存在しない場合には、特定情報取得部1111は、接続された機器は不明なホストであると判定する。
上記のように、特定情報取得部1111が製造者情報に基づいて判定することで、本来の製造者の製造者情報と異なる製造者情報を示す端末を、偽装された端末として判定することができる。
(識別情報を取得する処理)
次に、識別情報取得部1112は、特定情報取得部1111によって特定情報が取得された後に、メールサーバ53宛にメールの送信要求を送信する(S210)。メールサーバ53宛のメールの送信要求は、データ端末18の通信相手の識別情報を取得するためのメールを管理ホスト15宛に送付することを要求するものである。メールサーバ53は、管理ホスト15宛に、データ端末18の通信相手の識別情報を取得するためのメールを送付する(S212)。さらに、メールサーバ53は、管理者のメールアドレス宛に、データ端末18が検出されたことを通知するためのメールを送付してもよい(S214)。なお、管理者のメールアドレス宛のメールの送付に代えて、メールサーバ53は、データ端末18が検出されたことの通知を、管理者の携帯型端末宛にショートメッセージサービスを利用して送付してもよい。或いは、識別情報取得部1112は、管理者の携帯型端末宛に通知を、ショートメッセージサービスを利用して送付してもよい。
管理ホスト15は、メールサーバ53からのメールを取得して(S216)、そのメールに記載されているWEBサーバ52のURL又はアドレス宛に、通信の接続を試みる(S218)。WEBサーバ52は、その通信の開始要求を受け付けて、上記のURL又はアドレスに基づいて定まる情報を、管理ホスト15宛に送信し、管理ホスト15から所定の情報を取得する(S220)。
次に、WEBサーバ52は、管理ホスト15から受け付けたIPアドレス又はネットワークアドレスを含む情報を、eMLBR11のコントローラ111宛に送信する(S230)。コントローラ111は、WEBサーバ52からの情報を、データ端末18の通信相手の識別情報として取得する(S234)。
コントローラ111は、上記のように、特定情報(通信許可ホワイトリスト)を取得する処理と通信相手の識別情報(通信相手許可ホワイトリスト)を取得する処理とを、データ端末18毎に実施した後に、そのデータ端末18に対する通信許可情報を生成する(S236)。
(ホワイトリストの管理)
次に、ホワイトリストの管理について説明する。WL管理部1113は、特定情報に基づいて特定されるデータ端末18からの通信の通信許可情報を、通信許可ホワイトリストに纏めて管理する。例えば、WL管理部1113は、通信許可情報は、マッチ条件とアクションの項目を含む。通信許可情報は、次の組を含む。第1のマッチ条件として、特定された対象の「IPアドレス又はネットワークアドレス」、「MACアドレス」、「スイッチ部112の物理ポート番号又は(セキュア)チャネル番号」、「L4ポート番号」の一部又は全部を含む。第2のマッチ条件として、特定された対象の通信相手の「IPアドレス又はネットワークアドレス」、「MACアドレス」、「スイッチ部112の物理ポート番号又は(セキュア)チャネル番号」、「L4ポート番号」の一部又は全部を含む。上記の組のマッチ条件には、eMLBR11を介した通信の送信元情報が含まれる。
WL管理部1113は、取得した識別情報に基づいた通信許可情報を通信許可ホワイトリストの要素として追加する。例えば、WL管理部1113は、スイッチ部112が備える判定部に、受信したパケットが特定情報に基づいて特定された通信のデータ端末18から送られたもの( fromIoT)であることを、識別情報と通信許可ホワイトリストの情報に基づいて判定させるように、通信許可ホワイトリストを生成する(S242)。例えば、前述したMLBテーブル1124、ルーティングテーブル1125、及びQoSテーブル1126の組み合わせは、上記の判定部の一例である。
さらに、WL管理部1113は、特定情報に基づいて特定される通信の通信相手をデータ端末18宛に限定するための通信許可情報であって、取得した識別情報に基づいた通信相手許可情報を通信相手許可ホワイトリストの要素として追加する。
また、WL管理部1113は、スイッチ部112が備える判定部に、受信したパケットが特定情報に基づいて特定された通信のデータ端末18宛に送られたもの(toIoT)であることを、ルーティングテーブルに基づいて判定させ、さらに当該パケットが通信相手として許可されたものかを判定するように、通信相手許可ホワイトリストを生成する(S244)。
(出力制御の処理)
出力制御部1114は、判定部による判定の結果から、特定情報に基づいて特定された通信のデータ端末18から送られたもので、かつ通信相手として許可された通信相手宛であると判定した場合に、通信相手宛に向けて送信するように決定した出力先に、受信したパケットを出力させるように、スイッチ部112の出力部を制御する。
例えば、出力制御部1114は、次のとおりIoT装置からの通信であると判定した場合には、スイッチ部112を下記のように制御する。MLBテーブル1124により、送信元IPアドレス、送信元MACアドレス等から当該パケットがIoT装置から送信されたパケットであると判定された場合には、当該パケットを、QoSテーブル1126に基づいたQoS制御の対象にする。
図15は、IoTから送信されたパケットのQoSの設定について説明するための図である。例えば、図15に示すように、QoSテーブル1126は、MLBテーブル1124により当該パケットがIoT装置から送信されたパケットであると判定されたパケットに対し、所望のQoSを設定して当該パケットをルーティングテーブル1125による転送処理の対象にする。この場合、ルーティングテーブル1125は、QoSテーブル1126により設定された適正な通信相手と判定されれば、当該パケットを所望の出力ポートに出力する。一方、QoSテーブル1126は、MLBテーブル1124により当該パケットがIoT装置から送信されたパケットであると判定されたパケットに対し、当該パケットが転送すべきパケットでないと特定した場合、当該パケットをQoSテーブル1126の第4規則に従って、廃棄してもよい。
さらに、出力制御部1114は、判定部による判定の結果から、特定情報に基づいて特定された通信のデータ端末18から送られたもので、かつ許可された通信相手宛であると判定した場合に、当該通信相手宛に向けて送信するように決定した出力先に、受信したパケットに所定の送信元MACアドレスと宛先MACアドレスを付加して出力させるように、パケット出力113を制御する。
例えば、出力制御部1114は、次のとおりIoT装置への通信であると判定した場合には、スイッチ部112を下記のように制御する。
ルーティングテーブル1125により、宛先IPアドレスから当該パケットがIoT装置宛に送信するパケットであると判定された場合には、当該パケットを、QoSテーブル1126に基づいたQoS制御の対象にする。
図16は、IoT宛に送られてきたパケットのQoSの設定について説明するための図である。例えば図16に示すように、ルーティングテーブル1125は、MLBテーブル1124により当該パケットが偽装されたパケットでないと判定されたパケットに対し、所望のQoSを設定して当該パケットをQoSテーブル1126による通信相手の適切性の判定の対象にする。この場合、QoSテーブル1126は、QoSテーブル1126により許可された通信相手からのパケットと判定された場合に、当該パケットを、宛先のIoT装置に対応する所望の出力ポートに出力する機能も兼ねる。なお、QoSテーブル1126は、当該パケットが転送すべきパケットでないと判定した場合、当該パケットをQoSテーブル1126に従って、廃棄してもよい。
上記のように、出力制御部1114は、セキュリティ性が確保できる範囲にデータ端末18の通信相手が存在する状態にスイッチ部112を制御する(S250)。
この場合、識別情報取得部1112は、セキュリティ性が確保できる範囲にデータ端末18の通信相手が存在する状態で通信を許可することとし、通信相手許可ホワイトリストに格納する通信相手許可情報を生成するための識別情報を取得するものとする。
出力制御部1114は、受信したパケットに付与された識別情報から抽出した送信元情報と宛先情報との組が、通信相手許可ホワイトリストに格納された通信相手許可情報の送信元情報と宛先情報との組の何れかに一致しない不一致状態が生じた場合に、受信したパケットを所定の宛先に中継しないように、受信したパケットの出力先を決定する。これにより、データ端末18は、限定範囲内に存在する管理ホスト61との通信は可能であるが、限定範囲外に存在するホストBとの通信を行うことができなくなる。これにより、データ端末18がマルウェアに感染して、C&Cサーバへのアクセスを試みようと作用しても、その通信は、eMLBR11によって遮断される。
なお、出力制御部1114は、不一致状態の発生が所定の条件を満たした場合に、不一致状態の発生を報知するようにしてもよい。
図17は、WEBサーバ52の表示画面制御の状態遷移を示す図である。図18から図23は、WEBサーバ52の表示画面の例を示す図である。WEBサーバ52は、例えば、データ端末18の通信相手を限定するための所定の情報として、2通りの指定方法を提供する。WEBサーバ52は、データ端末18の通信相手を限定するためのアドレス情報を指定する方法の選択ページ(図18又は図21)を、管理ホスト15の表示部に表示させる。
アドレス情報を指定する方法が選択された場合、WEBサーバ52は、管理ホスト15から指定の方法を選択した結果を受け、限定する通信相手のIPアドレスを入力させるページ(図19)を、管理ホスト15に表示させる。
次に、WEBサーバ52は、管理ホスト15からIPアドレスを受け付けて、その後、限定する通信相手のIPアドレスの入力結果(図20)を管理ホスト15に表示させる。
一方、ネットワークアドレスを指定する方法が選択された場合、限定する通信相手のネットワークアドレスを入力させるページ(図22)を、管理ホスト15に表示させる。
次に、WEBサーバ52は、管理ホスト15からネットワークアドレスの何れかを受け付けて、その後、限定する通信相手のネットワークアドレスの入力結果(図23)を管理ホスト15に表示させる。
本実施形態によれば、コントローラ111は、複数の物理ポートを有するスイッチ部112から得た情報に基づいてスイッチ部112を制御する制御情報を生成する。特定情報取得部1111は、スイッチ部112を介する通信において、通信相手を限定して通信するデータ端末18又はデータ端末18による通信の少なくとも何れかを特定する特定情報(通信許可情報)を取得する。識別情報取得部1112は、特定情報に基づいて特定される通信相手を識別する識別情報(通信相手許可情報)を取得する。出力制御部1114は、スイッチ部112が受信したパケットについてのスイッチ部112からの出力先を決定する経路情報を生成して、経路情報を上述の制御情報に含める。その際、出力制御部1114は、スイッチ部112が受信したパケットに付与されている送信元情報と宛先情報との組が、識別情報(通信相手許可情報)に基づいて決定される送信元情報と宛先情報との組に含まれる通信は許可するものとして転送するように、経路情報及び通信相手許可情報を生成する。
これにより、コントローラ111は、IoT機器であるデータ端末18のセキュリティ対策を簡易な方法で実施することができる。
また、出力制御部1114は、スイッチ部112が受信したパケットに付与されている送信元情報と宛先情報との組が、識別情報(通信相手許可情報)に基づいて決定される送信元情報と宛先情報との組に含まれていない通信のパケットの転送を、前記スイッチ部により制限させるように、経路情報及び通信相手許可情報を生成してもよい。
また、WL管理部1113は、データ端末18と通信相手との間で許可する通信であることを示す通信許可情報(通信相手許可情報)を、データ端末18から通信相手宛の通信と、通信相手からデータ端末18宛の通信とに分けて、識別情報に基づいてそれぞれ生成してもよい。
また、WL管理部1113は、通信相手として許可することを示す通信相手許可ホワイトリストを生成し、通信相手許可ホワイトリストを制御情報に含ませてもよい。
さらに、WL管理部1113は、データ端末18の通信相手として許可することを示す通信相手許可情報を、データ端末18からデータ端末18の通信相手宛の通信と、データ端末18の通信相手からデータ端末18宛の通信とに分けて、識別情報に基づいてそれぞれ生成してもよい。
また、WL管理部1113は、その通信相手許可情報を通信相手許可ホワイトリストの要素にして、通信相手許可ホワイトリストを制御情報に含ませてもよい。
出力制御部1114は、通信相手許可情報に基づいて、データ端末18の通信相手からデータ端末18宛の通信に対応する出力先を決定する経路情報を生成してもよい。
また、出力制御部1114は、受信したパケットに付与された識別情報から抽出したレイヤ3の送信元情報と宛先情報との組が、通信相手許可ホワイトリストに格納された通信相手許可情報のレイヤ3の送信元情報と宛先情報との組の少なくとも何れかに一致し、かつ、パケットを受信したポートの識別情報又はパケットが送信されたポートの論理識別情報を含む下位レイヤの識別情報が通信許可ホワイトリストに格納された通信許可情報の下位レイヤの識別情報に一致する場合に受信したパケットを所望の宛先に中継するように、受信したパケットの出力先を決定する。
これにより、IoT機器のセキュリティ対策を簡易な方法で実施することができる。
(第1の実施形態の変形例)
第1の実施形態の変形例について説明する。第1の実施形態では、データ端末18毎に、1つの通信相手のIPアドレス又はネットワークアドレスを設定することとして説明したが、本変形例では、これに代えて、複数のデータ端末18に対する通信相手のIPアドレス又はネットワークアドレスを設定可能にする方法を例示する。
対応関係は下記の場合が想定される。
(1)複数のデータ端末18から、これらに共通するホストに対して通信するように限定する場合。
(2)複数のデータ端末18から、互いに異なるホストに対して通信するように限定する場合。
上記のこれらの場合においても、コントローラ111は、前述したホワイトリストと同様のホワイトリストを作成することにより、IoT装置の通信のセキュリティ性を確保することができる。なお、複数のIPアドレス、又は、複数のネットワークアドレスを、コントローラ111に登録する際には、上記を纏めて取り込むことで、特に大規模のシステムにおいて、ネットワーク管理に付帯する業務を簡素化することができる。
例えば、識別情報取得部1112は、データ端末18の識別情報の検出結果を管理ホスト61に通知する。管理ホスト61は、その通知を受けて、データ端末18の識別情報の検出結果に、通信相手を特定するIPアドレス情報又はネットワークアドレスを対応付ける。管理ホスト61は、データ端末18の識別情報の検出結果に対応付けた通信相手を特定するIPアドレス情報又はネットワークアドレスをコントローラ111宛に送信する。コントローラ111の識別情報取得部1112は、管理ホスト61から取得した指令に基づいて、特定された通信の識別情報として決定するとよい。
これにより、第1の実施形態の変形例の通信システム1によれば、第1の実施形態と同様の効果を奏するものであるとともに、複数のデータ端末18に対する識別情報の付与業務を簡素化することができる。
(第2の実施形態)
第2の実施形態について説明する。前述の第1の実施形態は、候補データ端末18Aのレイヤ2アドレスから抽出される製造者情報、又は、候補データ端末18Aに対するポートスキャンを実施した結果に基づいた特定情報を取得する場合を例示した。本実施形態では、これに代えて、候補データ端末18Aが送信するパケット、又は、使用する通信プロトコルの何れかを監視した結果に基づいて決定された特定情報を取得する場合を例示する。この点が前述の第1の実施形態と異なる。以下、この点を中心に説明する。
(特定情報を取得する処理)
特定情報取得部1111は、候補データ端末18Aが送信するパケット、又は、使用する通信プロトコルを監視した結果に基づいて通信相手を限定すべき対象を特定して、特定した対象の情報を取得する。
例えば、特定情報取得部1111は、UPnP、SIPなど通信プロトコルを監視して、その結果に基づいて対象を特定する。例えば、特定情報取得部1111は、UPnPを監視する手法として、UPnP snoopingとして知られている手法を適用してもよい。特定情報取得部1111は、SIPを監視する手法として、SIP snoopingとして知られている手法を適用して、SIPによる通信開始要求(INVITE)を検出するようにしてもよい。
UPnP又はSIPを利用する場合には、通信開始の接続要求に通信相手を先示す情報が含まれている。特定情報取得部1111は、通信開始の接続要求に含まれる情報から、検出対象、通信プロトコルの種別、通信相手のURL(アドレス)などを取得するとよい。
また、特定情報取得部1111は、候補データ端末18A宛に送信されるパケット、又は、候補データ端末18Aによる通信で使用される通信プロトコルの監視結果に基づいて通信相手を限定すべき対象を特定して、特定した対象の情報を取得する。
なお、パケット、又は、通信プロトコルの監視は、擬似HRS51が実施してもよい。この場合、擬似HRS51は、ネットワークにおける所定の位置で、その点を通過するパケットを監視する。この場合、擬似HRS51は、検出したパケットのうちから、候補データ端末18Aが送信する通信メッセージを送るパケット、又は、候補データ端末18A宛に送信される通信メッセージを送るパケットを検出する。
(識別情報を取得する処理)
識別情報取得部1112は、データ端末18又はエンティティから送信されるパケット、又は、データ端末18又はエンティティによる通信で使用される通信プロトコルを監視して、識別情報を取得する。
例えば、識別情報取得部1112は、DHCP、ARP、UPnP、SIPなど通信プロトコルを監視して、その結果に基づいて対象を特定する。例えば、識別情報取得部1112は、DHCPを監視する手法として、DHCPsnoopingとして知られている手法を適用してもよい。ARPを監視する手法として、ARPsnoopingとして知られている手法を適用してもよい。UPnPを監視する手法として、UPnP snoopingとして知られている手法を適用してもよい。識別情報取得部1112は、SIPを監視する手法として、SIP snoopingとして知られている手法を適用して、SIPによる通信開始要求(INVITE)を検出するようにしてもよい。
また、識別情報取得部1112は、DNS、UPnP、SIPなど通信プロトコルを監視して、その結果に基づいて対象の通信相手を特定する。例えば、識別情報取得部1112は、DNSを監視する手法として、DNSsnoopingとして知られている手法を適用してもよい。UPnPを監視する手法として、UPnP snoopingとして知られている手法を適用してもよい。識別情報取得部1112は、SIPを監視する手法として、SIP snoopingとして知られている手法を適用してもよい。
例えば、識別情報取得部1112は、候補データ端末18Aが送信するパケット、又は、その通信で使用される通信プロトコルを監視した結果に基づいて決定された識別情報を取得する。
上記の識別情報は、データ端末18(ノード)、データ端末18における通信のエンティティ、及び、データ端末18の通信サービスのうちの一部又は全部に基づいて決定されるものである。識別情報取得部1112は、上記の情報のうち少なくとも何れかの情報を特定情報として取得する。
上記のとおり、第2の実施形態によれば、特定情報取得部1111は、データ端末18の候補とされる候補データ端末18Aから送信されるパケット、又は、候補データ端末18Aによる通信で使用される通信プロトコルの監視結果に基づいて特定情報が決定され、決定された特定情報を取得する。また、データ端末18又はエンティティから送信されるパケット、又は、候補データ端末18A又はエンティティによる通信で使用される通信プロトコルを監視して、識別情報を取得する。
これにより、パケット、又は、候補データ端末18Aによる通信で使用される通信プロトコルの監視結果に基づいて特定情報と識別情報とが決定され、IoT機器のセキュリティ対策を簡易な方法で実施する。
(第3の実施形態)
第3の実施形態について説明する。前述の第1の実施形態は、候補データ端末18Aのレイヤ2アドレスから抽出される製造者情報、又は、候補データ端末18Aに対するポートスキャンを実施した結果に基づいた特定情報を取得する場合を例示した。本実施形態では、これに代えて、ディレクトリサービスとルールベースシステムを利用して、特定情報を取得する場合を例示する。この点が前述の第1の実施形態と異なる。以下、この点を中心に説明する。
(特定情報を取得する処理)
(ディレクトリサービスとルールベースシステムを利用する形態)
以下、ディレクトリサービスとルールベースシステムを利用する形態について説明する。
本実施形態のコントローラ111(特定情報取得部1111)は、データ端末18の候補とされる候補データ端末18Aの通信要求に基づいたディレクトリサービスとルールベースの検索結果に基づいて通信相手を限定すべき対象を特定する。
(ディレクトリサービス)
ネットワークに接続された通信機器、アプリケーションプログラムなどの資源を統一的に管理するための方法として、ディレクトリサービスが知られている。ディレクトリサービスを利用することで、個々の資源の名前と、ネットワーク上の位置(アドレス)やアクセス権限等の属性を対応付けた管理情報(ディレクトリ情報)を使って、ユーザやアプリケーションプログラムから各資源へのアクションを制御する。
これにより、各資源が何れの機器に配置されているかという物理的な情報を意識して、各資源を利用する必要がなくなる。
ディレクトリサービスを提供するサーバは、ユーザ情報やリソース情報を管理するデータベースを持つ。例えば、コントローラ111は、LDAP(Lightweight Directory Access Protocol)を利用してディレクトリサービスサーバをアクセスしてもよい。
(ルールベースシステム)
予め定められた条件を満たす事象が発生したら、所定のアクションをとるように機能させる方法として、ルールベースシステムが知られている。ルールベースシステムでは、予め定められた条件をルールとし、推論エンジンが所定のアクションを実施する。
例えば、eMLBR11のコントローラ111は、ディレクトリサービスのサーバとルールベースシステムの推論エンジンの機能を利用するように構成してもよい。
例えば、データ端末18が通信リソースの割り付けを、eMLBR11に対して要求する。eMLBR11のコントローラ111は、ディレクトリサービスを提供するサーバにアクセスして、その要求を検出する。
データ端末18が上記の要求を送る手順を、IoT装置がネットワークに接続された際に実行するアクションとし、そのアクションを検出するための条件を、ルールベースシステムのルールとしてコントローラ111に記憶させておく。コントローラ111は、ルールベースシステムのコントローラとして機能して、予め定められたルールを満たす事象を検出したら、その要求を発したデータ端末18の特徴情報を取得する。
コントローラ111は、取得した特徴情報に基づいて、データ端末18が要求する通信を可能とするように、スイッチ部112を制御する。この制御の方法は、必要とされる各テーブルに情報を追加する第1の実施形態と同様の方法によってもよい。
(eMLBR11におけるデータ端末18等から送信されたパケットの転送処理)
認証・検疫に成功したデータ端末18は、MLBテーブル1124に登録・管理される。
eMLBR11は、パケットを受信すると、受信したパケットのフローエントリがMLBテーブル1124に存在するか調べ、存在する場合には、受信したパケットのアドレスがプライベートIPアドレスであればグローバルIPアドレス等に変換してからAHを付加し、さらにMACアドレスを書き替えて、指定されたQoSでiMLBR12へ転送する。指定されたQoSには、例えば、帯域制限なし、AHを付加しての転送、帯域制限などの項目を含めてもよい。
一方、存在しない場合には、eMLBR11は、偽装パケットと見なして受信したパケットを廃棄する。eMLBR11は、接続ポートを介して、データ端末18等の実在確認を適宜行い、MLBテーブル1124に登録された経路情報の有効期間を延長する。
以上に説明した、実施形態によれば、複数の物理ポートを有するスイッチ部から得た情報に基づいて前記スイッチ部を制御する通信制御装置であって、前記スイッチ部を介する通信において、通信相手を限定して通信する対象装置又は前記対象装置による通信を特定する特定情報を取得する特定情報取得部と、前記特定情報に基づいて特定される通信を識別する識別情報を取得する識別情報取得部と、対象装置と通信相手との間で許可する通信であることを示す通信許可情報を、前記対象装置から前記通信相手宛の通信と、前記前記通信相手から前記対象装置宛の通信とに分けてそれぞれ生成し、通信許可情報を格納するホワイトリストの要素として前記生成した通信許可情報をそれぞれ追加するWL管理部と、前記スイッチ部が受信したパケットの前記スイッチ部からの出力先を、前記ホワイトリストに格納された通信許可情報に、前記特定情報に基づいて対応付ける出力制御部とを備え、前記受信したパケットに付与された識別情報と前記通信許可情報は、当該通信の送信元情報と宛先情報との組をそれぞれ含み、前記出力制御部は、前記受信したパケットに付与された識別情報から抽出した送信元情報と宛先情報との組が、前記ホワイトリストに格納された通信許可情報の送信元情報と宛先情報との組の少なくとも何れかに一致する場合に前記受信したパケットを前記スイッチ部の所望の物理ポートから出力するように前記出力先を決定する。
以上に説明した、実施形態の変形例によれば、データ端末18の候補とされる候補データ端末18Aの通信要求に基づいたディレクトリサービスとルールベースとの結果に基づいて決定された識別情報を取得することができる。
(第4の実施形態)
第4の実施形態について説明する。前述の第1の実施形態は、第2規則を第2記憶部1152に、第3規則を第3記憶部1153に、第4規則を第4記憶部1154に分割して記憶させるとともに、それに対応させて、MLBテーブル1124とQoSテーブル1126とルーティングテーブル1125とによる処理を実施する場合を例示した。本実施形態では、これに代えて、第3規則と第4規則を統合してQoSテーブル兼用のルーティングテーブル1125として構成することで、第4記憶部1154とQoSテーブル1126を不要としたeMLBR11を図24に例示する。図24は、本実施形態のeMLBR11を示す図である。図25は、前述の図15と図16に代えて、本実施形態におけるQoSの設定について説明するための図である。
比較例とする一般的なルータのルーティングテーブルでは、宛先ネットワークアドレスまたは宛先IPアドレスのみを記述する。
これに対し、本実施形態の通信システム1は、OpenFlowなどのSDN技術を用いることにより、経路情報を示すルーティングテーブルに送信元IPアドレスなどの送信元の情報をマッチ条件として規定できる。すなわち、前述の実施形態の説明では、QoSテーブル1126とルーティングテーブル1125とを分けていたが、本実施形態の通信システム1では、両者を合体してQoSテーブル兼用のルーティングテーブル1125として構成する実施例について説明する。
図25に示すように、パケットタイプテーブル1122にてIPv4パケットと判定されると(図25下段)、MLBテーブル1124に遷移し、アドレスが詐称された偽装パケットではないかが判定され、偽装パケットでないと判定されると、QoSテーブル兼用のルーティングテーブル1125に遷移する。同テーブルでは上から順にマッチ条件の照合が実施され、IoT機器からの送信パケット(Ipv4_src 192.168.3.250)(図25上段)であり、その宛先アドレスが所定の通信相手(Ipv4_dst 192.168.6.10)であるならば、ActionにてTTL(Time To Live)を1減算した上で、MACフレームが生成され、スイッチ部112のポート6から出力される。IoT機器から送信されたパケットの宛先アドレスが上記以外の宛先アドレスを示すパケットは廃棄される(図25上から2段目)。
一方、IoT機器宛(Ipv4_dst 192.168.3.250)のパケット(図25上から3段目)は、その送信元アドレスが所定の通信相手(Ipv4_src 192.168.6.10)であれば、同様にMACフレームが生成されスイッチ部112のポート3から出力される。IoT機器宛に送られたパケットの送信元アドレスが上記以外の送信元アドレスのパケットは廃棄される(図25上から4段目)。他のパケットについては、各々の宛先アドレスに基づいて、所定の各ポートから出力される(図25下段)。
(IoT機器のセキュリティ対策に係る処理)
図26は、本実施形態のeMLBR11におけるIoT機器のセキュリティ対策に係る処理の手順を示すフローチャートである。図26は、前述の図11Bに代わるものであり、前述の図11Bと同じ処理には同じ符号を附す。
図11Aに示すS105とS111の処理が行われ、S111の判定により通信相手を限定する対象装置等の特定情報を含むものではないと判定された場合、図26に示すようにS121からS132の処理が実施される。
S132の処理を終えた後、又は、S131の判定により特定された対象の通信相手の識別情報を含むものではないと判定された場合、WL管理部1113は、ルーティングテーブルに追加する経路情報(要素)を生成する条件を満たすか否かを判定する(S141A)。
S141Aの判定により、ルーティングテーブルに追加する経路情報(要素)を生成する条件を満たすと判定された場合、出力制御部1114は、WL管理部1113によって通信相手許可条件を満たすと判定された通信の経路を指定する経路情報を生成する。例えば、WL管理部1113は、S122とS132において識別情報がそれぞれ生成された段階で、経路情報を生成する条件を満たすと判定する。
次に、出力制御部1114は、生成した経路情報が、第3記憶部1153に第3規則として登録されているか否かを判定する(S161A)。生成した経路情報が第3記憶部1153に登録されていないと判定した場合、出力制御部1114は、生成した経路情報を第3記憶部1153に書き込み、第3規則として追加して更新する(S162A)。上記通り、経路情報の追加に伴う第3規則の変更が実施される毎に、出力制御部1114は、フロー変更出力部1118を介して、新たな第3規則の情報をスイッチ部112に送信する。
一方、S141の判定によりルーティングテーブルに追加する経路情報(要素)を生成する条件を満たしていないと判定された場合、S161Aの判定により生成した経路情報が第3記憶部1153に登録されていると判定した場合、又はS162Aの処理を終えた場合、出力制御部1114は、所定期間が経過した経路情報が有るか否かを判定する(S171A)。例えば、出力制御部1114は、第3記憶部1153に登録されている経路情報のうち、経路情報に対応する通信が所定期間発生しなかった場合、つまり、上記通信のパケットが到来しない状態になった後、或いは、到来しなくなって所定期間が経過した後、第3記憶部1153に格納されている第3規則のうちから、上記場合の経路情報を削除する(S172A)。上記通り、経路情報の削除に伴う第3規則の変更が実施される毎に、出力制御部1114は、フロー変更出力部1118を介して、新たな第3規則の情報をスイッチ部112に送信する。
eMLBR11のスイッチ部112は、更新された第3記憶部1153を用いて転送処理を実施する。
以上に説明した実施形態によれば、上記の第1の実施形態と同様の効果を奏するものに加え、出力制御部1114は、WL管理部1113により生成された通信許可情報(通信許可条件)に基づいて、データ端末18からホストAなどの通信相手宛の通信と、ホストAなどの通信相手からデータ端末18宛の通信とに分けて、スイッチ部からの出力先を決定する経路情報を生成し、ルーティングテーブル1125の要素に含めることにより、第3規則と第4規則とを統合して、QoSテーブル兼用のルーティングテーブル1125として構成することができる。
(第5の実施形態)
第5の実施形態について説明する。前述の第1の実施形態は、第2規則を第2記憶部1152に、第3規則を第3記憶部1153に、第4規則を第4記憶部1154に分割して記憶させるとともに、それに対応させて、MLBテーブル1124とQoSテーブル1126とルーティングテーブル1125とによる処理を実施する場合を例示した。本実施形態では、これに代えて、第3規則と第4規則を統合してQoSテーブル兼用のルーティングテーブル1125として構成することで、第4記憶部1154とQoSテーブル1126を不要とし、さらに、MLBテーブル1124を不要としたeMLBR11を図26に例示する。
図27は、本実施形態のeMLBR11を示す図である。図28は、前述の図15と図16に代えて、本実施形態におけるQoSの設定について説明するための図である。
なお、本実施形態の場合、前述の図11Aに示す処理からS111からS118の処理を削除し、図11Bに代えて、図26に示す処理の手順を参照する。
以上に説明した、実施形態によれば、MLBテーブルがないため偽装パケットを防ぐことはできないが、前述の実施形態と同様にIoT機器であるデータ端末18の通信相手を限定することができる。
なお、図28のQoSテーブル兼用のルーティングテーブル1125の上段(from IoT)のマッチ条件として、端末18の接続ポート識別子やMACアドレスを付加してもよい。この場合は、QoSテーブル兼用のルーティングテーブルに、さらにMLBテーブル兼用を付加したMLBテーブル及びQoSテーブル兼用のルーティングテーブル1125を構成することになり、IoT機器を偽装したパケットを遮断することができる。
例えば、マルウェアに感染したIoT機器が、他のIoT機器を探し出そうとする所謂探索パケットを総当たりで送信して新たな感染先を増やそうとする場合であっても、探索パケットを受信することによる自IoT機器へのマルウェアの感染を防止できる。また、例えマルウェアがIoT機器の製造工程などで埋め込まれていて、C&Cサーバへのアクセスを試みようと作用しても、eMLBR11は、IoT機器からC&Cサーバへの通信を遮断できる。通信システム1は、このように作用するため、通信システム1に接続されたIoT機器のサイバー攻撃への加担を防止できる、あるいは通信システム1内への攻撃を防止できるなど、ルーティングテーブル1125をQoSテーブル1126と、あるいはMLBテーブルとに分けて構成した場合と同じ効果を得ることができる。
以上説明した少なくともひとつの実施形態によれば、通信制御装置は、複数の物理ポートを有するスイッチ部から得た情報に基づいてスイッチ部を制御する制御情報を生成する通信制御装置であって、スイッチ部を介する通信において、通信相手を限定して通信する対象装置又は対象装置による通信の少なくとも何れかを特定する特定情報を取得する特定情報取得部と、特定情報に基づいて特定される通信を識別する識別情報を取得する識別情報取得部と、前記スイッチ部が受信したパケットに付与されている送信元情報と宛先情報との組が、前記識別情報に基づいて決定される送信元情報と宛先情報との組に含まれる通信は許可するものとして転送するように、前記スイッチ部が受信したパケットについての前記スイッチ部からの出力先を決定する経路情報を生成して、前記経路情報を前記制御情報に含める出力制御部と、を備えることにより、IoT機器のセキュリティ対策を簡易な方法で実施することができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
例えば、上記の実施形態の説明では、MLBR10等のスイッチ部が攻撃パケットを“廃棄する”こととして説明したが、MLBR10等は、当該パケットを、各スイッチ部内で廃棄せずに、特定のポートから外部記憶装置に出力して格納させてもよい。
また、上記の実施形態の説明では、IPv4プライベートアドレスを用いたが、本発明は、これに限定するものではなく、IPv4のプライベートIPアドレスとグローバルIPアドレスとで通信許可情報を構成してもよく、あるいはIPv4のグローバルIPアドレスで通信許可情報を構成してもよく、あるいはIPv6アドレスで通信許可情報を構成してもよく、さらにレイヤ2アドレス(MACアドレス)で通信許可情報を構成してもよい。
さらに、MLBテーブルもしくはQoSテーブル、QoS兼用のルーティングテーブルなどに、通信相手との間で使用するレイヤ4のポート番号を付加してもよい。これにより、例えIoT機器の製造段階などでIoT機器にバックドアが埋め込まれていても、バックドアからの不正侵入を防ぐことができ、さらにIoT機器のセキュリティ性を高められる。
なお、上記の実施形態の説明では、端末装置17がIDS/IPSを備えるものとして説明したが、eMLBR11又はiMLBR12がIDS/IPSを備えるように構成してもよい。この場合、eMLBR11又はiMLBR12は、端末装置17のIDS/IPSに代えて、eMLBR11又はiMLBR12が備えるIDS/IPSの検出結果を取得するように構成する。
1、2、3、4…通信システム、10…MLBR、11…eMLBR、12…iMLBR、13…bMLBR、14…中継装置、15…管理ホスト、17…端末装置、18…データ端末、111…コントローラ(制御部)、112…スイッチ部、113、114…IF部、115…記憶部、NW、NW1、NW3、NW4…ネットワーク

Claims (4)

  1. 通信相手を限定して通信する対象装置を収容し、前記対象装置の通信に関わるパケットの転送を制御するスイッチ部
    を備え、
    前記スイッチ部は、
    前記対象装置から送信されたパケットであることを識別するための第1識別情報を格納した第1テーブルと、
    前記第1テーブルにより前記対象装置から送信されたパケットであると判定した第1パケットについて、前記第1パケットの送信先が前記通信相手であることを識別するための第2識別情報を格納した第2テーブルと、
    前記対象装置宛に送信されたパケットの宛先アドレス情報を少なくとも用いて当該パケットを識別するための第3識別情報を格納した第3テーブルと、
    前記第3テーブルにより前記対象装置宛に送信されたパケットであると判定した第2パケットについて、前記第2パケットの送信元が前記通信相手であることを識別するための第4識別情報を格納した第4テーブルと、
    を備え、
    前記第1テーブルにより識別し、その後前記第2テーブルにより送信先が前記通信相手であると判定した前記第1パケットを前記通信相手に向けて転送し、
    前記第3テーブルにより識別し、その後前記第4テーブルにより送信元が前記通信相手であると判定した前記第2パケットを前記対象装置に向けて転送し、
    前記第2テーブルによる判定の結果、または前記第4テーブルによる判定の結果に基づいて、前記転送を許可しないと判定したパケットを廃棄する、
    通信装置
  2. 前記第2識別情報と前記第4識別情報は、少なくともレイヤ2のアドレスと、レイヤ3のアドレスとの何れかを要素に含み、又は前記要素に更にレイヤ4のポート番号を含み、
    前記第1識別情報は、少なくともレイヤ1の識別子と、レイヤ2の送信元アドレスと、レイヤ3の送信元アドレスとの何れかを含む、
    請求項1に記載の通信装置。
  3. 少なくとも前記対象装置から自通信装置に向けたパケット又は前記対象装置から自通信装置に向けた通信において使用される通信プロトコルを監視した結果と、前記対象装置か ら前記通信相手に向けたパケット又は前記対象装置から前記通信相手に向けた通信で使用される通信プロトコルを監視した結果と、自通信装置の情報と前記対象装置の情報とを管理する管理装置より取得する情報との何れかに基づいて、前記第1識別情報、前記第2識別情報、前記第3識別情報、及び前記第4識別情報のうちの一部又は全部を取得して、前記スイッチ部による前記通信の制御に利用する識別情報取得部
    を備える請求項2記載の通信装置。
  4. 前記スイッチ部の各テーブルは、
    前記第1テーブル、前記第2テーブル、前記第3テーブル、及び前記第4テーブルの夫々が分割して構成され、又は、
    前記第1テーブル、前記第2テーブル、前記第3テーブル、及び前記第4テーブルのうち、少なくとも前記第2テーブル及び前記第4テーブルが統合して構成される、
    請求項1から請求項3の何れか1項に記載の通信装置。
JP2016060875A 2016-03-24 2016-03-24 通信装置 Active JP6737610B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016060875A JP6737610B2 (ja) 2016-03-24 2016-03-24 通信装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016060875A JP6737610B2 (ja) 2016-03-24 2016-03-24 通信装置

Publications (2)

Publication Number Publication Date
JP2017175462A JP2017175462A (ja) 2017-09-28
JP6737610B2 true JP6737610B2 (ja) 2020-08-12

Family

ID=59972331

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016060875A Active JP6737610B2 (ja) 2016-03-24 2016-03-24 通信装置

Country Status (1)

Country Link
JP (1) JP6737610B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023281748A1 (ja) 2021-07-09 2023-01-12 浩 小林 再生可能エネルギ供給システム、浮体式洋上太陽光発電プラント、及び再生可能エネルギ供給方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6859914B2 (ja) 2017-10-05 2021-04-14 オムロン株式会社 通信システム、通信装置および通信方法
WO2021229658A1 (ja) * 2020-05-11 2021-11-18 日本電信電話株式会社 パケット転送システム及びパケット転送方法
KR102407135B1 (ko) * 2021-10-20 2022-06-10 프라이빗테크놀로지 주식회사 컨트롤러 기반의 네트워크 접속을 제어하기 위한 시스템 및 그에 관한 방법
KR102396528B1 (ko) * 2022-01-14 2022-05-12 프라이빗테크놀로지 주식회사 컨트롤러 기반 네트워크 접속을 제어하기 위한 시스템 및 그에 관한 방법
KR102495369B1 (ko) * 2022-04-25 2023-02-06 프라이빗테크놀로지 주식회사 컨트롤러 기반 네트워크 접속을 제어하기 위한 시스템 및 그에 관한 방법
KR102564418B1 (ko) * 2023-02-22 2023-08-08 프라이빗테크놀로지 주식회사 네트워크 접속을 제어하기 위한 시스템 및 그에 관한 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023281748A1 (ja) 2021-07-09 2023-01-12 浩 小林 再生可能エネルギ供給システム、浮体式洋上太陽光発電プラント、及び再生可能エネルギ供給方法

Also Published As

Publication number Publication date
JP2017175462A (ja) 2017-09-28

Similar Documents

Publication Publication Date Title
JP6737610B2 (ja) 通信装置
US10841279B2 (en) Learning network topology and monitoring compliance with security goals
US9723019B1 (en) Infected endpoint containment using aggregated security status information
Hong et al. Poisoning network visibility in software-defined networks: New attacks and countermeasures.
US8661544B2 (en) Detecting botnets
US7823202B1 (en) Method for detecting internet border gateway protocol prefix hijacking attacks
JP5524737B2 (ja) 偽装されたネットワーク情報を検出する方法および装置
US20180191677A1 (en) Firewall and method thereof
US10931636B2 (en) Method and system for restricting transmission of data traffic for devices with networking capabilities
US11314614B2 (en) Security for container networks
Chiang et al. ACyDS: An adaptive cyber deception system
US10397225B2 (en) System and method for network access control
US20200021671A1 (en) Method and system for updating a whitelist at a network node
US10348687B2 (en) Method and apparatus for using software defined networking and network function virtualization to secure residential networks
US7596808B1 (en) Zero hop algorithm for network threat identification and mitigation
US20070011743A1 (en) Method and apparatus for communicating intrusion-related information between Internet service providers
JPWO2015174100A1 (ja) パケット転送装置、パケット転送システム及びパケット転送方法
JP6780838B2 (ja) 通信制御装置及び課金方法
JP6896264B2 (ja) 通信装置、通信方法、及びプログラム
JP2017200152A (ja) 通信制限範囲特定装置、通信制御装置、通信装置、通信システム、通信制限範囲特定方法、及びプログラム
Shah et al. Security Issues in Next Generation IP and Migration Networks
WO2016170598A1 (ja) 情報処理装置、方法およびプログラム
JP6683480B2 (ja) 通信装置及び通信システム
KR20110010050A (ko) 플로우별 동적인 접근제어 시스템 및 방법
JP2004289260A (ja) 動的アドレス付与サーバを利用したクライアントの安全性検診システム

Legal Events

Date Code Title Description
A80 Written request to apply exceptions to lack of novelty of invention

Free format text: JAPANESE INTERMEDIATE CODE: A80

Effective date: 20160421

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160519

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190227

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20190306

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20190306

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191017

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191126

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200124

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20200207

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200714

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200716

R150 Certificate of patent or registration of utility model

Ref document number: 6737610

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150