(57)【特許請求の範囲】
【請求項１】
受信したパケットのログを生成する生成手段と、
前記生成手段によって生成されたログを格納する第１の記憶部と、
前記第１の記憶部に格納されているログの数が所定数より大きい場合、前記第１の記憶部に格納されている各ログに対して送信待機時間を設定する設定手段と、
各ログの送信待機時間に応じて、各ログを分析装置に送信するための処理を行う送信処理手段と、
を具備する電子機器。
【請求項２】
乱数を生成する乱数生成部を更に具備し、
前記設定手段は、前記第１の記憶部に格納されているログの数が所定数より大きい場合、前記第１の記憶部に格納されている各ログに対して前記乱数生成部によって生成された乱数に基づいて送信待機時間を設定する請求項１に記載の電子機器。
【請求項３】
最後に送信されたログの送信時間を示す送信時間情報が格納される第２の記憶部を更に具備し、
前記送信処理手段は、前記送信時間情報が示す送信時間と第１のログに設定された送信待機時間とに基づいて、前記第１のログを前記分析装置に送信するための処理を行う請求項１に記載の電子機器。
【請求項４】
前記ログは、送信待機時間に基づいた待機時間情報を含む請求項１に記載の電子機器。
【請求項５】
受信したパケットのログを生成し、
前記ログを記憶部に格納し、
前記記憶部に格納されているログの数が所定数より大きい場合、前記記憶部に格納されている各ログに対して送信待機時間を設定し、
各ログの送信待機時間に応じて、各ログを分析装置に送信するための処理を行うログ送信方法。
【請求項６】
受信したパケットのログを生成する手順と、
前記ログを記憶部に格納する手順と、
前記記憶部に格納されているログの数が所定数より大きい場合、前記記憶部に格納されている各ログに対して送信待機時間を設定する手順と、
各ログの送信待機時間に応じて、各ログを分析装置に送信するための処理を行う手順と、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、通信ログを送信する電子機器に関する。
【背景技術】
【０００２】
制御システムにセキュリティ攻撃の脅威が高まっているが、一方でＩＴシステムと異なり設備更新期間が長い、アップデートによるシステム停止のリスクが高いことから、ログによる監視で攻撃を検知する手法が着目されてきた。ログの代表的なものには通信ログがある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−０７１０８５号公報
【特許文献２】特開２００５−２５０９０６号公報
【特許文献３】特開２０１２−１８１７４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
制御システムで障害時に起こる多重状変と呼ぶ短時間に多数の通信パケットが発生する状態になった際に、多数の通信ログが送信される。このため、短時間に多数の通信ログが生成された場合に、ネットワーク帯域やサーバ負荷が増大することにより、通信パケットの伝送遅延や正規のパケットや通信ログが失われる場合があった。【０００５】
本発明の目的は、短時間に多数の通信ログが生成された場合に、通信パケットの伝送遅延や正規のパケットや通信ログが失われることを防止することが可能な電子機器を提供することにある。
【課題を解決するための手段】
【０００６】
実施形態によれば、電子機器は、ログ生成手段と、記憶部と、送信待機時間設定手段と、送信処理手段と、を具備する。ログ生成手段は、受信したパケットのログを生成する。記憶部は、ログ生成手段によって生成されたログを格納する。送信待機時間設定手段は、記憶部に格納されているログの数が所定数より大きい場合、記憶部に格納されている各ログに対して送信待機時間を設定する。送信処理手段は、各ログの送信待機時間に応じて、各ログを分析装置に送信するための処理を行う。
【図面の簡単な説明】
【０００７】
【図１】図１は、システムの構成の一例を示すブロック図である。
【図２】図２は、実施形態の通信ログ生成装置を含む制御システムの構成の一例を示すブロック図である。
【図３】図３は、実施形態の通信ログ生成装置の構成の一例を示すブロック図である。
【図４】図４は、通信ログが生成されてから通信ログに待機時間を設定する手順を示すフローチャートである。
【図５】図５は、通信ログを送信する手順を示すフローチャートである。
【図６】図６は、セキュリティ監視センタの構成の一例を示すブロック図である。
【図７】図７は、実施形態の通信ログ生成装置の構成の一例を示すブロック図である。
【発明を実施するための形態】
【０００８】
以下、実施の形態について図面を参照して説明する。
【０００９】
図１は、本実施形態の通信ログ生成装置を含むシステムの構成の一例を示す図である。
【００１０】
図１に示すように、セキュリティを監視する対象の制御システム１０がインターネット等のネットワークＡを介して、遠隔監視システム２０と、セキュリティ監視センタ３０とが接続されている。セキュリティ監視センタ３０は、制御システム１０から送信される通信ログを分析・監視することで、制御システムへの攻撃を検知・通報する。
【００１１】
なお、遠隔監視システム２０はなくても良い。また、制御システム１０と遠隔監視システム２０とを接続するネットワークと、制御システム１０とセキュリティ監視センタ３０とを接続するネットワークとは、ネットワークは同一であっても、別ネットワークであっても良い。
【００１２】
制御システム１０は、プラントやビル等を監視する。制御システム１０は、監視結果を遠隔監視システム２０に通知する。遠隔監視システム２０は、監視結果に基づいて制御システム１０を制御する。
【００１３】
制御システム１０は、後述する通信ログをセキュリティ監視センタ３０に送信する。セキュリティ監視センタ３０は、通信ログを分析する。ログ分析部２０４は、分析により、セキュリティ攻撃やその予兆となる侵入を検知する。
【００１４】
図２は、通信ログを送信する本実施形態の通信ログ生成装置を含む制御システム１０の構成の一例を示すブロック図。制御システム１０は、通信ログ生成装置１００Ａ，１００Ｂ、コントローラ１１０Ａ，１１０Ｂ、センサ１１１Ａ，１１１Ｂ、アクチュエータ（ＡＣＴ）１１２Ａ，１１２Ｂ、制御サーバ１２０、ルータ１３０等を備えている。
【００１５】
コントローラ１１０Ａ，１１０Ｂが通信ログ生成装置１００Ａ，１００Ｂを介してＬＡＮ（local area network）などのネットワークＢに接続されている。コントローラ１１０Ａ，１１０Ｂにセンサ１１１Ａ，１１１Ｂおよびアクチュエータ１１２Ａ，１１２Ｂが接続されている。制御サーバ１２０およびルータ１３０がネットワークＢに接続されている。なお、センサ１１１Ａ，１１１Ｂは、複数あっても良い。アクチュエータ１１２Ａ，１１２Ｂは、複数あっても良い。
【００１６】
図３は、通信ログ生成装置の構成の一例を示すブロック図である。  
通信ログ生成装置１００は、第１の送受信部１０１、中継部１０２、第２の送受信部１０３、通信ログ生成部１０４、一時記憶部１０５、送信遅延時間設定部１０６、乱数生成部１０７、通信ログ送信処理部１０８、および通信ログ送信時間記憶部１０９等を備えている。
【００１７】
第１の送受信部１０１は、コントローラ１１０から送信されたパケットデータを受信する。第１の送受信部１０１は、コントローラ１１０から送信されたパケットデータを中継部１０２を介して第２の送受信部１０３に送信する。第２の送受信部１０３は、中継部１０２を介して受信したパケットデータを送信する。
【００１８】
第２の送受信部１０３は、コントローラ１１０宛てのパケットデータを受信する。第２の送受信部１０３は、中継部１０２を介して、コントローラ１１０宛てのパケットデータを第１の送受信部１０１に送信する。第１の送受信部１０１は、中継部１０２を介して受信したパケットデータをコントローラ１１０に送信する。
【００１９】
中継部１０２は、受信したパケットデータを通信ログ生成部１０４に送信する。通信ログ生成部１０４は、パケットデータを受信する度に、受信したパケットデータに基づいて、通信ログを生成する。通信ログは、たとえば、パケットの送信元の宛先、または、送信先の宛先、パケットデータの全部のデータ、または、既定のバイト数のデータを含む。通信ログは、タイムスタンプを更に含む。通信ログ生成部１０４は、生成された通信ログを一時記憶部１０５に格納する。
【００２０】
送信遅延時間設定部１０６は、一時記憶部１０５に格納されている通信ログの数に応じて、一時記憶部１０５に格納されている各通信ログの送信待機時間を設定する。一時記憶部１０５に格納されている通信ログの数が設定値より多くない場合に、送信遅延時間設定部１０６は、一時記憶部１０５に格納されている各通信ログの送信待機時間を０に設定する。一時記憶部１０５に格納されている通信ログの数が設定値より多い場合に、送信遅延時間設定部１０６は、一時記憶部１０５に格納されている各通信ログの送信待機時間を０より大きい値に設定する。
【００２１】
一時記憶部１０５に通信ログが新たに格納されると、送信遅延時間設定部１０６は、一時記憶部１０５に格納されている通信ログの数をカウントする。通信ログの数が設定数より大きくない場合、送信遅延時間設定部１０６は、一時記憶部１０５に格納されている通信ログの送信待機時間を０に設定する。通信ログの数が設定数より大い場合、送信遅延時間設定部１０６は、一時記憶部１０５に格納されている全ての通信ログに対して送信遅延時間を設定する。送信遅延時間設定部１０６は、乱数生成部１０７によって生成された乱数を所定の関数を用いて送信待機時間に変換する。所定の関数は、例えば一次関数を用いる。送信遅延時間設定部１０６は、通信ログに変換された送信待機時間を設定する。奈緒、送信遅延時間設定部１０６は、送信待機時間として、予め定義された一定の時間を設定しても良い。
【００２２】
通信ログ送信処理部１０８は、一時記憶部１０５内のそれぞれ通信ログに設定された送信待機時間に基づいて、通信ログを解析装置としてのセキュリティ監視センタ３０に送信する処理を行う。通信ログを送信した場合、通信ログ送信処理部１０８は、通信ログ送信時間記憶部１０９に送信時間を示す送信時間情報を記録する。
【００２３】
図４は、通信ログが生成されてから通信ログに待機時間を設定する手順を示すフローチャートである。図４のフローチャートを参照して、通信ログが生成されてから通信ログに待機時間を設定する手順を説明する。
【００２４】
コントローラ１１０宛てのパケットデータ、またはコントローラ１１０から送信されたパケットデータを受信した場合、通信ログ生成部１０４は、受信したパケットデータに基づいて通信ログを生成する(ステップＢ１１)。通信ログ生成部１０４は、生成されたパケットデータを一時記憶部１０５に格納する(ステップＢ１２)。
【００２５】
一時記憶部１０５に通信ログが新たに格納された場合、送信遅延時間設定部１０６は、一時記憶部１０５内に格納されている通信ログの数をカウントする（ステップＢ１３）。送信遅延時間設定部１０６は、カウントされた通信ログ数が通信ログの数より多いかを判定する（ステップＢ１４）。一時記憶部１０５内に格納されている通信ログの数が設定数より多い場合（ステップＢ１４のＹｅｓ）、送信遅延時間設定部１０６は、一時記憶部１０５内に格納されている通信ログについて、一時記憶部１０５内の一番古い通信ログに送信遅延時間が設定されているかを判定する（ステップＢ１５）。送信遅延時間が設定されていると判定した場合（ステップＢ１５のＹｅｓ）、送信遅延時間設定部１０６は、一時記憶部１０５内に最後に格納された通信ログに対して送信遅延時間を設定する（ステップＢ１６）。送信遅延時間が設定されていないと判定した場合（ステップＢ１５のＮｏ）、送信遅延時間設定部１０６は、一時記憶部１０５内に全ての通信ログに対して送信遅延時間を設定する（ステップＢ１７）。
【００２６】
ステップＢ１４において一時記憶部１０５内に格納されている通信ログの数が設定数より多くない場合（ステップＢ１４のＮｏ）、送信遅延時間設定部１０６は、一時記憶部１０５内に格納されている全ての通信ログの送信遅延時間を０に設定する（ステップＢ１８）。
【００２７】
図５は、通信ログを送信する手順を示すフローチャートである。図５のフローチャートを参照して、通信ログを送信する手順を説明する。  
通信ログ送信処理部１０８は、一時記憶部１０５内の一番古い通信ログに設定されている送信遅延時間を取得する（ステップＢ２１）。通信ログ送信処理部１０８は、通信ログ送信時間記憶部１０９から最後に送信された通信ログの送信時刻を示す送信時間情報を取得する（ステップＢ２２）。通信ログ送信処理部１０８は、現在時刻が最後に送信された通信ログの送信時刻に送信待機時間を足した時刻である送信予定時刻を過ぎているかを判定する（ステップＢ２３）。現在時刻が送信予定時刻を過ぎていないと判定した場合（ステップＢ２３のＮｏ）、送信遅延時間設定部１０６は、所定時間後に再度ステップＢ２３を実行する。所定時間は、たとえば送信予定時刻から現在時刻を引いた時間である。
【００２８】
現在時刻が送信予定時刻を過ぎていると判定した場合（ステップＢ２３のＹｅｓ）、通信ログ送信処理部１０８は、第２の送受信部１０３を用いて、一時記憶部１０５内の一番古い通信ログをセキュリティ監視センタ３０に送信するための処理を行う（ステップＢ２４）。通信ログ送信処理部１０８は、通信ログ送信時間記憶部１０９に送信時間を記録する（ステップＢ２５）。通信ログ送信処理部１０８は、一時記憶部１０５内の一番古い通信ログを削除する（ステップＢ２６）。
【００２９】
一時記憶部１０５内に格納されている通信ログの数が設定数より多い場合に、通信ログを直ぐに送信するのではなく、通信ログを遅延させて送信することで、制御システムにおける多重状変のような多数の状変イベントが生成されるときでも通信ログで通信回線がひっ迫することなく、通信ログを通信できるようになる。
【００３０】
（時刻補正）
通信ログの送信を遅延させることによりセキュリティ監視センタ３０での受信時刻とイベント発生時刻の間にずれが生じる。通信ログにタイムスタンプを入れることでこの問題は回避できるが、各装置の時刻同期が正確であることが必要になる。そこで、遅延を入れた場合、通信ログに遅延時間に基づいた遅延時間情報を付加しておくことで、セキュリティ監視センターで時刻補正できるように構成することもできる。遅延時間情報は、送信予定時刻と通信ログの生成時間との差を示す時間である。
【００３１】
図６は、セキュリティ監視センタ３０の構成の一例を示すブロック図である。  
セキュリティ監視センタ３０は、ログ受信部２０１、ログ記録部２０２、時刻補正部２０３、ログ分析部２０４、および結果提示部２０５等を備えている。
【００３２】
ログ受信部２０１は、ネットワークＡを介して通信ログを受信する。受信された通信ログはログ記録部２０２に格納される。受信された通信ログは時刻補正部２０３に通知される。時刻補正部２０３は、通信ログ内の遅延時間情報に基づいて、通信ログの送信時間（または、受信時刻）を補正する。ログ分析部２０４は、補正された時刻を用いて、通信ログを分析する。ログ分析部２０４は、分析により、セキュリティ攻撃やその予兆となる侵入を検知する。具体的には、アノーマリー分析と呼ばれる分析がある。例えば相関分析などにより、通常の通信パターンとの違う通信パターンを見つけることで攻撃を判定する方法がある。これにより、例えば、攻撃に先立って通常行われる攻撃対象を見つけるためのポートスキャンでは、普段使わないポートへの大量のアクセスなどを発生させるため発見することが可能になる。セキュリティ攻撃やその予兆となる侵入を検知された場合、結果提示部２０５は、その旨を提示する処理を行う。
【００３３】
（変形例）
図７に示すように、通信ログを送信するためのログ送信部３０１を設け、通信ログ送信処理部１０８が、ログ送信部３０１を用いて通信ログをセキュリティ監視センタ３０に送信するための処理を行っても良い。
【００３４】
なお、上記実施形態では、最後に送信された通信ログの送信時刻に送信待機時間を足した時刻である送信予定時刻していたが、通信ログが生成された時刻に送信待機時間を足した時刻を送信予定時刻しても良い。この場合、遅延時間情報は、送信予定時刻と通信ログの生成時間との差を示す時間である。
【００３５】
本実施形態によれば、一時記憶部１０５内に格納されている通信ログの数が設定数より多い場合に、通信ログを直ぐに送信するのではなく、通信ログを遅延させて送信することで、制御システムにおける多重状変のような多数の状変イベントが生成されるときでも通信ログで通信回線がひっ迫することなく、通信パケットの伝送遅延や正規のパケットや通信ログが失われることを防止することが可能になる。
【００３６】
なお、本実施形態の通信ログ生成部１０４、送信遅延時間設定部１０６、乱数生成部１０７、通信ログ送信処理部１０８によって行われる手順は全てソフトウェアによって実行することができる。このため、制御処理の手順を実行するプログラムを格納したコンピュータ読み取り可能な記憶媒体を通じてこのプログラムを通常のコンピュータにインストールして実行するだけで、本実施形態と同様の効果を容易に実現することができる。
【００３７】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【図１】
0005976934.tif 000002
【図２】
0005976934.tif 000003
【図３】
0005976934.tif 000004
【図４】
0005976934.tif 000005
【図５】
0005976934.tif 000006
【図６】
0005976934.tif 000007
【図７】
0005976934.tif 000008