(57)【要約】【課題】利用者等による操作を必要とすることなく、フィルタリング条件（ホワイトリスト）を設定することが可能なパケットフィルタリング装置を提供する。【解決手段】機器１０２からパケットを受信したとき、ホワイトリストに当該機器１０２と当該パケットの送信先のサーバ１０６とが関連付けて登録されているならば当該パケットの通過を許可し、機器１０２から最初にパケットを受信したときから初期化期間に当該機器１０２から受信したパケットの送信先の数を計数し、当該計数した送信先の数に応じて当該機器１０２に対する最大接続先数を設定し、ホワイトリストに当該機器１０２と当該パケットの送信先が関連付けて登録されておらず、当該機器１０２を送信元として関連付けられている送信先のサーバ１０６の数が当該機器１０２に対する最大接続先数以下である場合、ホワイトリストに当該機器１０２と当該サーバ１０６とを関連付けて追加登録する。【選択図】図６
2019047239.tif 000002
【特許請求の範囲】
【請求項１】
送信元の機器と送信先の装置とが関連付けられたホワイトリストに基づいて、受信したパケットの通過の可否を制御するパケットフィルタリング装置であって、
機器からパケットを受信したとき、前記ホワイトリストに当該機器と当該パケットの送信先の装置とが関連付けて登録されているならば当該パケットの通過を許可する通信制御手段と、
機器ごとに、当該機器から最初にパケットを受信したときから初期化期間に当該機器から受信したパケットの送信先の装置の数を計数し、当該計数した送信先の装置の数に応じて当該機器に対する最大接続先数を設定する最大接続数設定手段と、
機器からパケットを受信したとき、前記ホワイトリストに当該機器と当該パケットの送信先の装置とが関連付けて登録されておらず、前記ホワイトリストに当該機器を送信元として関連付けられている送信先の装置の数が当該機器に対する前記最大接続先数未満である場合、前記ホワイトリストに当該機器と当該パケットの送信先の装置とを関連付けて追加登録するホワイトリスト更新手段と、
を備えることを特徴とするパケットフィルタリング装置。
【請求項２】
請求項１に記載のパケットフィルタリング装置であって、
前記ホワイトリスト更新手段は、
受信したパケットの送信元の機器と送信先の装置との最終通信時刻を記録する処理と、
前記ホワイトリストにおいて、パケットの送信元の機器と送信先の装置との最終通信時刻から現在時刻までに至る時間がタイムアウト時間以上となっている場合、当該送信元の機器と当該送信先の装置との組み合わせを削除する処理と、
を行うことを特徴とするパケットフィルタリング装置。
【請求項３】
請求項１又は２に記載のパケットフィルタリング装置であって、
受信したパケットを解析することによって、当該パケットの送信元の機器の属性を識別する機器識別手段を備え、
前記最大接続数設定手段は、更に、前記機器識別手段にて識別された機器の属性に応じて当該機器に対する前記最大接続先数を設定することを特徴とするパケットフィルタリング装置。
【請求項４】
請求項１又は２に記載のパケットフィルタリング装置であって、
受信したパケットを解析することによって、当該パケットの送信元の機器の属性を識別する機器識別手段を備え、
前記機器識別手段にて識別された機器の属性に応じて当該機器に対する前記初期化期間を設定することを特徴とするパケットフィルタリング装置。
【請求項５】
請求項１〜４のいずれか１項に記載のパケットフィルタリング装置であって、
前記最大接続数設定手段は、受信したパケットの送信先の装置が通信を禁止する送信先として予め記憶されたブラックリストの装置に合致する場合、当該パケットの送信元の機器に対する前記最大接続先数を減ずることを特徴とするパケットフィルタリング装置。
【請求項６】
請求項１〜５のいずれか１項に記載のパケットフィルタリング装置であって、
前記ホワイトリスト更新手段は、すべての機器からの通信が許可されている送信先の装置が予め記録されたマスターホワイトリストに基づいて、受信したパケットの送信先の装置が前記マスターホワイトリストに登録されている場合、当該パケットの送信元の機器と送信先の装置とを前記ホワイトリストに追加登録しないことを特徴とするパケットフィルタリング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケットの通信を制御するパケットフィルタリング装置に関する。
【背景技術】
【０００２】
従来から、ネットワークに接続されたコンピュータなどの機器間におけるパケット通信を制限するパケットフィルタリング装置（レイヤ３のファイアウォール）が知られている（特許文献１）。例えば、パケットフィルタリング装置は、通過を許可（または不許可）するパケットのＩＰアドレス、プロトコル、ポート番号等の条件（フィルタリング条件）を予め設定及び記憶しておき、通過するパケットのヘッダ部に含まれるＩＰアドレス、プロトコル、ポート番号等がこの条件に合致しているか否かによってパケットの通過の可否を制御する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−２６１７８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、近年、ＰＣ等の通信端末だけでなく、多様な機器に通信機能を持たせ、インターネットへの接続や機器間の相互通信等を行うＩｏＴ（Ｉｎｔｅｒｎｅｔ  ｏｆ  Ｔｈｉｎｇｓ）機器が世の中において普及しつつある。これに伴って、これらのＩｏＴ機器への不正アクセスなどによって生じうる脅威も懸念されつつある。例えば、ＩｏＴ機器への不正アクセスによって「乗っ取り」されたり、「ウイルス感染」したりする場合など、当該ＩｏＴ機器を介して外部ネットワークが不正アクセスされる危険性がある。
【０００５】
このような脅威に対して、パケットフィルタリング型ファイアウォールは有効であるが、フィルタリング条件の設定に多大な手間を要する問題がある。すなわち、ＩｏＴ機器の数や種類が増加するほど、ＩｏＴ機器毎に通信を許可するアクセス先の設定数も増加し、専門的な知識を持たない利用者がフィルタリング条件を適切に設定して、維持管理していくことが困難である。
【０００６】
そこで、本発明は、利用者等による専門的な知識や設定操作を必要とすることなく、フィルタリング条件（ホワイトリスト）を設定することが可能なパケットフィルタリング装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の１つの態様は、送信元の機器と送信先の装置とが関連付けられたホワイトリストに基づいて、受信したパケットの通過の可否を制御するパケットフィルタリング装置であって、機器からパケットを受信したとき、前記ホワイトリストに当該機器と当該パケットの送信先の装置とが関連付けて登録されているならば当該パケットの通過を許可する通信制御手段と、機器ごとに、当該機器から最初にパケットを受信したときから初期化期間に当該機器から受信したパケットの送信先の装置の数を計数し、当該計数した送信先の装置の数に応じて当該機器に対する最大接続先数を設定する最大接続数設定手段と、機器からパケットを受信したとき、前記ホワイトリストに当該機器と当該パケットの送信先の装置とが関連付けて登録されておらず、前記ホワイトリストに当該機器を送信元として関連付けられている送信先の装置の数が当該機器に対する前記最大接続先数未満である場合、前記ホワイトリストに当該機器と当該パケットの送信先の装置とを関連付けて追加登録するホワイトリスト更新手段と、を備えることを特徴とするパケットフィルタリング装置である。
【０００８】
ここで、前記ホワイトリスト更新手段は、受信したパケットの送信元の機器と送信先の装置との最終通信時刻を記録する処理と、前記ホワイトリストにおいて、パケットの送信元の機器と送信先の装置との最終通信時刻から現在時刻までに至る時間がタイムアウト時間以上となっている場合、当該送信元の機器と当該送信先の装置との組み合わせを削除する処理と、を行うことが好適である。
【０００９】
また、受信したパケットを解析することによって、当該パケットの送信元の機器の属性を識別する機器識別手段を備え、前記最大接続数設定手段は、更に、前記機器識別手段にて識別された機器の属性に応じて当該機器に対する前記最大接続先数を設定することが好適である。
【００１０】
また、受信したパケットを解析することによって、当該パケットの送信元の機器の属性を識別する機器識別手段を備え、前記機器識別手段にて識別された機器の属性に応じて当該機器に対する前記初期化期間を設定することが好適である。
【００１１】
また、前記最大接続数設定手段は、受信したパケットの送信先の装置が通信を禁止する送信先として予め記憶されたブラックリストの装置に合致する場合、当該パケットの送信元の機器に対する前記最大接続先数を減ずることが好適である。
【００１２】
また、前記ホワイトリスト更新手段は、すべての機器からの通信が許可されている送信先の装置が予め記録されたマスターホワイトリストに基づいて、受信したパケットの送信先の装置が前記マスターホワイトリストに登録されている場合、当該パケットの送信元の機器と送信先の装置とを前記ホワイトリストに追加登録しないことが好適である。
【発明の効果】
【００１３】
本発明によれば、利用者等による操作を必要とすることなく、フィルタリング条件（ホワイトリスト）を設定することが可能なパケットフィルタリング装置を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施の形態における通信システムの構成を示す図である。
【図２】本発明の実施の形態におけるパケットフィルタリング装置の構成を示す図である。
【図３】本発明の実施の形態における機器リストを示す図である。
【図４】本発明の実施の形態におけるホワイトリストを示す図である。
【図５】本発明の実施の形態における機器属性リストを示す図である。
【図６】本発明の実施の形態における通信制御処理を示すフローチャートである。
【発明を実施するための形態】
【００１５】
本発明の実施の形態における通信システム１００は、図１に示すように、機器１０２（１０２ａ〜１０２ｃ）、パケットフィルタリング装置（いわゆるファイアウォール）１０４及びサーバ１０６（１０６ａ〜１０６ｃ）を含んで構成される。なお、本発明における「装置」は、本実施の形態における機器１０２とサーバ１０６とを含むものとする。
【００１６】
機器１０２は、パケットフィルタリング装置１０４を介してネットワーク（インターネット等）１０８に接続される。例えば、機器１０２とパケットフィルタリング装置１０４は家庭内等の小規模なＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を構成しているものとすることができる。また、サーバ１０６もネットワーク１０８に接続される。これによって、機器１０２とサーバ１０６は、パケットフィルタリング装置１０４及びネットワーク１０８を介して相互に接続される。
【００１７】
なお、機器１０２とパケットフィルタリング装置１０４との間の接続、パケットフィルタリング装置１０４とネットワーク１０８との間の接続及びネットワーク１０８とサーバ１０６との間の接続は、有線であってもよいし、無線であってもよい。
【００１８】
機器１０２は、ネットワーク１０８に接続可能な装置である。機器１０２は、いわゆるＩｏＴ機器とすることができる。機器１０２の機能は、特に限定されるものではなく、例えば、テレビ、録画機器、冷蔵庫、洗濯機、エアコン等の様々な機能を有する機器とすることができる。機器１０２は、ネットワーク１０８を介してサーバ１０６に接続されることによってサーバ１０６と通信を行う。機器１０２は、例えば、内蔵されているセンサーで検出された測定値をサーバ１０６へ送信したり、サーバ１０６から制御の為の情報を取得したりするために通信を行う。
【００１９】
サーバ１０６は、いわゆるコンピュータの基本構成を備え、機器１０２と通信することで情報を管理したり、機器１０２を制御したりする装置である。サーバ１０６は、ネットワーク１０８を介して機器１０２と接続される。サーバ１０６は、例えば、機器１０２の製造会社、販売会社等の管理センタに配置され、機器１０２からパケットを受信することによって情報を収集したり、機器１０２に対してパケットを送信することによって制御プログラム（ファームウェア）や制御用情報を提供したりする管理コンピュータとすることができる。
【００２０】
パケットフィルタリング装置１０４は、機器１０２とサーバ１０６との通信においてデータを中継する通信機器である。本実施の形態では、パケットフィルタリング装置１０４は、機器１０２からサーバ１０６へ送信されるパケットの通過を許可又は不許可とする機能を有する。パケットフィルタリング装置１０４は、ルータとしての機能を有してもよい。
【００２１】
ここで、機器１０２とサーバ１０６との通信は、パケットを用いて行われる。パケットには、送信元である機器１０２を識別する機器ＩＤと送信先となるサーバ１０６を識別するサーバＩＤとが含まれる。例えばＴＣＰ／ＩＰに則った場合、機器ＩＤ及びサーバＩＤは、ＩＰアドレスとすることができる。
【００２２】
なお、機器ＩＤは、機器１０２のＩＰアドレスに限定されるものではなく、機器１０２のＭＡＣアドレスを用いてもよい。この場合、機器１０２とパケットフィルタリング装置１０４とがルータを介さずに直接接続されているものとする。また、サーバＩＤは、サーバ１０６のＩＰアドレスに限定されるものではなく、サーバ１０６のドメイン名を用いてもよい。この場合、パケットフィルタリング装置１０４は、受信したパケットの送信先ＩＰアドレスを用いてＤＮＳサーバに対してドメイン名を問い合わせることによってサーバ１０６のドメイン名を取得したり、機器１０２とサーバ１０６との間でやり取りされたＤＮＳ応答を参照することによりサーバ１０６のドメイン名を取得したりするものとすればよい。
【００２３】
パケットフィルタリング装置１０４は、図２に示すように、制御部１０、記憶部１２、出力部１４、入力部１６及び通信部１８を含んで構成される。制御部１０は、パケットフィルタリング装置１０４によるパケットの通信制御を統合的に制御する。記憶部１２は、パケットフィルタリング装置１０４の制御に必要なデータを記憶する記憶手段である。記憶部１２は、例えば、半導体メモリ、ハードディスク等とすることができる。記憶部１２は、後述する機器リスト１２ａ及びホワイトリスト１２ｂを記憶する。出力部１４は、パケットフィルタリング装置１０４での処理に関する情報を外部へ出力する手段である。出力部１４は、例えば、パケットフィルタリング装置１０４の状態やパケットフィルタリング装置１０４で処理されるパケットに関する情報、例えば後述するようにパケットフィルタリング装置１０４におけるパケットの破棄に関する情報を表示するディスプレイとすることができる。入力部１６は、パケットフィルタリング装置１０４へ情報を入力するための手段である。入力部１６は、例えば、キーボードやポインティングデバイス等とすることができる。なお、出力部１４及び入力部１６は、ＤＶＤやメモリカードなどの可搬記憶媒体との間で情報を読み書きできるデバイスであってもよい。通信部１８は、機器１０２やサーバ１０６とのパケットの交換を仲介するインターフェースである。例えばＴＣＰ／ＩＰに則った場合、通信部１８は、ネットワーク間におけるＩＰパケットの交換を行う。
【００２４】
機器リスト１２ａは、図３に示すように、パケットの送信元である機器１０２を特定する機器ＩＤ、当該機器１０２から最初にパケットが送信された時刻を示す初回通信時刻、及び当該機器１０２に対して接続が許される送信先の数を示す最大接続先数を関連付けたデータベースである。
【００２５】
ホワイトリスト１２ｂは、図４に示すように、パケットの送信元である機器１０２を特定する機器ＩＤ、当該機器１０２からのパケットの送信が許可された送信先のサーバ１０６を特定するサーバＩＤ、及び当該機器１０２と当該サーバ１０６の最終通信時刻を関連付けたデータベースである。ここで最終通信時刻とは、機器１０２とサーバ１０６との間で最後に通信した時刻であり、より具体的には、パケットフィルタリング装置１０４が機器１０２から受信したパケットをサーバ１０６へ送信（転送）した最新の時刻である。
【００２６】
制御部１０は、ホワイトリスト更新手段１０ａ、最大接続数設定手段１０ｂ及び通信制御手段１０ｃとして機能する。
【００２７】
ホワイトリスト更新手段１０ａは、ホワイトリスト１２ｂの登録内容を更新する処理を行う。ホワイトリスト更新手段１０ａは、機器１０２からパケットを受信すると、所定の登録条件を満たした場合、当該機器１０２の機器ＩＤに関連付けて当該パケットの送信先であるサーバ１０６のサーバＩＤをホワイトリスト１２ｂに登録する。ここで、ホワイトリスト１２ｂへの登録条件は、当該機器１０２に関連してホワイトリスト１２ｂに登録された送信先であるサーバ１０６の数が後述の最大接続先数未満である場合とすることが好適である。すなわち、機器１０２からパケットを受信したとき、ホワイトリスト１２ｂに当該機器１０２と当該パケットの送信先のサーバ１０６とが関連付けて登録されておらず、当該機器１０２を送信元として関連付けられている送信先のサーバ１０６の数が当該機器１０２に対する最大接続先数未満である場合にホワイトリスト１２ｂに当該機器１０２と当該パケットの送信先のサーバ１０６とを関連付けて登録する。
【００２８】
また、ホワイトリスト更新手段１０ａは、既にホワイトリスト１２ｂに登録されている機器１０２及びサーバ１０６の組み合わせについての最終通信時刻から現在時刻に至る時間が所定のタイムアウト時間以上となっている場合、当該機器１０２と当該サーバ１０６との組み合わせをホワイトリスト１２ｂから削除する処理を行う。当該処理は、パケットフィルタリング装置１０４が機器１０２からパケットを受信する毎に行ってもよいし、機器１０２の各々について設定されている最大接続先数を超えてホワイトリスト１２ｂにサーバ１０６が登録されている場合のみに行うようにしてもよいし、所定の期間おきに行うようにしてもよい。
【００２９】
最大接続数設定手段１０ｂは、機器１０２の各々についてホワイトリスト１２ｂに登録され得るサーバ１０６の最大数を示す最大接続先数を設定する。本実施の形態では、最大接続数設定手段１０ｂは、パケットフィルタリング装置１０４が機器１０２から最初にパケットを受信した時刻から初期化期間に当該機器１０２から受信したパケットの送信先となったサーバ１０６の数を計数し、当該計数した送信先の数に応じて当該機器１０２に対する最大接続先数を設定する。最大接続数設定手段１０ｂは、図３に示すように、設定された最大接続先数を設定対象となる機器１０２の機器ＩＤに関連付けて機器リスト１２ａに登録する。
【００３０】
ここで、初期化期間は、予め設定された固定値とすることができる。また、初期化期間は、機器１０２毎に設定するようにしてもよい。例えば、図５に示す機器属性リストを記憶部１２に予め登録しておき、当該機器属性リストを参照して機器１０２の機器属性に応じて初期化期間を設定してもよい。例えば、パケットを送信した機器１０２がＡ社製機器であれば初期化期間を１日（２４時間）として設定し、Ｂ社製機器であれば初期化期間を１８時間として設定する。また、パケットを送信した機器１０２が機器属性リストのいずれの属性にも該当しない場合はデフォルト値である３時間として初期化期間を設定する。なお、機器１０２の属性は、特に限定されるものではないが、例えば、機器の型番、機器の製造会社、機器の製造バージョン（ファームウェアバージョン）等とすることができる。そして、機器１０２の属性は機器１０２から送信されるパケットを解析することによって判定する。例えば、パケットに含まれるＭＡＣアドレスのベンダーコードを利用する、ＩＰパケットのヘッダ情報を利用する、ＨＴＴＰアクセスにおいてリクエストに含まれるヘッダの情報を利用する等の方法がある。これにより、制御部１０は、機器識別手段として機能する。
【００３１】
また、機器１０２に対する最大接続先数は、所定の通信許可マージンを用いて設定することができる。通信許可マージンは、ファームウェアの供給元のサーバの変更などによって、初期期間の経過後に初めて接続され得る正規の接続先の数を見越して設定される。このマージンの設定により初期化期間経過後の正規の接続先を手間なくホワイトリストに追加できる。例えば、最大接続数設定手段１０ｂは、最初にパケットを受信した時刻から初期化期間に当該機器１０２から受信したパケットの送信先となったサーバ１０６の数を計数し、当該計数した送信先の数に通信許可マージンを加算・乗算などの演算をすることによって最大接続数を求めるものとする。なお、通信許可マージンは管理者等によって予め設定された固定値とすることができる。また、通信許可マージンは、機器１０２毎に設定するようにしてもよい。例えば、図５に示す機器属性リストを記憶部１２に予め登録しておき、当該機器属性リストを参照して判定した機器１０２の属性に応じて通信許可マージンを設定してもよい。機器１０２の機器属性の判定方法は、上記のとおりである。
【００３２】
また、通信許可マージンは、機器１０２の属性に応じて過去のパケットの送信先の数の履歴に基づいて設定するようにしてもよい。例えば、機器１０２の種類に応じて、過去において同じ種類の機器１０２が初期化期間内に通信した送信先のサーバ１０６の数に基づいて通信許可マージンを設定してもよい。また、機器１０２の製造会社に応じて、過去において同じ製造会社の機器１０２が初期化期間内に通信した送信先のサーバ１０６の数から通信許可マージンを設定してもよい。他の属性についても同様である。
【００３３】
最大接続数設定手段１０ｂは、初期化期間内において機器１０２毎に受信したパケットの送信先の数に対して通信許可マージンの値を演算して最大接続先数を設定する。演算は、特に限定されるものではないが、初期化期間内に機器１０２毎に受信したパケットの送信先の数が増加すると最大接続先数も増加するようなものであることが好適である。演算方法は、例えば、加算、乗算、除算等や通信許可マージンを引数とする所定の関数とすればよい。
【００３４】
通信制御手段１０ｃは、パケットフィルタリング装置１０４において受信された機器１０２からのパケットを解析してパケットの通信の可否を制御する。通信制御手段１０ｃは、パケットのヘッダ情報に基づいて、パケットの送信元の機器１０２と送信先のサーバ１０６を識別する。通信がＴＣＰ／ＩＰに則っている場合、識別処理には、パケットのＩＰアドレスを用いて識別し当該ＩＰアドレスを機器１０２の機器ＩＤ、及び送信先のサーバ１０６のサーバＩＤとして用いることができる。ただし、これに限定されるものではなく、送信元の機器１０２の機器ＩＤとしてＭＡＣアドレスを用いてもよい。また、送信先のサーバ１０６のサーバＩＤとして、ドメイン名を用いてもよい。さらに、ＩＰアドレス（又はドメイン名）とポート番号との組を送信元の機器１０２の機器ＩＤ、又は送信先のサーバ１０６のサーバＩＤとして用いてもよい。また、ポート番号を識別に用いる場合、ポート番号別に最大接続数を管理してもよい。
【００３５】
次に、通信制御手段１０ｃは、送信元の機器１０２が機器リスト１２ａに登録されていなければ、当該機器１０２を機器リスト１２ａに新たに登録すると共に、当該機器１０２に関連付けて当該パケットの受信時刻を初回通信時刻として登録する。そして、当該パケットの通過を許可し、当該パケットを送信先となっているサーバ１０６へ送信する。また、通信制御手段１０ｃは、機器１０２からパケットを受信したとき、ホワイトリスト１２ｂに当該機器１０２と当該パケットの送信先のサーバ１０６とが関連付けて登録されていれば、当該パケットの通過を許可し、当該パケットを当該サーバ１０６へ送信する。さらに、通信制御手段１０ｃは、当該パケットの受信時刻を最終通信時刻として、当該機器１０２の機器ＩＤと当該サーバ１０６のサーバＩＤに関連付けてホワイトリスト１２ｂに登録する。
【００３６】
以下、図６に示すフローチャートを参照して、通信システム１００におけるパケットの送受信処理について説明する。本実施の形態では、一般的なＩｏＴ機器のように、パケットフィルタリング装置１０４に対して機器１０２が新たに接続され、電源が投入されることによって自動でサーバ１０６へパケットを送信する通信が開始されるものとする。当該通信制御処理は、パケットフィルタリング装置１０４において機器１０２からパケットが受信した時に実行される処理であり、受信したパケットを送信先となるサーバ１０６へ転送するか否かを制御する処理である。
【００３７】
ステップＳ１０では、受信されたパケットの送信元の機器１０２と送信先のサーバ１０６が識別される。通信制御手段１０ｃは、受信されたパケットのヘッダ情報などを参照して、パケットの送信元の機器１０２と送信先のサーバ１０６とを識別する。
【００３８】
ステップＳ１２では、受信されたパケットの送信元の機器１０２が機器リスト１２ａに既に登録されているか否かが判定される。通信制御手段１０ｃは、受信されたパケットの送信元の機器１０２が機器リスト１２ａに既に登録されていればステップＳ１６に処理を移行させ、登録されてなければステップＳ１４に処理を移行させる。
【００３９】
ステップＳ１４では、機器リスト１２ａにパケットの送信元の機器１０２を登録する。通信制御手段１０ｃは、機器リスト１２ａに当該機器１０２の機器ＩＤを新たに登録すると共に、当該パケットの受信時刻を初回通信時刻として登録する。その後、処理をステップＳ３２に移行させる。
【００４０】
一方、ステップＳ１６では、ホワイトリスト１２ｂにおいてパケットの送信元の機器１０２と送信先のサーバ１０６が関連付けて登録されているか否かが判定される。通信制御手段１０ｃは、ホワイトリスト１２ｂにパケットの送信元の機器１０２の機器ＩＤと送信先のサーバ１０６のサーバＩＤとが関連付けて登録されていればステップＳ３４に処理を移行させ、登録されていなければステップＳ１８に処理が移行される。
【００４１】
ステップＳ１８では、現在時刻が初回通信時刻から初期化期間内であるか否かが判定される。最大接続数設定手段１０ｂは、機器リスト１２ａからパケットの送信元の機器１０２に関連付けて登録されている初回通信時刻を読みだし、初回通信時刻から現在時刻までの経過時間を算出する。そして、最大接続数設定手段１０ｂは、経過時間が初期化期間以下であればステップＳ３２に処理を移行させ、そうでなければステップＳ２０に処理を移行させる。なお、初期化期間は、上記のように設定される。
【００４２】
ステップＳ２０では、パケットの送信元の機器１０２に対して最大接続先数が設定されているか否かが判定される。最大接続数設定手段１０ｂは、機器リスト１２ａにおいてパケットの送信元の機器１０２に対して最大接続先数が設定されていればステップＳ２４に処理を移行させ、設定されていなければステップＳ２２に処理を移行させる。
【００４３】
ステップＳ２２では、最大接続先数が設定される。最大接続数設定手段１０ｂは、パケットの送信元の機器１０２から最初にパケットを受信したときから初期化期間に当該機器１０２からパケットの送信先となったサーバ１０６の数を計数する。そして、最大接続数設定手段１０ｂは、当該計数されたサーバ１０６の数に応じて当該機器１０２に対する最大接続先数を設定する。設定方法は、上記のとおりである。最大接続数設定手段１０ｂは、設定された最大接続先数を当該機器１０２の機器ＩＤに関連付けて機器リスト１２ａに登録する。その後、ステップＳ２４に処理を移行させる。
【００４４】
ステップＳ２４では、ホワイトリスト１２ｂにおいてパケットの送信元の機器１０２に対応して登録されているサーバ１０６の数が最大接続先数未満であるかが判定される。ホワイトリスト更新手段１０ａは、ホワイトリスト１２ｂにおいてパケットの送信元の機器ＩＤに関連付けて登録されているサーバＩＤの数が最大接続先数未満であればステップＳ３２に処理を移行させ、そうでなければステップＳ２６に処理を移行させる。
【００４５】
ステップＳ２６では、ホワイトリスト１２ｂにおいてパケットの送信元の機器１０２に対してタイムアウトとなったサーバ１０６が関連付けられているか判定される。ホワイトリスト更新手段１０ａは、ホワイトリスト１２ｂにおいてパケットの送信元の機器ＩＤに関連付けて登録されているサーバＩＤの最終通信時刻と、現在時刻とに基づいて所定のタイムアウト時間以上経過しているサーバＩＤが存在しているか否かを判定する。存在する場合、すなわちパケットの送信元の機器１０２との通信がタイムアウト時間以上行われていないサーバ１０６が存在する場合、ステップＳ３０に処理を移行させ、存在しなければステップＳ２８に処理を移行させる。
【００４６】
ステップＳ２８では、パケットフィルタリング装置１０４にて受信されたパケットが破棄される。すなわち、当該パケットの送信元の機器１０２と送信先のサーバ１０６とが関連付けられてホワイトリスト１２ｂに登録されておらず、さらにホワイトリスト１２ｂに追加登録できる最大接続先数を超えており、タイムアウトしたサーバ１０６も存在しない場合、通信制御手段１０ｃはパケットの通信を許可せず、当該パケットを破棄する。このとき、パケットを破棄したことを示す情報を出力部１４にて出力したり、パケットの送信元の機器１０２に通知したりするようにしてもよい。
【００４７】
一方、ステップＳ３０では、タイムアウトしたサーバ１０６を削除する処理を行う。ホワイトリスト更新手段１０ａは、パケットの送信元の機器１０２との通信がタイムアウト時間以上行われていないサーバ１０６をホワイトリスト１２ｂから削除する。その後、処理をステップＳ３２に移行させる。
【００４８】
ステップＳ３２では、ホワイトリスト１２ｂに新たに追加登録を行う。ホワイトリスト更新手段１０ａは、現在処理対象とされているパケットの送信元の機器１０２の機器ＩＤと、送信先のサーバ１０６のサーバＩＤとの組を新たにホワイトリスト１２ｂに登録する。その後、処理をステップＳ３４に移行させる。
【００４９】
ステップＳ３４では、パケットが送信先のサーバ１０６に送信される。通信制御手段１０ｃは、通信対象のパケットを送信先のサーバ１０６へ転送する。そして、通信制御手段１０ｃは、ホワイトリスト１２ｂにおいてパケットの送信元の機器１０２の機器ＩＤと送信先のサーバ１０６のサーバＩＤに関連付けてパケットの送信時刻を最終通信時刻として登録又は更新する。
【００５０】
以上のように、一般的に、ＩｏＴ機器等では正規なアクセス先（パケットの送信先）は総数が限られており、かつ最初の利用時から短い期間におよそすべての正規のアクセス先との通信が行われる。また機器１０２が攻撃者によって不正アクセスされて制御を乗っ取られてしまった場合、攻撃者は自身の身元を隠すなどの目的で頻繁にアクセス先を変更することが多く、その結果アクセス先数が異常に増えるのが一般的である。そこで、本実施の形態では、新たにパケットフィルタリング装置１０４に接続された機器１０２について、最初のパケットの通信時刻から初期化期間内に通信が行われたアクセス先（送信先のサーバ１０６）の数を計数し、当該計数値に基づいて機器１０２の各々に対してアクセス先（パケットの送信先）となるサーバ１０６の最大接続先数を設定する。そして、当該最大接続先数の範囲内でホワイトリスト１２ｂに通信が許可される機器１０２とサーバ１０６と登録される。これらの処理を自動的に行うことにより、機器１０２毎にアクセス先として許可されるサーバ１０６の総数を制限して管理する。このように、利用者等による操作を必要とすることなく、フィルタリング条件（ホワイトリスト）を設定することが可能となり、後に攻撃者によって機器１０２の制御を乗っ取られるような場合が生じても適切に当該通信を制限することが可能なパケットフィルタリング装置１０４を提供することができる。
【００５１】
なお、機器１０２から最初のパケットを受信した初回通信時刻においてタイマーを稼働させ、初回通信時刻から初期化期間を経過したか否かを常に監視しておき、初期化期間を経過したときに最大接続数設定手段１０ｂによる最大接続数の設定処理を開始するようにしてもよい。
【００５２】
また、すべての機器１０２からの通信が許可されている送信先のサーバ１０６のサーバＩＤが予め記録されたマスターホワイトリストに基づいてパケットの通信の許可・不許可を制御するようにしてもよい。マスターホワイトリストは、予め記憶部１２に記憶させておけばよい。パケットの送信先となるサーバ１０６のサーバＩＤがマスターホワイトリストに登録されている場合、通信制御手段１０ｃは、ホワイトリスト１２ｂの登録内容に関わらず、当該パケットの通信を許可する。また、パケットの送信先となるサーバ１０６がマスターホワイトリストに登録されている場合、ホワイトリスト更新手段１０ａは、当該パケットの送信元の機器１０２の機器ＩＤと送信先のサーバ１０６のサーバＩＤとをホワイトリスト１２ｂに追加登録しないようにすることが好適である。マスターホワイトリストに、ＤＮＳ、ＮＴＰサーバなどインターネットの使用に対して必要性が高く、多くの機器１０２で登録されているサーバ１０６を登録することで、各機器１０２におけるこれら共通の通信先への許可に関するタイムアウトなどの処理を大幅に省くことができる。また、マスターホワイトリストを用いることによって計数された各機器１０２の接続先（サーバ１０６）の数は、各機器１０２に固有の接続先となるため、機器１０２毎により最適化された最大接続数が設定されることが期待される。
【００５３】
また、パケットの送信先のサーバ１０６が通信を禁止する送信先として予め記憶されたブラックリストに基づいてパケットの許可・不許可を制御するようにしてもよい。ブラックリストは、予め記憶部１２に記憶させておけばよい。パケットの送信先となるサーバ１０６のサーバＩＤがブラックリストに登録されている場合、通信制御手段１０ｃは、当該パケットについては通信を許可せず、破棄する処理とする。また、最大接続数設定手段１０ｂは、当該パケットの送信元の機器１０２に対して設定されている最大接続先数を減ずる処理を行うことが好適である。これにより、ブラックリストに登録されているようなリスクのあるサーバ１０６への通信を試みた機器１０２に対して許可される接続先数を制限することができる。これにより、ＩｏＴ機器の接続時における通信上のセキュリティをより一層高めることができる。
【符号の説明】
【００５４】
１０  制御部、１０ａ  ホワイトリスト更新手段、１０ｂ  最大接続数設定手段、１０ｃ  通信制御手段、１２  記憶部、１２ａ  機器リスト、１２ｂ  ホワイトリスト、１４  出力部、１６  入力部、１８  通信部、１００  通信システム、１０２  機器、１０４  パケットフィルタリング装置、１０６  サーバ、１０８  ネットワーク。
【図１】
2019047239.tif 000003
【図２】
2019047239.tif 000004
【図３】
2019047239.tif 000005
【図４】
2019047239.tif 000006
【図５】
2019047239.tif 000007
【図６】
2019047239.tif 000008