異常検知システム、異常検知装置、異常検知方法、プログラムおよび記録媒体
【課題】制御システムにおいて発生する異常を効率的に検知し、異常が認められた制御システムを隔離する異常検知システムを提供する。
【解決手段】異常検知システムは、ネットワークに接続され、それぞれ個別の保護領域内で稼働する複数の制御システムと、制御システム毎に設けられ、当該制御システムと、監視する相手方の制御システムとの間で交換されるデータを検査し、相手方の制御システムに異常が疑われる場合に異常通知を発信する監視部と、複数の制御システム各々の監視部から発信される異常通知を集計して、異常が疑われた制御システムのレピュテーションを評価し、評価結果から基準に照らして異常であると判定された場合に、異常が疑われた制御システムを稼働させている保護領域に対し、少なくとも該保護領域内部からのアウトバウンドのトラフィックを制限させる管理部210とを含む。
【解決手段】異常検知システムは、ネットワークに接続され、それぞれ個別の保護領域内で稼働する複数の制御システムと、制御システム毎に設けられ、当該制御システムと、監視する相手方の制御システムとの間で交換されるデータを検査し、相手方の制御システムに異常が疑われる場合に異常通知を発信する監視部と、複数の制御システム各々の監視部から発信される異常通知を集計して、異常が疑われた制御システムのレピュテーションを評価し、評価結果から基準に照らして異常であると判定された場合に、異常が疑われた制御システムを稼働させている保護領域に対し、少なくとも該保護領域内部からのアウトバウンドのトラフィックを制限させる管理部210とを含む。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報セキュリティ技術に関し、より詳細には、制御システムにおいて発生する異常を効率的に検知し、異常が認められた制御システムを隔離するための異常検知システム、異常検知装置、異常検知方法、プログラムおよび記録媒体に関する。
【背景技術】
【0002】
現代社会は、電力、ガス、水道、鉄道、金融、プラント、パイプラインなど種々のインフラストラクチャの上に成り立っている。近年、スマートなオフィス、スマートなビルディング、スマートな都市、スマートなエネルギー利用の実現に向けて、上記社会的に重要なインフラストラクチャにおいて、その産業制御システム(Industrial Control System)のネットワークを介した相互接続や情報処理システムとの連携が進められている。
【0003】
一方、産業制御システムは、その機能が停止すれば、社会経済に大きな影響を及ぼすおそれがあるため、旧来、外部から隔離されたクローズド・システムでの稼働を前提として設計されてきた。それ故、産業制御システムにおけるセキュリティ対策は、情報処理システムにおけるものと比較して、必ずしも万全なものとはいえず、インターネット等のネットワークに接続されたオープン環境においては、ウィルス、ワーム、トロイの木馬、その他の悪意のあるコード、ハッキング、不正侵入、内部者による攻撃、異常動作および情報漏洩などの脅威の影響を受けやすいという問題があった。
【0004】
しかし、上記重要インフラストラクチャは、万が一攻撃を受けた場合、その影響は大規模かつ広範囲になる。産業制御システムは、プラントやパイプラインのバルブなどのアクチュエータを制御しているため、その誤作動は、作業の中断を招くだけでなく、ときにはボイラーの過剰圧力の発生、不適当な送電による都市規模の停電などの人的被害、ダムの異常放流などによる環境破壊をもたらす。したがって、上述したような脅威から産業制御システムを保護するべく高度なセキュリティを実現することが望ましい。また、万が一上述のような脅威が疑われる異常が発生した場合は、その異常を迅速に検知して、産業デバイスや他の産業制御システムを保護することが望ましい。
【0005】
ところで、上記ウィルス、不正アクセス等に関しては、情報処理システムにおいて種々のセキュリティ対策が知られていることから、情報処理システムで適用されているセキュリティ対策を導入することもある程度有用であると考えられる。情報処理システムにおけるセキュリティ技術としては、例えば、特開2004−302538号公報(特許文献1)は、防御したいネットワーク内(DMZ)の全ての端末が別の端末によって監視される相互監視形態をとることを特徴とする、A−IDS(Autonomous Intrusion Detection System:自律的侵入検知システム)と呼ばれる技術について言及している。
【0006】
特開2006−33140号公報(特許文献2)は、不正なアクセスを発生させる発生源が検知された場合に、そのような発生源の拡散を迅速に抑制することを目的として、セグメントごとに不正パケット発信端末の数を計数し、セグメントを接続するインターフェースを探索して、不正パケット発信端末が属するセグメント内で不正パケット発信端末の数が予め設定した所定数の範囲にない場合に、不正パケット発信端末の属するセグメントが接続されるインターフェースを遮断することを特徴とする、ネットワーク管理装置を開示する。特開2005−250802号公報(特許文献3)は、受信したアクセスデータを解析し、異常データの特徴を示す特徴量データを算出して、特徴量データを特徴量蓄積データに挿入し、特徴量蓄積データから正常アクセスとみなされる値域と異常アクセスとみなされる値域を区分する統計モデルを構成し、特徴量データが統計モデルの異常アクセスとみなされる値域に属するか否かを判定することを特徴とする不正アクセス検出装置を開示する。特開2007−96735号公報(特許文献4)は、外部ネットワークおよびLANと、情報処理装置との間に介在し、情報処理装置を不正な侵入から保護する学習型のネットワークセキュリティ装置を開示する。
【0007】
また、プログラムを保護された領域で動作させることによってシステムが不正に操作されるのを防ぐサンドボックスと呼ばれるセキュリティモデルも知られている。例えば、特表2004−518193号公報(特許文献5)は、疑わしいデータのためのデスクトップ隔離領域またはサンドボックスを有するコンピュータ・システムを開示する。特表2008−500653号公報(特許文献6)は、疑わしいファイルの実行およびアクセスのうち少なくとも一方をサンドボックス仮想マシン内で行うことで、処理システムのセキュリティ向上を達成する方法を開示する。
【0008】
しかしながら、産業制御システムは、情報処理システムとは異なる特質があり、情報処理システムで行われているセキュリティ技術を適用するだけでは充分とは言えず、上述のような脅威が疑われる異常を、効率的に検知して対策を講じることができない場合があった。また、産業制御システムは、デバイス制御の実時間性も求められるため、高負荷な監視や診断を行うことも適当ではなかった。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特開2004−302538号公報
【特許文献2】特開2006−33140号公報
【特許文献3】特開2005−250802号公報
【特許文献4】特開2007−96735号公報
【特許文献5】特表2004−518193号公報
【特許文献6】特表2008−500653号公報
【特許文献7】特開2007−34672号公報
【発明の概要】
【発明が解決しようとする課題】
【0010】
本発明は、上記従来技術の制御システムにおける問題点を鑑みてなされたものであり、本発明は、制御システム間の相互通信を緩やかに監視することにより、システム内で異常が疑われる制御システムを効率的に検知し、異常が確認された制御システムを隔離することができる異常検知システム、異常検知装置、異常検知方法、プログラムおよび記録媒体を提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明は、上記従来技術の課題を解決するために、以下の特徴を有する異常検知システムおよび該異常検知システムに含まれる異常検知装置を提供する。本発明の異常検知システムは、それぞれネットワークに接続され個別の保護領域内で稼働する複数の制御システムを備える。本異常検知システム内では、制御システム毎に、当該制御システムと監視する相手方の制御システムとの間で交換されるデータを検査し、上記相手方の制御システムに異常が疑われる場合に異常通知を発信する監視部が設けられている。異常検知システムに含まれる異常検知装置は、保護領域を管理する管理部を備える。管理部は、上記複数の制御システム各々の監視部から発信される異常通知を集計して、異常が疑われた制御システムのレピュテーションを評価し、評価結果から基準に照らして異常であると判定された場合に、異常が疑われた制御システムを稼働させている保護領域に対し、少なくとも該保護領域内部からのアウトバウンドのトラフィックを制限させる制御を行う。
【0012】
また本発明では、上記管理部は、異常が疑われた制御システムを稼働させている保護領域に対し、さらに、通常のネットワークから切り離し、診断モジュールが接続される検査用ネットワークに接続させることができる。さらに本発明では、上記管理部は、診断モジュールによる診断の結果、異常が確認されなかった場合に、異常が疑われた制御システムを稼働させている保護領域に対し、上記アウトバウンドのトラフィックの制限を解除させると共に、検査用ネットワークから切り離してネットワークへの接続を復旧させることができる。
【0013】
上記構成によれば、制御システム間の相互通信を緩やかに監視することによってシステム内で異常が疑われる制御システムを効率的に検知することが可能となり、ひいては、異常検知を行うための制御システム間の監視負荷を低減することができる。
【図面の簡単な説明】
【0014】
【図1】本発明の実施形態による産業システムの概略構成を示す図。
【図2】本発明の実施形態による産業システムにおけるソフトウェアおよびハードウェア構成を示す図。
【図3】本発明の実施形態による異常検知機構に関する機能ブロック図。
【図4】本発明の実施形態による異常検知機構における異常検知処理の流れを説明する図。
【図5】本発明の実施形態による異常検知処理の流れを、産業制御システムの相互監視トポロジーに関連して説明する図。
【図6】相互監視トポロジーを例示する図。
【図7】本発明の実施形態による産業システムにおいて保持されるトポロジデータのデータ構造を例示する図。
【図8】本発明の実施形態による監視部が実行する異常通知処理を示すフローチャート。
【図9】本発明の実施形態によるサンドボックス管理部が実行する異常検知処理を示すフローチャート。
【図10】仮想マシンの仮想ネットワーク・アダプタの論理的接続を検査用ネットワーク236へ切り替える処理を説明する図。
【発明を実施するための形態】
【0015】
以下、本発明について実施形態をもって説明するが、本発明は、後述する実施形態に限定されるものではない。以下に説明する実施形態では、異常検知システムおよび異常検知装置の一例として、産業システムおよび管理サーバを用いて説明する。
【0016】
図1は、本発明の実施形態による産業システムの概略構成を示す図である。図1に示す産業システム100は、ネットワーク102に接続される、管理サーバ110と、1以上の物理マシン120a〜120eとを含んで構成される。産業システム100は、特に限定されるものではないが、農業、金融、化学、商業施設、ダム、防衛産業基盤、緊急サービス、エネルギー、政府施設、情報技術、原子炉、物流、公共衛生、通信、輸送、水道、重要製造業などにおけるシステムとして構成される。
【0017】
物理マシン120は、その上で1以上の産業制御システムを稼働させている。物理マシン120上に実装される産業制御システムは、特定用途に応じた機能を備えるものであり、一般的には、フィールド機器と通信し、システム監視およびプロセス制御を行う監視制御サーバである。産業制御システムとしては、特に限定されるものではないが、地理的に分散した制御対象を遠隔集中監視し、制御データの収集を行うSCADA(Supervisory Control And Data Acquisition)、分散制御システム(DCS:Distributed Control System)などにおける監視制御サーバが例示される。
【0018】
物理マシン120は、コントロール・ネットワーク、フィールド・ネットワーク、センサ・バスを介して産業デバイス、例えばフィールド機器に接続される。上記フィールド機器としては、センサ122、アクチュエータ124その他種々の産業機器を挙げることができる。上記センサ122としては、特定用途にもより特に限定されるものではないが、温度センサ、湿度センサ、圧力センサ、空調センサ、流量計、水位計、照度計、電力計、電力使用量カウンタ、人感知センサなどの種々の計測器を挙げることができる。上記アクチュエータ124としては、特定用途にもより特に限定されるものではないが、バルブ開閉器、火力調整器、コンプレッサ、ポンプ、その他モータや能動的に機能する装置を挙げることができる。
【0019】
ネットワーク102は、特に限定されるものではないが、例えば、TCP/IPおよびイーサネット(登録商標)によるLAN(Local Area Network)を含むことができる。また、ネットワーク102は、専用線を介して、またはVPN(Virtual Private Network)を用いて公衆回線を介して、異なるロケーションのLANが結合されて構成された広域ネットワークとして構成されていてもよい。さらに、ネットワーク102上には、適宜、専用のネットワーク型IDS(Intrusion Detection System)104などを設けることもできる。IDS104が設けられる場合は、後述するように、異常検知の精度をさらに向上させることができる。
【0020】
本発明の実施形態による産業制御システムは、それぞれ個別のサンドボックス内において物理マシン120上で稼働する。サンドボックスとは、他のプロセス等から隔離され、内部から外界を操作することが制限された、プログラムを動作させるための保護領域をいう。本発明の実施形態によるサンドボックスでは、その内部で動作する産業制御システムは、通常状態では、特に制限なく外界のセンサ122やアクチュエータ124等にアクセスできるが、一旦サンドボックスが活動化されると、アクセス制限がかかり外界から隔離される。上記管理サーバ110は、物理マシン120のサンドボックスを管理する機能を備えており、異常が認められる産業システムを発見すると、その産業制御システムが稼働するサンドボックスを活動化し、異常が認められる産業制御システムをシステム全体から一旦切り離す。
【0021】
本発明の実施形態では、上記サンドボックスおよびその管理機構を実現するために、システム仮想化技術を適用することができる。図2は、本発明の実施形態による産業システムのソフトウェアおよびハードウェア構成を示す図である。物理マシン120は、概ねパーソナル・コンピュータ、ワークステーション、ラックマウント型サーバ、ブレード型サーバ、メインフレームなどの汎用コンピュータ装置として構成され、より具体的には、シングルコア・プロセッサまたはマルチコア・プロセッサなどのCPU、キャッシュ・メモリ、RAM、ネットワーク・アダプタ、ストレージ・デバイスなどのハードウェア・リソースを備える。
【0022】
物理マシン120は、Xen(登録商標)、VMWare(登録商標)、Hyper−V(登録商標)、Virtual PCなどのベアメタル型またはホスト型の仮想化ソフトウェアのハイパーバイザ(仮想機械モニタとも呼ばれることがある。)230を備え、このハイパーバイザ230上で、Windows(登録商標)、UNIX(登録商標)、LINUX(登録商標)などの種々の汎用OSや、産業用OSをゲストOSとした1以上の仮想マシン232a,232b(図2では、2つの仮想マシンが例示されている。)を稼働させる。
【0023】
仮想マシン232は、本発明の実施形態による保護領域、すなわちサンドボックスを提供し、その上で産業制御システム240を動作させる。仮想マシン232上では、物理マシン120に接続される実ネットワーク・アダプタ(図示せず。なお、本明細書においては、仮想化されて仮想マシンにアサインされた仮想的なハードウェアと区別するため、物理的なハードウェアには「実」の文言を付して参照する。)、実センサ122、実アクチュエータ124などの物理的なハードウェアは、仮想ネットワーク・アダプタ(なお、仮想化されて各仮想機械にアサインされたハードウェアについては、物理的なハードウェアと区別するため「仮想」の文言を付して参照する。)244、仮想センサ246および仮想アクチュエータ248として仮想化され、仮想マシン232にアサインされる。
【0024】
管理サーバ110は、物理マシン120上のサンドボックスを管理する機能を提供するサンドボックス管理部210を備える。管理サーバ110は、概ね汎用コンピュータ装置として構成され、CPU、キャッシュ・メモリ、RAM、ネットワーク・アダプタ、ストレージ・デバイスなどのハードウェア・リソースを備え、Windows(登録商標)、UNIX(登録商標)、LINUX(登録商標)などの適切なOSの制御の下、上記サンドボックス管理部210を実現する。なお、説明する実施形態では、管理サーバ110は、物理マシン120とは別個の物理システムとして実装されるものとして説明するが、他の実施形態では、物理マシン120上で稼働する仮想マシンとして、上記サンドボックス管理機能を実装してもよい。
【0025】
サンドボックス管理部210は、物理マシン120上のハイパーバイザ230に対し命令を発行し、仮想マシン232にアサインされた仮想センサ246および仮想アクチュエータ248のアタッチやデタッチを制御し、仮想センサ246と実センサ122との間の論理的な接続、仮想アクチュエータ248と実アクチュエータ124との間の論理的な接続を制御する。サンドボックス管理部210は、サンドボックスを活動化する場合、対応する仮想マシン232が稼働する物理マシン120上のハイパーバイザ230に対し命令を発行し、該仮想マシン232の仮想センサ246と実センサ122との論理的な接続、仮想アクチュエータ248と実アクチュエータ124との論理的な接続を遮断させる。一方、サンドボックスを非活動化する場合、サンドボックス管理部210は、ハイパーバイザ230に対し命令を発行し、仮想センサ246と実センサ122との論理的な接続、および仮想アクチュエータ248と実アクチュエータ124との論理的な接続を復旧させる。
【0026】
仮想マシン232は、仮想ネットワーク・アダプタ244を介して、複数の仮想マシン232およびサンドボックス管理部210が参加する論理的なネットワークである仮想ネットワーク234に接続され、仮想マシン232上の産業制御システム240は、この仮想ネットワーク234を介して相互に通信することができる。本実施形態では、産業制御システム240間でのゆるやかな相互監視を実現するべく、産業制御システム240と仮想ネットワーク・アダプタ244との間にセキュリティ・ゲートウェイ242を設けて、産業制御システム240間のトラフィックを監視させる。
【0027】
セキュリティ・ゲートウェイ242は、備えられる産業制御システム(例えば240a)と、相手方の産業制御システム(同様に240b)との間で交換されるトラフィック・データを検証し、相手方の産業制御システム(同様に240b)が正常に動作しているかを確認する。セキュリティ・ゲートウェイ(同様に242a)は、相手方の産業制御システム(240b)に異常が疑われる場合、その旨をサンドボックス管理部210や他の産業制御システム(図示せず。)に通知する。他の産業制御システムは、異常が疑われる旨の通知を受けると、その異常が疑われた産業制御システム(同様に240b)に関し、上記と同様な検査を自身でも適宜行うことができる。
【0028】
サンドボックス管理部210は、産業制御システム240間の相互監視のトポロジーを把握しており、セキュリティ・ゲートウェイ242から報告される異常通知を集計し、異常が疑われた産業制御システムの周辺の産業制御システムによるレピュテーション(reputation;評判、信頼性、風評)を評価する。サンドボックス管理部210は、評価結果から所与の基準に照らして異常であると判定された場合、上述したような手法で、異常が疑われた制御システムを稼働させるサンドボックスを活動化する。本発明の実施形態では、このような周辺の産業制御システムによるレピュテーションに基づいて異常を検知する異常検知機構を採用する。
【0029】
以下、図3〜図7を参照しながら、本発明の実施形態による産業システムにおいて実現される異常検知機構について、より詳細に説明する。図3は、本発明の実施形態による異常検知機構に関する機能ブロック図である。図3には、サンドボックス管理部210およびサンドボックス(仮想マシン)232の詳細な機能ブロック200が示されている。なお、図3は、産業制御システムに適用する種々の態様を例示する。
【0030】
産業制御システム240aおよび240bは、相互接続される既存の産業制御システムに適用した場合を例示する。産業制御システム240aおよび240bは、仮想ネットワーク234を介して、管理のためのコントロールやデータを交換している。例えば、電力流通システムでは、隣接する発電管理システム間で発電量、消費電力量などを相互に交換し、余剰電力を融通し合っている。このとき、発電量や消費電力量に関するデータや、余剰電力の融通依頼のためのコントロールが相互に交換される。相互接続する産業制御システム240aおよび240bは、それぞれ、上記コントロールやデータ交換を行うための相互通信部260aおよび260bを備えており、一方、その外部に設けられるセキュリティ・ゲートウェイ242aおよび242bは、上記相互通信部260a,260b間で交換されるトラフィックを監視し、交換されるデータやコントロールの妥当性を検証する監視部250aおよび250bを備える。なお、相互通信部260a,260bは、既存の産業制御システム240a,240bのうち、相互にコントロールやデータを交換する機能を抽象化した機能部を表す。
【0031】
監視部250a,250bが行う検査は、特に限定されるものではないが、相手方の産業制御システム240から同じユーザ識別名でのログイン要求が反復して失敗した場合に異常を疑うというような一般的なセキュリティ検査や、上記電力流通システムであれば、自己の産業制御システム240に過負荷を生じさせるような電力の融通依頼が行われた場合に異常と疑ったり、想定外の発電量や消費電力量が通知された場合に異常を疑ったりするというような、産業制御システム固有の検査を挙げることができる。
【0032】
監視部250aおよび250bは、既存の産業制御システム240aおよび240b間で通常行われるトラフィックを監視し、その情報の検査の結果、予め設定された異常を疑うべき条件が満たされた場合に、相手方の産業制御システム240の異常を疑い、異常通知を発信する。異常通知は、少なくともサンドボックス管理部210に送信され、必要に応じて、異常が疑われた産業制御システム以外の周辺産業制御システムのセキュリティ・ゲートウェイに対しても送信される。なお、異常通知は、異常が疑われる産業制御システム240を特定する情報(産業制御システムIDなど)を含む。また他の実施形態では、疑われる異常の内容を表す値、例えば疑わしい程度を示す値や異常の種類を示す値を付してもよく、上記予め設定された異常を疑うべき条件は、これらの値を決定する条件を含んでいてもよい。なお、上記検査で使用する異常を疑うべき条件は、管理者により個別に設定されてもよく、サンドボックス管理部210において集中管理し、サンドボックス管理部210からセキュリティ・ゲートウェイ242に配布される形で設定されてもよい。
【0033】
もう1つの態様を示す産業制御システム240cは、相互接続を考慮せずに設計されている既存の産業制御システムに適用した場合を例示する。産業制御システム240c自体は、外部とコントロールやデータの交換をしておらず、他の産業制御システムとの間にトラフィックを発生させていない。そこで、本実施形態では、産業制御システム240c外部に設けられたセキュリティ・ゲートウェイ242cが相互通信部254cを備え、相互通信部254cが他の産業制御システムの限定的な検査を行うためのトラフィックを発生させる。監視部250cは、上記監視部250a,250bと同様に、相互通信部254cと他の産業制御システムの相互通信部との間で交換されるトラフィックを監視し、交換されるデータの妥当性を検証する。
【0034】
セキュリティ・ゲートウェイ242cが備える相互通信部254cは、特に限定されるものではないが、自己の産業制御システム240cによる仮想センサ246や仮想アクチュエータ248などへの入出力を監視し、センサデータやコントロール値を拾い上げて相手方に送信することで、トラフィックを発生させることができる。監視部250cによる検査も、特に限定されるものではないが、上述したような一般的なセキュリティ検査や、相手方から送られてくるセンサデータやコントロール値が許容される範囲外の値をとった場合(例えば、発電量が負の値をとった場合)に異常を疑ったりするというような検査を行うことができる。その他、相互接続を考慮せずに設計されている場合は、外部からのログインや電力の融通依頼は想定されていないため、このような想定されていない外部からの通信を異常として検出する検査を行うこともできる。
【0035】
上述した産業制御システム240a〜240cは、いずれも、既存の産業制御システム240に対し、産業制御システム240と仮想ネットワーク・アダプタ244との間にセキュリティ・ゲートウェイ242を介在させることで、異常検知機構を実装する態様を示すものである。これに対して、残りもう1つの態様を示す産業制御システム240dは、上述したセキュリティ・ゲートウェイ242の機能を取り込んで新規設計された産業制御システムを例示する。産業制御システム240dは、検査のためのトラフィックを発生させる相互通信部260dと、トラフィックを監視する監視部262dとを備え、外部モジュールとしてのセキュリティ・ゲートウェイを必要としない。相互通信部260dおよび監視部262dは、それぞれ、上記相互通信部254cおよび監視部250cと同様の機能を備える。
【0036】
上記相互通信を行う産業制御システム240a,240bの態様では、通常行われるトラフィックを監視することで異常を判定している。このため、相手方の異常を監視するためにトラフィックを別途発生させて相手方のリソースを大量に消費させるというような負荷を増大させない。また、上記相互通信を考慮しない産業制御システム240cの態様、新規設計された産業制御システム240dの態様についても、相互通信部254c,260dは、任意のタイミングで、自己のセンサデータやコントロール値を拾い上げて相手方に送信し、また、これを受信するだけであり、特段の負荷を増大させるものではない。上記いずれの態様においても、相手方の産業制御システムの異常が確証できるに足る詳細な検査を行うというものではなく、産業制御システム240内で発生する情報を拾い上げて、相手方の異常が疑われるという程度の検査が行われるのみであり、密に相互監視を行う場合に比べても、異常検知のために発生する負荷は極めて小さいといえる。
【0037】
サンドボックス管理部210は、異常通知受信部212と、全体トポロジデータ214と、異常判定部216と、サンドボックス活動制御部218とを含み構成される。異常通知受信部212は、複数の産業制御システム240a〜240d各々の監視部250a〜250c,262dから発信される異常通知を受信して、それを全体トポロジデータ214に記録する。全体トポロジデータ214は、産業制御システム間の相互監視の関係と、いずれの産業制御システムによっていずれの産業システムの異常を疑う異常通知が発せされたかを記録する。例えば、産業制御システム240aが産業制御システム240bの異常を疑い報告した場合、異常通知受信部212は、異常が疑われた産業制御システム240bについて、産業制御システム240aによる異常通知を記録する。
【0038】
異常判定部216は、全体トポロジデータ214を読み出し、複数の産業制御システム240各々の監視部250,262から発信される異常通知を集計して、異常が疑われた制御システムについてレピュテーションを評価し、評価結果から基準に照らして異常と認めるか否かを判定する。上記レピュテーションは、異常が疑われた制御システムを監視している2以上の制御システムからの異常通知をまとめて考慮した結果であり、簡便には、異常通知数、監視する制御システム数に対する異常通知数の割合などにより指標することができる。また、疑われる異常の内容を表す値、例えば疑わしい程度を示す値が異常通知に付されている実施形態では、疑わしい程度を示す値に応じて異常通知数の重み付け総和をとってもよい。さらに、疑われる異常の種類を示す値が付される実施形態では、異常の種類毎に異常通知数の総和をとったり、異常の種類に応じて異常通知数の重み付け総和をとったりすることもできる。さらに、好ましくは、図1に示すようにネットワーク102上にIDS104が設置される場合には、IDSから通知される異常通知も考慮することで、より精度の高い評価を行っても良い。
【0039】
また評価結果から異常であるか否かを判定する基準は、例えば、異常通知数、監視する制御システム数に対する異常通知数の割合または異常通知数の重み付け総和に対するしきい値を用いることができる。しきい値は、設定により任意の固定値、または条件に応じて変動する変動値とすることができる。しきい値を動的に変動する例としては、全体の異常通知の数または頻度に応じて基準レベルを変動させたり、特定の時間帯毎に基準レベルを変動させたりすることを挙げることができる。また、上記基準は複数あっても良く、例えば異常の種類毎に異常通知数の総和とる場合には、異常の種類毎にしきい値を設け、異常の種類毎の条件を用いた論理和または論理積として規定してもよい。
【0040】
サンドボックス活動制御部218は、各サンドボックス(仮想マシン)232の活動状態を制御しており、上記レピュテーションの評価基準に照らし異常であると判定された場合、異常が確認された産業制御システム240を稼働させているハイパーバイザ230に対し命令を発行し、サンドボックス232を活動化する。サンドボックス232が活動化すると、少なくともサンドボックス232内部から外界へのアウトバウンドのトラフィックが制限される。アウトバウンドのトラフィックの制限は、内部の産業制御システム240から仮想アクチュエータ248を経由した外界の実アクチュエータ124へのコントロールがある場合、この実アクチュエータ124への接続を遮断することにより行うことができ、より好ましくは、仮想アクチュエータ248から、コントロールに応じて制御されているかのように振る舞うダミーのアクチュエータへ論理的な接続を変更することにより行われる。
【0041】
一方、外界の実センサ122からサンドボックス232内部へ流れるセンサデータのようなインバウンドのトラフィックについては、好ましくは制限を設けず、そのまま産業制御システム240に到達することを許しても良い。例えば、実センサ122から産業制御システム240への片方向のデータフローのみである場合は、実センサ122への接続を維持することができる。実センサ122からのセンサデータを透過させ、実アクチュエータ124からダミー・アクチュエータへと論理的接続を切り替えることによって、仮に産業制御システム240にネットワーク経由で侵入した者があった場合でも、産業制御システムを隔離したことを侵入者に気付かせないようにすることが可能となる。
【0042】
図3には、産業制御システム240毎に設けられる周辺トポロジデータ252,264が示されている。周辺トポロジデータ252a〜252c,264dは、それぞれ、セキュリティ・ゲートウェイ242a〜242cおよび産業制御システム240dが、自己が監視する相手方の産業制御システム240について異常通知が行われた状況を把握するために好適に備えることができるデータであり、その詳細については後述する。
【0043】
図4は、本発明の実施形態による異常検知機構における異常検知処理の流れを説明する図である。図4に示す例では、まず産業制御システム240bのセキュリティ・ゲートウェイは、定期的または不定期に産業制御システム240cとの間を流れるトラフィックを検査し、異常が疑われるか否かを判定する(1)。産業制御システム240bのセキュリティ・ゲートウェイは、産業制御システム240cの異常が疑われると、サンドボックス管理部210と、産業制御システム240cを同じく監視する産業制御システム240aのセキュリティ・ゲートウェイとに異常通知を行う(2)。
【0044】
この時点では、サンドボックス管理部210は、産業制御システム240cを監視する2つの産業制御システム240aおよび240bのうち、産業制御システム240bからの異常通知のみを受けており、ここでは「監視する産業制御システムの過半数から異常通知が行われた場合に異常と認定する」という基準を満たしていないと判定し、産業制御システム240cのサンドボックス232cの活動化は行われない。特定の実施形態では、このとき、産業制御システム240bからの異常通知を受けた産業制御システム240aのセキュリティ・ゲートウェイは、警戒レベルを上げるべく、上記検査におけるしきい値を変化させてもよい。
【0045】
続いて、産業制御システム240aのセキュリティ・ゲートウェイは、定期的、不定期に、または上記異常通知を受けたタイミングで、産業制御システム240cとの間を流れるトラフィックを検査し、産業制御システム240cに異常が疑われるか否かを判定する(3)。産業制御システム240aのセキュリティ・ゲートウェイは、産業制御システム240cの異常が疑われると、サンドボックス管理部210に異常通知を行う(4)。このとき、セキュリティ・ゲートウェイが周辺トポロジデータを保持し、産業制御システム240bから異常通知を受けたことを記憶しておくことができる実施形態では、産業制御システム240cを監視し既に異常通知を発信している産業制御システム240bのセキュリティ・ゲートウェイへの異常通知を省略することができる。また、周辺トポロジデータが保持されず、産業制御システム240bのセキュリティ・ゲートウェイへの異常通知が省略されない実施形態であっても、産業制御システム240bのセキュリティ・ゲートウェイは、自身で既に異常通知を行っているため、産業制御システム240aからの異常通知に応答して改めて検査を実施する必要はない。
【0046】
この時点で、サンドボックス管理部210は、産業制御システム240cを監視する過半数以上から異常通知が行われているため、「監視する産業制御システムの過半数から異常通知が行われた場合に異常と認定する」という基準が満たされると判定し、産業制御システム240cが異常であると認定し、該産業制御システム240cが稼働する物理マシン上のハイパーバイザに命令を発行し、サンドボックス232cの活動化を行う(5)。これにより、異常が確認された産業制御システム240cは、少なくとも外界の実アクチュエータへのアウトバウンド・トラフィックが遮断され、外界から隔離されることになる。さらに、必要があれば、サンドボックス管理部210は、異常が確認された産業制御システム240cを検査用ネットワークに接続し、ウイルスチェックなどのさらなる詳細な検査および診断を行うことができる(6)。
【0047】
図5は、本発明の実施形態による異常検知機構における異常検知処理の流れを、産業制御システムの相互監視トポロジーに関連して説明する図である。図5(A)は、産業制御システム240の相互監視トポロジーを図示し、産業制御システムAが4つの産業制御システムB〜Eにより監視されている様子を示す。産業制御システムAを監視する4つの産業制御システムB〜Eを、便宜上、産業制御システムAの「周辺システム」と参照し、周辺システムB〜Eにより監視される産業制御システムAを「注目システム」と参照する。周辺システムB〜Eは、それぞれ、注目システムAについての異常通知を相互に交換し合う。図5(A)では、上記周辺システムB〜Eのうち3つの産業制御システムB,D,Eが、それぞれ、注目システムAについての異常通知を発信している。
【0048】
このとき、周辺システム数に対する異常通知数が過半数(割合が50%を超える)となることが異常と認定する基準として設定されていた場合、図5(B)に示すように、サンドボックス管理部210は、産業制御システムAの異常通知が過半数であることを検知して、産業制御システムAのサンドボックス232を活動化させる。上述したように本発明の実施形態では、サンドボックス管理部210は、産業制御システム240からの異常通知を集計し、産業制御システム240の相互監視トポロジーに応じて、異常が疑われた産業制御システムのレピュテーションを評価することによって、対処すべき異常を認定する。
【0049】
産業制御システム240の相互監視トポロジーは、特に限定されるものではないが、図6(A)に示すように、例えば相互通信をし合う発電管理システムA〜Dをグループ化(グループ300a)して相互監視させる一方で、同様に相互通信をし合うユーティリティ管理システムE〜Gをグループ化(グループ300b)して相互監視させるというように、相互通信をし合う機能的な集まり毎に個別にグループを定義することができる。さらに他の例では、図6(B)に示すように、産業制御システムの任意の配列を定義し、配列上の隣接システム間で相互監視を行うよう各セキュリティ・ゲートウェイ242の相互通信部254に設定して、相互監視トポロジーを定義することもできる。
【0050】
図7は、本発明の実施形態による産業システムにおいて保持されるトポロジデータのデータ構造を例示する。図7(A)は、サンドボックス管理部210により管理される全体トポロジデータ214を示す。全体トポロジデータ214は、注目システム毎に1以上の周辺システムとの関係を管理し、各周辺システムによる注目システムについての異常通知の状況(異常通知の有無、疑わしい程度や異常の種類を示す値が付される場合にはその値を含む。)を記録する。図7(A)に示す全体トポロジデータ214は、図6(B)に示したトポロジーに対応するものであり、この例では、産業制御システムAを注目システムとして、産業制御システムB〜Eの4つの周辺システムによる異常通知の状況が記録され、産業制御システムBを注目システムとして、産業制御システムA,F〜Hの4つの周辺システムによる異常通知の状況が記録されている。図7(A)はまた、周辺システムB,D,Eから産業制御システムAについて異常通知が行われたことを記録している。
【0051】
なお、説明する実施形態のように産業システム100内に1つのサンドボックス管理部210が設置される場合は、産業システム100内の各産業制御システム240を注目システムとして管理する全体トポロジデータ214を採用することができる。しかしながら、トポロジーの管理方法は、これに特に限定されるものではない。他の実施形態では、産業システム100内の管理する産業制御システム240の管理範囲を分掌し合う複数のサンドボックス管理部210を設けることができ、この実施形態では、各サンドボックス管理部に、割り振られた管理範囲毎にトポロジデータを設ける態様とすることができる。
【0052】
図7(B)は、各産業制御システム240毎に管理される周辺トポロジデータ252,264のうちの、産業制御システムBが管理するデータを例示する。周辺トポロジデータは、各産業制御システム毎に設けられ、周辺トポロジデータを具備する産業制御システムが監視している産業制御システム(以下、監視対象システムと参照します。)毎に、対応する他の1以上の周辺システムによる監視対象システムについての異常通知の状況を記録する。
【0053】
図7(B)に示す周辺トポロジデータは、図6(B)に示したトポロジーに対応し、産業制御システムBの周辺トポロジデータを示す。図7(B)に示す周辺トポロジデータは、産業制御システムA,F,G,Hをそれぞれ監視対象システムとして、産業制御システムB自身の異常検知の有無と、産業制御システムB以外の他の周辺システムによる監視対象システムについての異常通知の状況を記録する。例えば、監視対象システムAについては、産業制御システムC〜Eの3つの周辺システム(図7(B)ではA周辺システムとして示す。監視対象システムF,G,Hについても同様。)による異常通知の状況が記録されている。図7(B)に示す周辺トポロジデータでは、産業制御システムBが、産業制御システムAについて、自身で異常を検知し、さらに産業制御システムD,Eの2つの周辺システムから異常通知を受け取ったことが記録されている。図7(B)に示す周辺トポロジデータを参照することにより、産業制御システムBのセキュリティ・ゲートウェイは、自身が産業制御システムAの異常を検知した際に、産業制御システムD,Eの2つの周辺システムへの通知が省略できると判断できる。
【0054】
以下、図8および図9を参照しながら、本発明の実施形態による産業システムにおいて実行される異常検知処理について、より詳細に説明する。図8は、本発明の実施形態による産業制御システム毎に設けられる監視部が実行する異常通知処理を示すフローチャートである。図8に示す処理は、定期的に、不定期にまたは他の産業制御システムから異常通知を受信したことに応答して、ステップS100から開始する。なお、図8に示す処理は、監視する相手方の産業制御システム毎に実行される。
【0055】
ステップS101では、監視部は、監視する相手方の産業制御システムの相互通信部(図3に示す産業制御システム240a,240bでは260a,260bが対応し、産業制御システム240cでは254cが対応し、産業制御システム240dでは260dが対応する。)から当該産業制御システムの相互通信部へ流れるトラフィック・データを拾い上げる。
【0056】
ステップS102では、監視部は、所与の異常を疑うべき条件に照らして、監視する相手方の産業制御システムからのトラフィック・データの妥当性を検証する。ここでは、上述したような一般的なセキュリティ検査や、相手方から送られてくるセンサデータやコントロール値が許容される範囲内であるか否かの検査が行われる。ステップS103では、監視部は、異常を疑うべき条件が満たされたか否かを判定し、満たされた場合(YES)には、ステップS104へ処理を進める。
【0057】
ステップS104では、監視部は、相手方の産業制御システムの異常を疑い、サンドボックス管理部210に対して異常通知を送信する。ステップS105では、監視部は、周辺トポロジデータを参照して、相手方の産業制御システムを監視対象システムとする他の周辺システムの異常通知状況を確認し、未だ異常通知が行われていない他の産業制御システムがあれば、その産業制御システムに対して異常通知を送信し、ステップS106で本処理を終了する。なお、各セキュリティ・ゲートウェイ242が周辺トポロジデータを保持していない実施形態においては、監視部は、ステップS105で、異常通知をブロードキャストしてもよいし、ステップS105を設けずにステップS104で異常通知をサンドボックス管理部210に対してだけ行ってもよい。一方、ステップS103で、異常を疑うべき条件が満たされないと判定された場合(NO)には、ステップS106へ直接処理を進め、本処理を終了する。
【0058】
図9は、本発明の実施形態によるサンドボックス管理部が実行する異常検知処理を示すフローチャートである。図9に示す処理は、いずれかの産業制御システムに設けられた監視部から異常通知がなされたことに応答して、ステップS200から開始する。ステップS201では、サンドボックス管理部210は、上記いずれかの産業制御システムの監視部から異常通知を受信し、ステップS202で、異常通知に付された産業制御システムIDから異常が疑われた産業制御システムを識別する。
【0059】
ステップS203では、サンドボックス管理部210は、異常が疑われた産業制御システムについて、上記産業制御システムからの異常報告を記録して、全体トポロジデータ214を更新し、識別された産業制御システムについて集計し、レピュテーションの評価を行う。ここでは、異常が疑われた産業制御システムについて、行われた異常通知回数を計数する。また、レピュテーションの評価基準として、周辺システム数に対する異常通知数の割合に対する基準や、監視するすべての産業制御システムから異常通知が行われた場合に異常と認定するというような基準が設定される場合は、当該産業制御システムを監視している周辺システム数についても計数する。
【0060】
ステップS204では、サンドボックス管理部210は、異常が疑われた産業制御システムについての周辺システムによるレピュテーションを評価結果から、基準に照らし異常であると認定すべき条件が成立するか否かを判定する。ステップS204で、異常であると認定された場合(YES)には、ステップS205へ処理が進められる。ステップS205では、サンドボックス管理部210は、異常であると認定された産業制御システムを備えている仮想マシンを稼働させるハイパーバイザ230に対し、命令を発行し、サンドボックスを活動化させる。
【0061】
ステップS206では、さらに、上記ハイパーバイザに対し命令を発行して、異常であると認定された産業制御システムを検査用ネットワーク236へ接続する。検査用ネットワーク236は、詳細な検査および診断を実施できる診断モジュールが接続されるネットワークであって、異常が認定された産業制御システムが参加することができる、通常のネットワークと隔離されたネットワークである。図10は、異常が認定された産業制御システムを稼働させる仮想マシン232bの仮想ネットワーク・アダプタ244bの論理的接続を、図2に示した通常の仮想ネットワーク234から検査用ネットワーク236へ切り替え、さらに仮想センサ246bおよび仮想アクチュエータ248bへの接続をブロックしている様子を示す。なお、図10は、サンドボックス管理部210が上記診断モジュールを備える場合を例示するが、診断モジュールは、個別のモジュールとして他のコンピュータ・システム上に実装されてもよい。
【0062】
ステップS207では、検査ネットワーク236を介して、例えば管理サーバ110が備える診断モジュールを用いて、異常であると認定された産業制御システムの詳細な検査および診断を実施する。ステップS208では、詳細な検査および診断の結果、異常が見つかったか否かを判定する。ステップS208で、異常が見つかったと判定された場合(YES)には、ステップS209へ処理を進める。ステップS209では、サンドボックス管理部210は、予め設定された対策アクションを実施し、ステップS211で、本処理を終了させる。
【0063】
ステップS209で実施する対策アクションとしては、アラート通知、異常が疑われた産業制御システムのサンドボックス活動状態での稼働の継続、上記異常が疑われた産業制御システムのさらに詳細な検査、異常が疑われた制御システムのスナップショットまたはバックアップを利用した初期状態またはスナップショット作成時の状態からの再開を行うことができる。上記サンドボックス活動状態での産業制御システムの稼働の継続は、マルウェアの出所を調査することを目的として有用である。また、その際には、好適には、異常であると認定された産業制御システムを稼働させるハイパーバイザ230に対し命令を発行し、異常であると認定された仮想マシン232の時間の進み方をあえて遅らせることもできる。このような仮想マシン232の時間の遅延は、例えば特開2007−34672号公報(特許文献7)に開示される技術を利用することで実現することができる。これにより、異常が認定された産業制御システムで万が一異常が発生していても、不具合の進展および外部への悪影響を最小限にとどめながら、産業制御システムの振る舞いを観察することができる。
【0064】
一方、ステップS208で、異常なしと判定された場合(NO)には、ステップS210へ処理が進められる。ステップS210では、異常が実際に見つからなかったため、サンドボックス管理部210は、異常であると認定された仮想マシンを稼働させるハイパーバイザ230に対し命令を発行し、サンドボックスを非活動化し、通常状態へ復旧させ、ステップS211で本処理を終了させる。一方、ステップS204で、基準に照らし異常であると認定すべき条件が成立しないと判定された場合(NO)にも、ステップS211で本処理を終了させる。
【0065】
上述した実施形態によれば、産業制御システム240間の相互通信を緩やかに監視することによってシステム内で異常が疑われる産業制御システムを効率的に検知することが可能となり、ひいては、異常検知のための産業制御システム間の監視負荷を低減することができる。さらに、サンドボックス(つまり保護領域)は、通常状態では、内部で稼働する産業制御システムと外界とのトラフィックについて何ら制限を行わず、異常が確認された段階で隔離を行うため、産業制御システムは、サンドボックスが非活動状態においては、通常と何ら変わりのない環境で動作することになる。
【0066】
以上説明したように、本発明の実施形態によれば、制御システム間の相互通信を利用して緩やかに監視することにより、システム内で異常が疑われる制御システムを効率的に検知し、異常が確認された制御システムを隔離することができる異常検知システム、異常検知装置、異常検知方法、プログラムおよび記録媒体を提供することができる。
【0067】
本発明の実施形態によるサンドボックス管理部210を備える管理サーバ110は、コンピュータ実行可能なプログラムを、コンピュータ装置にロードして各機能部を実現することにより、異常検知装置として提供される。このようなプログラムとしては、例えば、FORTRAN、COBOL、PL/I、C、C++、Java(登録商標)、Java(登録商標)Beans、Java(登録商標)Applet、Java(登録商標)Script、Perl、Rubyなどのレガシー・プログラミング言語やオブジェクト指向プログラミング言語などで記述された、コンピュータ実行可能なプログラムにより実現でき、装置可読な記録媒体に格納して頒布することができる。
【0068】
これまで本発明を図面に示した実施形態および実施例をもって説明してきたが、本発明は図面に示した実施形態に限定されるものではなく、他の実施形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【符号の説明】
【0069】
100…産業システム、102…ネットワーク、104…IDS、110…管理サーバ、120…物理マシン、122,126…センサ、124,128…アクチュエータ、200…機能ブロック、210…サンドボックス管理部、212…異常通知受信部、214…全体トポロジデータ、216…異常判定部、218…サンドボックス活動制御部、230…ハイパーバイザ、232…仮想マシン、234…仮想ネットワーク、236…検査用ネットワーク、240…産業制御システム、242…セキュリティ・ゲートウェイ、244…仮想ネットワーク・アダプタ、246…仮想センサ、248…仮想アクチュエータ、250,262…監視部、252,264…周辺トポロジデータ、254,260…相互通信部、300…グループ
【技術分野】
【0001】
本発明は、情報セキュリティ技術に関し、より詳細には、制御システムにおいて発生する異常を効率的に検知し、異常が認められた制御システムを隔離するための異常検知システム、異常検知装置、異常検知方法、プログラムおよび記録媒体に関する。
【背景技術】
【0002】
現代社会は、電力、ガス、水道、鉄道、金融、プラント、パイプラインなど種々のインフラストラクチャの上に成り立っている。近年、スマートなオフィス、スマートなビルディング、スマートな都市、スマートなエネルギー利用の実現に向けて、上記社会的に重要なインフラストラクチャにおいて、その産業制御システム(Industrial Control System)のネットワークを介した相互接続や情報処理システムとの連携が進められている。
【0003】
一方、産業制御システムは、その機能が停止すれば、社会経済に大きな影響を及ぼすおそれがあるため、旧来、外部から隔離されたクローズド・システムでの稼働を前提として設計されてきた。それ故、産業制御システムにおけるセキュリティ対策は、情報処理システムにおけるものと比較して、必ずしも万全なものとはいえず、インターネット等のネットワークに接続されたオープン環境においては、ウィルス、ワーム、トロイの木馬、その他の悪意のあるコード、ハッキング、不正侵入、内部者による攻撃、異常動作および情報漏洩などの脅威の影響を受けやすいという問題があった。
【0004】
しかし、上記重要インフラストラクチャは、万が一攻撃を受けた場合、その影響は大規模かつ広範囲になる。産業制御システムは、プラントやパイプラインのバルブなどのアクチュエータを制御しているため、その誤作動は、作業の中断を招くだけでなく、ときにはボイラーの過剰圧力の発生、不適当な送電による都市規模の停電などの人的被害、ダムの異常放流などによる環境破壊をもたらす。したがって、上述したような脅威から産業制御システムを保護するべく高度なセキュリティを実現することが望ましい。また、万が一上述のような脅威が疑われる異常が発生した場合は、その異常を迅速に検知して、産業デバイスや他の産業制御システムを保護することが望ましい。
【0005】
ところで、上記ウィルス、不正アクセス等に関しては、情報処理システムにおいて種々のセキュリティ対策が知られていることから、情報処理システムで適用されているセキュリティ対策を導入することもある程度有用であると考えられる。情報処理システムにおけるセキュリティ技術としては、例えば、特開2004−302538号公報(特許文献1)は、防御したいネットワーク内(DMZ)の全ての端末が別の端末によって監視される相互監視形態をとることを特徴とする、A−IDS(Autonomous Intrusion Detection System:自律的侵入検知システム)と呼ばれる技術について言及している。
【0006】
特開2006−33140号公報(特許文献2)は、不正なアクセスを発生させる発生源が検知された場合に、そのような発生源の拡散を迅速に抑制することを目的として、セグメントごとに不正パケット発信端末の数を計数し、セグメントを接続するインターフェースを探索して、不正パケット発信端末が属するセグメント内で不正パケット発信端末の数が予め設定した所定数の範囲にない場合に、不正パケット発信端末の属するセグメントが接続されるインターフェースを遮断することを特徴とする、ネットワーク管理装置を開示する。特開2005−250802号公報(特許文献3)は、受信したアクセスデータを解析し、異常データの特徴を示す特徴量データを算出して、特徴量データを特徴量蓄積データに挿入し、特徴量蓄積データから正常アクセスとみなされる値域と異常アクセスとみなされる値域を区分する統計モデルを構成し、特徴量データが統計モデルの異常アクセスとみなされる値域に属するか否かを判定することを特徴とする不正アクセス検出装置を開示する。特開2007−96735号公報(特許文献4)は、外部ネットワークおよびLANと、情報処理装置との間に介在し、情報処理装置を不正な侵入から保護する学習型のネットワークセキュリティ装置を開示する。
【0007】
また、プログラムを保護された領域で動作させることによってシステムが不正に操作されるのを防ぐサンドボックスと呼ばれるセキュリティモデルも知られている。例えば、特表2004−518193号公報(特許文献5)は、疑わしいデータのためのデスクトップ隔離領域またはサンドボックスを有するコンピュータ・システムを開示する。特表2008−500653号公報(特許文献6)は、疑わしいファイルの実行およびアクセスのうち少なくとも一方をサンドボックス仮想マシン内で行うことで、処理システムのセキュリティ向上を達成する方法を開示する。
【0008】
しかしながら、産業制御システムは、情報処理システムとは異なる特質があり、情報処理システムで行われているセキュリティ技術を適用するだけでは充分とは言えず、上述のような脅威が疑われる異常を、効率的に検知して対策を講じることができない場合があった。また、産業制御システムは、デバイス制御の実時間性も求められるため、高負荷な監視や診断を行うことも適当ではなかった。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特開2004−302538号公報
【特許文献2】特開2006−33140号公報
【特許文献3】特開2005−250802号公報
【特許文献4】特開2007−96735号公報
【特許文献5】特表2004−518193号公報
【特許文献6】特表2008−500653号公報
【特許文献7】特開2007−34672号公報
【発明の概要】
【発明が解決しようとする課題】
【0010】
本発明は、上記従来技術の制御システムにおける問題点を鑑みてなされたものであり、本発明は、制御システム間の相互通信を緩やかに監視することにより、システム内で異常が疑われる制御システムを効率的に検知し、異常が確認された制御システムを隔離することができる異常検知システム、異常検知装置、異常検知方法、プログラムおよび記録媒体を提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明は、上記従来技術の課題を解決するために、以下の特徴を有する異常検知システムおよび該異常検知システムに含まれる異常検知装置を提供する。本発明の異常検知システムは、それぞれネットワークに接続され個別の保護領域内で稼働する複数の制御システムを備える。本異常検知システム内では、制御システム毎に、当該制御システムと監視する相手方の制御システムとの間で交換されるデータを検査し、上記相手方の制御システムに異常が疑われる場合に異常通知を発信する監視部が設けられている。異常検知システムに含まれる異常検知装置は、保護領域を管理する管理部を備える。管理部は、上記複数の制御システム各々の監視部から発信される異常通知を集計して、異常が疑われた制御システムのレピュテーションを評価し、評価結果から基準に照らして異常であると判定された場合に、異常が疑われた制御システムを稼働させている保護領域に対し、少なくとも該保護領域内部からのアウトバウンドのトラフィックを制限させる制御を行う。
【0012】
また本発明では、上記管理部は、異常が疑われた制御システムを稼働させている保護領域に対し、さらに、通常のネットワークから切り離し、診断モジュールが接続される検査用ネットワークに接続させることができる。さらに本発明では、上記管理部は、診断モジュールによる診断の結果、異常が確認されなかった場合に、異常が疑われた制御システムを稼働させている保護領域に対し、上記アウトバウンドのトラフィックの制限を解除させると共に、検査用ネットワークから切り離してネットワークへの接続を復旧させることができる。
【0013】
上記構成によれば、制御システム間の相互通信を緩やかに監視することによってシステム内で異常が疑われる制御システムを効率的に検知することが可能となり、ひいては、異常検知を行うための制御システム間の監視負荷を低減することができる。
【図面の簡単な説明】
【0014】
【図1】本発明の実施形態による産業システムの概略構成を示す図。
【図2】本発明の実施形態による産業システムにおけるソフトウェアおよびハードウェア構成を示す図。
【図3】本発明の実施形態による異常検知機構に関する機能ブロック図。
【図4】本発明の実施形態による異常検知機構における異常検知処理の流れを説明する図。
【図5】本発明の実施形態による異常検知処理の流れを、産業制御システムの相互監視トポロジーに関連して説明する図。
【図6】相互監視トポロジーを例示する図。
【図7】本発明の実施形態による産業システムにおいて保持されるトポロジデータのデータ構造を例示する図。
【図8】本発明の実施形態による監視部が実行する異常通知処理を示すフローチャート。
【図9】本発明の実施形態によるサンドボックス管理部が実行する異常検知処理を示すフローチャート。
【図10】仮想マシンの仮想ネットワーク・アダプタの論理的接続を検査用ネットワーク236へ切り替える処理を説明する図。
【発明を実施するための形態】
【0015】
以下、本発明について実施形態をもって説明するが、本発明は、後述する実施形態に限定されるものではない。以下に説明する実施形態では、異常検知システムおよび異常検知装置の一例として、産業システムおよび管理サーバを用いて説明する。
【0016】
図1は、本発明の実施形態による産業システムの概略構成を示す図である。図1に示す産業システム100は、ネットワーク102に接続される、管理サーバ110と、1以上の物理マシン120a〜120eとを含んで構成される。産業システム100は、特に限定されるものではないが、農業、金融、化学、商業施設、ダム、防衛産業基盤、緊急サービス、エネルギー、政府施設、情報技術、原子炉、物流、公共衛生、通信、輸送、水道、重要製造業などにおけるシステムとして構成される。
【0017】
物理マシン120は、その上で1以上の産業制御システムを稼働させている。物理マシン120上に実装される産業制御システムは、特定用途に応じた機能を備えるものであり、一般的には、フィールド機器と通信し、システム監視およびプロセス制御を行う監視制御サーバである。産業制御システムとしては、特に限定されるものではないが、地理的に分散した制御対象を遠隔集中監視し、制御データの収集を行うSCADA(Supervisory Control And Data Acquisition)、分散制御システム(DCS:Distributed Control System)などにおける監視制御サーバが例示される。
【0018】
物理マシン120は、コントロール・ネットワーク、フィールド・ネットワーク、センサ・バスを介して産業デバイス、例えばフィールド機器に接続される。上記フィールド機器としては、センサ122、アクチュエータ124その他種々の産業機器を挙げることができる。上記センサ122としては、特定用途にもより特に限定されるものではないが、温度センサ、湿度センサ、圧力センサ、空調センサ、流量計、水位計、照度計、電力計、電力使用量カウンタ、人感知センサなどの種々の計測器を挙げることができる。上記アクチュエータ124としては、特定用途にもより特に限定されるものではないが、バルブ開閉器、火力調整器、コンプレッサ、ポンプ、その他モータや能動的に機能する装置を挙げることができる。
【0019】
ネットワーク102は、特に限定されるものではないが、例えば、TCP/IPおよびイーサネット(登録商標)によるLAN(Local Area Network)を含むことができる。また、ネットワーク102は、専用線を介して、またはVPN(Virtual Private Network)を用いて公衆回線を介して、異なるロケーションのLANが結合されて構成された広域ネットワークとして構成されていてもよい。さらに、ネットワーク102上には、適宜、専用のネットワーク型IDS(Intrusion Detection System)104などを設けることもできる。IDS104が設けられる場合は、後述するように、異常検知の精度をさらに向上させることができる。
【0020】
本発明の実施形態による産業制御システムは、それぞれ個別のサンドボックス内において物理マシン120上で稼働する。サンドボックスとは、他のプロセス等から隔離され、内部から外界を操作することが制限された、プログラムを動作させるための保護領域をいう。本発明の実施形態によるサンドボックスでは、その内部で動作する産業制御システムは、通常状態では、特に制限なく外界のセンサ122やアクチュエータ124等にアクセスできるが、一旦サンドボックスが活動化されると、アクセス制限がかかり外界から隔離される。上記管理サーバ110は、物理マシン120のサンドボックスを管理する機能を備えており、異常が認められる産業システムを発見すると、その産業制御システムが稼働するサンドボックスを活動化し、異常が認められる産業制御システムをシステム全体から一旦切り離す。
【0021】
本発明の実施形態では、上記サンドボックスおよびその管理機構を実現するために、システム仮想化技術を適用することができる。図2は、本発明の実施形態による産業システムのソフトウェアおよびハードウェア構成を示す図である。物理マシン120は、概ねパーソナル・コンピュータ、ワークステーション、ラックマウント型サーバ、ブレード型サーバ、メインフレームなどの汎用コンピュータ装置として構成され、より具体的には、シングルコア・プロセッサまたはマルチコア・プロセッサなどのCPU、キャッシュ・メモリ、RAM、ネットワーク・アダプタ、ストレージ・デバイスなどのハードウェア・リソースを備える。
【0022】
物理マシン120は、Xen(登録商標)、VMWare(登録商標)、Hyper−V(登録商標)、Virtual PCなどのベアメタル型またはホスト型の仮想化ソフトウェアのハイパーバイザ(仮想機械モニタとも呼ばれることがある。)230を備え、このハイパーバイザ230上で、Windows(登録商標)、UNIX(登録商標)、LINUX(登録商標)などの種々の汎用OSや、産業用OSをゲストOSとした1以上の仮想マシン232a,232b(図2では、2つの仮想マシンが例示されている。)を稼働させる。
【0023】
仮想マシン232は、本発明の実施形態による保護領域、すなわちサンドボックスを提供し、その上で産業制御システム240を動作させる。仮想マシン232上では、物理マシン120に接続される実ネットワーク・アダプタ(図示せず。なお、本明細書においては、仮想化されて仮想マシンにアサインされた仮想的なハードウェアと区別するため、物理的なハードウェアには「実」の文言を付して参照する。)、実センサ122、実アクチュエータ124などの物理的なハードウェアは、仮想ネットワーク・アダプタ(なお、仮想化されて各仮想機械にアサインされたハードウェアについては、物理的なハードウェアと区別するため「仮想」の文言を付して参照する。)244、仮想センサ246および仮想アクチュエータ248として仮想化され、仮想マシン232にアサインされる。
【0024】
管理サーバ110は、物理マシン120上のサンドボックスを管理する機能を提供するサンドボックス管理部210を備える。管理サーバ110は、概ね汎用コンピュータ装置として構成され、CPU、キャッシュ・メモリ、RAM、ネットワーク・アダプタ、ストレージ・デバイスなどのハードウェア・リソースを備え、Windows(登録商標)、UNIX(登録商標)、LINUX(登録商標)などの適切なOSの制御の下、上記サンドボックス管理部210を実現する。なお、説明する実施形態では、管理サーバ110は、物理マシン120とは別個の物理システムとして実装されるものとして説明するが、他の実施形態では、物理マシン120上で稼働する仮想マシンとして、上記サンドボックス管理機能を実装してもよい。
【0025】
サンドボックス管理部210は、物理マシン120上のハイパーバイザ230に対し命令を発行し、仮想マシン232にアサインされた仮想センサ246および仮想アクチュエータ248のアタッチやデタッチを制御し、仮想センサ246と実センサ122との間の論理的な接続、仮想アクチュエータ248と実アクチュエータ124との間の論理的な接続を制御する。サンドボックス管理部210は、サンドボックスを活動化する場合、対応する仮想マシン232が稼働する物理マシン120上のハイパーバイザ230に対し命令を発行し、該仮想マシン232の仮想センサ246と実センサ122との論理的な接続、仮想アクチュエータ248と実アクチュエータ124との論理的な接続を遮断させる。一方、サンドボックスを非活動化する場合、サンドボックス管理部210は、ハイパーバイザ230に対し命令を発行し、仮想センサ246と実センサ122との論理的な接続、および仮想アクチュエータ248と実アクチュエータ124との論理的な接続を復旧させる。
【0026】
仮想マシン232は、仮想ネットワーク・アダプタ244を介して、複数の仮想マシン232およびサンドボックス管理部210が参加する論理的なネットワークである仮想ネットワーク234に接続され、仮想マシン232上の産業制御システム240は、この仮想ネットワーク234を介して相互に通信することができる。本実施形態では、産業制御システム240間でのゆるやかな相互監視を実現するべく、産業制御システム240と仮想ネットワーク・アダプタ244との間にセキュリティ・ゲートウェイ242を設けて、産業制御システム240間のトラフィックを監視させる。
【0027】
セキュリティ・ゲートウェイ242は、備えられる産業制御システム(例えば240a)と、相手方の産業制御システム(同様に240b)との間で交換されるトラフィック・データを検証し、相手方の産業制御システム(同様に240b)が正常に動作しているかを確認する。セキュリティ・ゲートウェイ(同様に242a)は、相手方の産業制御システム(240b)に異常が疑われる場合、その旨をサンドボックス管理部210や他の産業制御システム(図示せず。)に通知する。他の産業制御システムは、異常が疑われる旨の通知を受けると、その異常が疑われた産業制御システム(同様に240b)に関し、上記と同様な検査を自身でも適宜行うことができる。
【0028】
サンドボックス管理部210は、産業制御システム240間の相互監視のトポロジーを把握しており、セキュリティ・ゲートウェイ242から報告される異常通知を集計し、異常が疑われた産業制御システムの周辺の産業制御システムによるレピュテーション(reputation;評判、信頼性、風評)を評価する。サンドボックス管理部210は、評価結果から所与の基準に照らして異常であると判定された場合、上述したような手法で、異常が疑われた制御システムを稼働させるサンドボックスを活動化する。本発明の実施形態では、このような周辺の産業制御システムによるレピュテーションに基づいて異常を検知する異常検知機構を採用する。
【0029】
以下、図3〜図7を参照しながら、本発明の実施形態による産業システムにおいて実現される異常検知機構について、より詳細に説明する。図3は、本発明の実施形態による異常検知機構に関する機能ブロック図である。図3には、サンドボックス管理部210およびサンドボックス(仮想マシン)232の詳細な機能ブロック200が示されている。なお、図3は、産業制御システムに適用する種々の態様を例示する。
【0030】
産業制御システム240aおよび240bは、相互接続される既存の産業制御システムに適用した場合を例示する。産業制御システム240aおよび240bは、仮想ネットワーク234を介して、管理のためのコントロールやデータを交換している。例えば、電力流通システムでは、隣接する発電管理システム間で発電量、消費電力量などを相互に交換し、余剰電力を融通し合っている。このとき、発電量や消費電力量に関するデータや、余剰電力の融通依頼のためのコントロールが相互に交換される。相互接続する産業制御システム240aおよび240bは、それぞれ、上記コントロールやデータ交換を行うための相互通信部260aおよび260bを備えており、一方、その外部に設けられるセキュリティ・ゲートウェイ242aおよび242bは、上記相互通信部260a,260b間で交換されるトラフィックを監視し、交換されるデータやコントロールの妥当性を検証する監視部250aおよび250bを備える。なお、相互通信部260a,260bは、既存の産業制御システム240a,240bのうち、相互にコントロールやデータを交換する機能を抽象化した機能部を表す。
【0031】
監視部250a,250bが行う検査は、特に限定されるものではないが、相手方の産業制御システム240から同じユーザ識別名でのログイン要求が反復して失敗した場合に異常を疑うというような一般的なセキュリティ検査や、上記電力流通システムであれば、自己の産業制御システム240に過負荷を生じさせるような電力の融通依頼が行われた場合に異常と疑ったり、想定外の発電量や消費電力量が通知された場合に異常を疑ったりするというような、産業制御システム固有の検査を挙げることができる。
【0032】
監視部250aおよび250bは、既存の産業制御システム240aおよび240b間で通常行われるトラフィックを監視し、その情報の検査の結果、予め設定された異常を疑うべき条件が満たされた場合に、相手方の産業制御システム240の異常を疑い、異常通知を発信する。異常通知は、少なくともサンドボックス管理部210に送信され、必要に応じて、異常が疑われた産業制御システム以外の周辺産業制御システムのセキュリティ・ゲートウェイに対しても送信される。なお、異常通知は、異常が疑われる産業制御システム240を特定する情報(産業制御システムIDなど)を含む。また他の実施形態では、疑われる異常の内容を表す値、例えば疑わしい程度を示す値や異常の種類を示す値を付してもよく、上記予め設定された異常を疑うべき条件は、これらの値を決定する条件を含んでいてもよい。なお、上記検査で使用する異常を疑うべき条件は、管理者により個別に設定されてもよく、サンドボックス管理部210において集中管理し、サンドボックス管理部210からセキュリティ・ゲートウェイ242に配布される形で設定されてもよい。
【0033】
もう1つの態様を示す産業制御システム240cは、相互接続を考慮せずに設計されている既存の産業制御システムに適用した場合を例示する。産業制御システム240c自体は、外部とコントロールやデータの交換をしておらず、他の産業制御システムとの間にトラフィックを発生させていない。そこで、本実施形態では、産業制御システム240c外部に設けられたセキュリティ・ゲートウェイ242cが相互通信部254cを備え、相互通信部254cが他の産業制御システムの限定的な検査を行うためのトラフィックを発生させる。監視部250cは、上記監視部250a,250bと同様に、相互通信部254cと他の産業制御システムの相互通信部との間で交換されるトラフィックを監視し、交換されるデータの妥当性を検証する。
【0034】
セキュリティ・ゲートウェイ242cが備える相互通信部254cは、特に限定されるものではないが、自己の産業制御システム240cによる仮想センサ246や仮想アクチュエータ248などへの入出力を監視し、センサデータやコントロール値を拾い上げて相手方に送信することで、トラフィックを発生させることができる。監視部250cによる検査も、特に限定されるものではないが、上述したような一般的なセキュリティ検査や、相手方から送られてくるセンサデータやコントロール値が許容される範囲外の値をとった場合(例えば、発電量が負の値をとった場合)に異常を疑ったりするというような検査を行うことができる。その他、相互接続を考慮せずに設計されている場合は、外部からのログインや電力の融通依頼は想定されていないため、このような想定されていない外部からの通信を異常として検出する検査を行うこともできる。
【0035】
上述した産業制御システム240a〜240cは、いずれも、既存の産業制御システム240に対し、産業制御システム240と仮想ネットワーク・アダプタ244との間にセキュリティ・ゲートウェイ242を介在させることで、異常検知機構を実装する態様を示すものである。これに対して、残りもう1つの態様を示す産業制御システム240dは、上述したセキュリティ・ゲートウェイ242の機能を取り込んで新規設計された産業制御システムを例示する。産業制御システム240dは、検査のためのトラフィックを発生させる相互通信部260dと、トラフィックを監視する監視部262dとを備え、外部モジュールとしてのセキュリティ・ゲートウェイを必要としない。相互通信部260dおよび監視部262dは、それぞれ、上記相互通信部254cおよび監視部250cと同様の機能を備える。
【0036】
上記相互通信を行う産業制御システム240a,240bの態様では、通常行われるトラフィックを監視することで異常を判定している。このため、相手方の異常を監視するためにトラフィックを別途発生させて相手方のリソースを大量に消費させるというような負荷を増大させない。また、上記相互通信を考慮しない産業制御システム240cの態様、新規設計された産業制御システム240dの態様についても、相互通信部254c,260dは、任意のタイミングで、自己のセンサデータやコントロール値を拾い上げて相手方に送信し、また、これを受信するだけであり、特段の負荷を増大させるものではない。上記いずれの態様においても、相手方の産業制御システムの異常が確証できるに足る詳細な検査を行うというものではなく、産業制御システム240内で発生する情報を拾い上げて、相手方の異常が疑われるという程度の検査が行われるのみであり、密に相互監視を行う場合に比べても、異常検知のために発生する負荷は極めて小さいといえる。
【0037】
サンドボックス管理部210は、異常通知受信部212と、全体トポロジデータ214と、異常判定部216と、サンドボックス活動制御部218とを含み構成される。異常通知受信部212は、複数の産業制御システム240a〜240d各々の監視部250a〜250c,262dから発信される異常通知を受信して、それを全体トポロジデータ214に記録する。全体トポロジデータ214は、産業制御システム間の相互監視の関係と、いずれの産業制御システムによっていずれの産業システムの異常を疑う異常通知が発せされたかを記録する。例えば、産業制御システム240aが産業制御システム240bの異常を疑い報告した場合、異常通知受信部212は、異常が疑われた産業制御システム240bについて、産業制御システム240aによる異常通知を記録する。
【0038】
異常判定部216は、全体トポロジデータ214を読み出し、複数の産業制御システム240各々の監視部250,262から発信される異常通知を集計して、異常が疑われた制御システムについてレピュテーションを評価し、評価結果から基準に照らして異常と認めるか否かを判定する。上記レピュテーションは、異常が疑われた制御システムを監視している2以上の制御システムからの異常通知をまとめて考慮した結果であり、簡便には、異常通知数、監視する制御システム数に対する異常通知数の割合などにより指標することができる。また、疑われる異常の内容を表す値、例えば疑わしい程度を示す値が異常通知に付されている実施形態では、疑わしい程度を示す値に応じて異常通知数の重み付け総和をとってもよい。さらに、疑われる異常の種類を示す値が付される実施形態では、異常の種類毎に異常通知数の総和をとったり、異常の種類に応じて異常通知数の重み付け総和をとったりすることもできる。さらに、好ましくは、図1に示すようにネットワーク102上にIDS104が設置される場合には、IDSから通知される異常通知も考慮することで、より精度の高い評価を行っても良い。
【0039】
また評価結果から異常であるか否かを判定する基準は、例えば、異常通知数、監視する制御システム数に対する異常通知数の割合または異常通知数の重み付け総和に対するしきい値を用いることができる。しきい値は、設定により任意の固定値、または条件に応じて変動する変動値とすることができる。しきい値を動的に変動する例としては、全体の異常通知の数または頻度に応じて基準レベルを変動させたり、特定の時間帯毎に基準レベルを変動させたりすることを挙げることができる。また、上記基準は複数あっても良く、例えば異常の種類毎に異常通知数の総和とる場合には、異常の種類毎にしきい値を設け、異常の種類毎の条件を用いた論理和または論理積として規定してもよい。
【0040】
サンドボックス活動制御部218は、各サンドボックス(仮想マシン)232の活動状態を制御しており、上記レピュテーションの評価基準に照らし異常であると判定された場合、異常が確認された産業制御システム240を稼働させているハイパーバイザ230に対し命令を発行し、サンドボックス232を活動化する。サンドボックス232が活動化すると、少なくともサンドボックス232内部から外界へのアウトバウンドのトラフィックが制限される。アウトバウンドのトラフィックの制限は、内部の産業制御システム240から仮想アクチュエータ248を経由した外界の実アクチュエータ124へのコントロールがある場合、この実アクチュエータ124への接続を遮断することにより行うことができ、より好ましくは、仮想アクチュエータ248から、コントロールに応じて制御されているかのように振る舞うダミーのアクチュエータへ論理的な接続を変更することにより行われる。
【0041】
一方、外界の実センサ122からサンドボックス232内部へ流れるセンサデータのようなインバウンドのトラフィックについては、好ましくは制限を設けず、そのまま産業制御システム240に到達することを許しても良い。例えば、実センサ122から産業制御システム240への片方向のデータフローのみである場合は、実センサ122への接続を維持することができる。実センサ122からのセンサデータを透過させ、実アクチュエータ124からダミー・アクチュエータへと論理的接続を切り替えることによって、仮に産業制御システム240にネットワーク経由で侵入した者があった場合でも、産業制御システムを隔離したことを侵入者に気付かせないようにすることが可能となる。
【0042】
図3には、産業制御システム240毎に設けられる周辺トポロジデータ252,264が示されている。周辺トポロジデータ252a〜252c,264dは、それぞれ、セキュリティ・ゲートウェイ242a〜242cおよび産業制御システム240dが、自己が監視する相手方の産業制御システム240について異常通知が行われた状況を把握するために好適に備えることができるデータであり、その詳細については後述する。
【0043】
図4は、本発明の実施形態による異常検知機構における異常検知処理の流れを説明する図である。図4に示す例では、まず産業制御システム240bのセキュリティ・ゲートウェイは、定期的または不定期に産業制御システム240cとの間を流れるトラフィックを検査し、異常が疑われるか否かを判定する(1)。産業制御システム240bのセキュリティ・ゲートウェイは、産業制御システム240cの異常が疑われると、サンドボックス管理部210と、産業制御システム240cを同じく監視する産業制御システム240aのセキュリティ・ゲートウェイとに異常通知を行う(2)。
【0044】
この時点では、サンドボックス管理部210は、産業制御システム240cを監視する2つの産業制御システム240aおよび240bのうち、産業制御システム240bからの異常通知のみを受けており、ここでは「監視する産業制御システムの過半数から異常通知が行われた場合に異常と認定する」という基準を満たしていないと判定し、産業制御システム240cのサンドボックス232cの活動化は行われない。特定の実施形態では、このとき、産業制御システム240bからの異常通知を受けた産業制御システム240aのセキュリティ・ゲートウェイは、警戒レベルを上げるべく、上記検査におけるしきい値を変化させてもよい。
【0045】
続いて、産業制御システム240aのセキュリティ・ゲートウェイは、定期的、不定期に、または上記異常通知を受けたタイミングで、産業制御システム240cとの間を流れるトラフィックを検査し、産業制御システム240cに異常が疑われるか否かを判定する(3)。産業制御システム240aのセキュリティ・ゲートウェイは、産業制御システム240cの異常が疑われると、サンドボックス管理部210に異常通知を行う(4)。このとき、セキュリティ・ゲートウェイが周辺トポロジデータを保持し、産業制御システム240bから異常通知を受けたことを記憶しておくことができる実施形態では、産業制御システム240cを監視し既に異常通知を発信している産業制御システム240bのセキュリティ・ゲートウェイへの異常通知を省略することができる。また、周辺トポロジデータが保持されず、産業制御システム240bのセキュリティ・ゲートウェイへの異常通知が省略されない実施形態であっても、産業制御システム240bのセキュリティ・ゲートウェイは、自身で既に異常通知を行っているため、産業制御システム240aからの異常通知に応答して改めて検査を実施する必要はない。
【0046】
この時点で、サンドボックス管理部210は、産業制御システム240cを監視する過半数以上から異常通知が行われているため、「監視する産業制御システムの過半数から異常通知が行われた場合に異常と認定する」という基準が満たされると判定し、産業制御システム240cが異常であると認定し、該産業制御システム240cが稼働する物理マシン上のハイパーバイザに命令を発行し、サンドボックス232cの活動化を行う(5)。これにより、異常が確認された産業制御システム240cは、少なくとも外界の実アクチュエータへのアウトバウンド・トラフィックが遮断され、外界から隔離されることになる。さらに、必要があれば、サンドボックス管理部210は、異常が確認された産業制御システム240cを検査用ネットワークに接続し、ウイルスチェックなどのさらなる詳細な検査および診断を行うことができる(6)。
【0047】
図5は、本発明の実施形態による異常検知機構における異常検知処理の流れを、産業制御システムの相互監視トポロジーに関連して説明する図である。図5(A)は、産業制御システム240の相互監視トポロジーを図示し、産業制御システムAが4つの産業制御システムB〜Eにより監視されている様子を示す。産業制御システムAを監視する4つの産業制御システムB〜Eを、便宜上、産業制御システムAの「周辺システム」と参照し、周辺システムB〜Eにより監視される産業制御システムAを「注目システム」と参照する。周辺システムB〜Eは、それぞれ、注目システムAについての異常通知を相互に交換し合う。図5(A)では、上記周辺システムB〜Eのうち3つの産業制御システムB,D,Eが、それぞれ、注目システムAについての異常通知を発信している。
【0048】
このとき、周辺システム数に対する異常通知数が過半数(割合が50%を超える)となることが異常と認定する基準として設定されていた場合、図5(B)に示すように、サンドボックス管理部210は、産業制御システムAの異常通知が過半数であることを検知して、産業制御システムAのサンドボックス232を活動化させる。上述したように本発明の実施形態では、サンドボックス管理部210は、産業制御システム240からの異常通知を集計し、産業制御システム240の相互監視トポロジーに応じて、異常が疑われた産業制御システムのレピュテーションを評価することによって、対処すべき異常を認定する。
【0049】
産業制御システム240の相互監視トポロジーは、特に限定されるものではないが、図6(A)に示すように、例えば相互通信をし合う発電管理システムA〜Dをグループ化(グループ300a)して相互監視させる一方で、同様に相互通信をし合うユーティリティ管理システムE〜Gをグループ化(グループ300b)して相互監視させるというように、相互通信をし合う機能的な集まり毎に個別にグループを定義することができる。さらに他の例では、図6(B)に示すように、産業制御システムの任意の配列を定義し、配列上の隣接システム間で相互監視を行うよう各セキュリティ・ゲートウェイ242の相互通信部254に設定して、相互監視トポロジーを定義することもできる。
【0050】
図7は、本発明の実施形態による産業システムにおいて保持されるトポロジデータのデータ構造を例示する。図7(A)は、サンドボックス管理部210により管理される全体トポロジデータ214を示す。全体トポロジデータ214は、注目システム毎に1以上の周辺システムとの関係を管理し、各周辺システムによる注目システムについての異常通知の状況(異常通知の有無、疑わしい程度や異常の種類を示す値が付される場合にはその値を含む。)を記録する。図7(A)に示す全体トポロジデータ214は、図6(B)に示したトポロジーに対応するものであり、この例では、産業制御システムAを注目システムとして、産業制御システムB〜Eの4つの周辺システムによる異常通知の状況が記録され、産業制御システムBを注目システムとして、産業制御システムA,F〜Hの4つの周辺システムによる異常通知の状況が記録されている。図7(A)はまた、周辺システムB,D,Eから産業制御システムAについて異常通知が行われたことを記録している。
【0051】
なお、説明する実施形態のように産業システム100内に1つのサンドボックス管理部210が設置される場合は、産業システム100内の各産業制御システム240を注目システムとして管理する全体トポロジデータ214を採用することができる。しかしながら、トポロジーの管理方法は、これに特に限定されるものではない。他の実施形態では、産業システム100内の管理する産業制御システム240の管理範囲を分掌し合う複数のサンドボックス管理部210を設けることができ、この実施形態では、各サンドボックス管理部に、割り振られた管理範囲毎にトポロジデータを設ける態様とすることができる。
【0052】
図7(B)は、各産業制御システム240毎に管理される周辺トポロジデータ252,264のうちの、産業制御システムBが管理するデータを例示する。周辺トポロジデータは、各産業制御システム毎に設けられ、周辺トポロジデータを具備する産業制御システムが監視している産業制御システム(以下、監視対象システムと参照します。)毎に、対応する他の1以上の周辺システムによる監視対象システムについての異常通知の状況を記録する。
【0053】
図7(B)に示す周辺トポロジデータは、図6(B)に示したトポロジーに対応し、産業制御システムBの周辺トポロジデータを示す。図7(B)に示す周辺トポロジデータは、産業制御システムA,F,G,Hをそれぞれ監視対象システムとして、産業制御システムB自身の異常検知の有無と、産業制御システムB以外の他の周辺システムによる監視対象システムについての異常通知の状況を記録する。例えば、監視対象システムAについては、産業制御システムC〜Eの3つの周辺システム(図7(B)ではA周辺システムとして示す。監視対象システムF,G,Hについても同様。)による異常通知の状況が記録されている。図7(B)に示す周辺トポロジデータでは、産業制御システムBが、産業制御システムAについて、自身で異常を検知し、さらに産業制御システムD,Eの2つの周辺システムから異常通知を受け取ったことが記録されている。図7(B)に示す周辺トポロジデータを参照することにより、産業制御システムBのセキュリティ・ゲートウェイは、自身が産業制御システムAの異常を検知した際に、産業制御システムD,Eの2つの周辺システムへの通知が省略できると判断できる。
【0054】
以下、図8および図9を参照しながら、本発明の実施形態による産業システムにおいて実行される異常検知処理について、より詳細に説明する。図8は、本発明の実施形態による産業制御システム毎に設けられる監視部が実行する異常通知処理を示すフローチャートである。図8に示す処理は、定期的に、不定期にまたは他の産業制御システムから異常通知を受信したことに応答して、ステップS100から開始する。なお、図8に示す処理は、監視する相手方の産業制御システム毎に実行される。
【0055】
ステップS101では、監視部は、監視する相手方の産業制御システムの相互通信部(図3に示す産業制御システム240a,240bでは260a,260bが対応し、産業制御システム240cでは254cが対応し、産業制御システム240dでは260dが対応する。)から当該産業制御システムの相互通信部へ流れるトラフィック・データを拾い上げる。
【0056】
ステップS102では、監視部は、所与の異常を疑うべき条件に照らして、監視する相手方の産業制御システムからのトラフィック・データの妥当性を検証する。ここでは、上述したような一般的なセキュリティ検査や、相手方から送られてくるセンサデータやコントロール値が許容される範囲内であるか否かの検査が行われる。ステップS103では、監視部は、異常を疑うべき条件が満たされたか否かを判定し、満たされた場合(YES)には、ステップS104へ処理を進める。
【0057】
ステップS104では、監視部は、相手方の産業制御システムの異常を疑い、サンドボックス管理部210に対して異常通知を送信する。ステップS105では、監視部は、周辺トポロジデータを参照して、相手方の産業制御システムを監視対象システムとする他の周辺システムの異常通知状況を確認し、未だ異常通知が行われていない他の産業制御システムがあれば、その産業制御システムに対して異常通知を送信し、ステップS106で本処理を終了する。なお、各セキュリティ・ゲートウェイ242が周辺トポロジデータを保持していない実施形態においては、監視部は、ステップS105で、異常通知をブロードキャストしてもよいし、ステップS105を設けずにステップS104で異常通知をサンドボックス管理部210に対してだけ行ってもよい。一方、ステップS103で、異常を疑うべき条件が満たされないと判定された場合(NO)には、ステップS106へ直接処理を進め、本処理を終了する。
【0058】
図9は、本発明の実施形態によるサンドボックス管理部が実行する異常検知処理を示すフローチャートである。図9に示す処理は、いずれかの産業制御システムに設けられた監視部から異常通知がなされたことに応答して、ステップS200から開始する。ステップS201では、サンドボックス管理部210は、上記いずれかの産業制御システムの監視部から異常通知を受信し、ステップS202で、異常通知に付された産業制御システムIDから異常が疑われた産業制御システムを識別する。
【0059】
ステップS203では、サンドボックス管理部210は、異常が疑われた産業制御システムについて、上記産業制御システムからの異常報告を記録して、全体トポロジデータ214を更新し、識別された産業制御システムについて集計し、レピュテーションの評価を行う。ここでは、異常が疑われた産業制御システムについて、行われた異常通知回数を計数する。また、レピュテーションの評価基準として、周辺システム数に対する異常通知数の割合に対する基準や、監視するすべての産業制御システムから異常通知が行われた場合に異常と認定するというような基準が設定される場合は、当該産業制御システムを監視している周辺システム数についても計数する。
【0060】
ステップS204では、サンドボックス管理部210は、異常が疑われた産業制御システムについての周辺システムによるレピュテーションを評価結果から、基準に照らし異常であると認定すべき条件が成立するか否かを判定する。ステップS204で、異常であると認定された場合(YES)には、ステップS205へ処理が進められる。ステップS205では、サンドボックス管理部210は、異常であると認定された産業制御システムを備えている仮想マシンを稼働させるハイパーバイザ230に対し、命令を発行し、サンドボックスを活動化させる。
【0061】
ステップS206では、さらに、上記ハイパーバイザに対し命令を発行して、異常であると認定された産業制御システムを検査用ネットワーク236へ接続する。検査用ネットワーク236は、詳細な検査および診断を実施できる診断モジュールが接続されるネットワークであって、異常が認定された産業制御システムが参加することができる、通常のネットワークと隔離されたネットワークである。図10は、異常が認定された産業制御システムを稼働させる仮想マシン232bの仮想ネットワーク・アダプタ244bの論理的接続を、図2に示した通常の仮想ネットワーク234から検査用ネットワーク236へ切り替え、さらに仮想センサ246bおよび仮想アクチュエータ248bへの接続をブロックしている様子を示す。なお、図10は、サンドボックス管理部210が上記診断モジュールを備える場合を例示するが、診断モジュールは、個別のモジュールとして他のコンピュータ・システム上に実装されてもよい。
【0062】
ステップS207では、検査ネットワーク236を介して、例えば管理サーバ110が備える診断モジュールを用いて、異常であると認定された産業制御システムの詳細な検査および診断を実施する。ステップS208では、詳細な検査および診断の結果、異常が見つかったか否かを判定する。ステップS208で、異常が見つかったと判定された場合(YES)には、ステップS209へ処理を進める。ステップS209では、サンドボックス管理部210は、予め設定された対策アクションを実施し、ステップS211で、本処理を終了させる。
【0063】
ステップS209で実施する対策アクションとしては、アラート通知、異常が疑われた産業制御システムのサンドボックス活動状態での稼働の継続、上記異常が疑われた産業制御システムのさらに詳細な検査、異常が疑われた制御システムのスナップショットまたはバックアップを利用した初期状態またはスナップショット作成時の状態からの再開を行うことができる。上記サンドボックス活動状態での産業制御システムの稼働の継続は、マルウェアの出所を調査することを目的として有用である。また、その際には、好適には、異常であると認定された産業制御システムを稼働させるハイパーバイザ230に対し命令を発行し、異常であると認定された仮想マシン232の時間の進み方をあえて遅らせることもできる。このような仮想マシン232の時間の遅延は、例えば特開2007−34672号公報(特許文献7)に開示される技術を利用することで実現することができる。これにより、異常が認定された産業制御システムで万が一異常が発生していても、不具合の進展および外部への悪影響を最小限にとどめながら、産業制御システムの振る舞いを観察することができる。
【0064】
一方、ステップS208で、異常なしと判定された場合(NO)には、ステップS210へ処理が進められる。ステップS210では、異常が実際に見つからなかったため、サンドボックス管理部210は、異常であると認定された仮想マシンを稼働させるハイパーバイザ230に対し命令を発行し、サンドボックスを非活動化し、通常状態へ復旧させ、ステップS211で本処理を終了させる。一方、ステップS204で、基準に照らし異常であると認定すべき条件が成立しないと判定された場合(NO)にも、ステップS211で本処理を終了させる。
【0065】
上述した実施形態によれば、産業制御システム240間の相互通信を緩やかに監視することによってシステム内で異常が疑われる産業制御システムを効率的に検知することが可能となり、ひいては、異常検知のための産業制御システム間の監視負荷を低減することができる。さらに、サンドボックス(つまり保護領域)は、通常状態では、内部で稼働する産業制御システムと外界とのトラフィックについて何ら制限を行わず、異常が確認された段階で隔離を行うため、産業制御システムは、サンドボックスが非活動状態においては、通常と何ら変わりのない環境で動作することになる。
【0066】
以上説明したように、本発明の実施形態によれば、制御システム間の相互通信を利用して緩やかに監視することにより、システム内で異常が疑われる制御システムを効率的に検知し、異常が確認された制御システムを隔離することができる異常検知システム、異常検知装置、異常検知方法、プログラムおよび記録媒体を提供することができる。
【0067】
本発明の実施形態によるサンドボックス管理部210を備える管理サーバ110は、コンピュータ実行可能なプログラムを、コンピュータ装置にロードして各機能部を実現することにより、異常検知装置として提供される。このようなプログラムとしては、例えば、FORTRAN、COBOL、PL/I、C、C++、Java(登録商標)、Java(登録商標)Beans、Java(登録商標)Applet、Java(登録商標)Script、Perl、Rubyなどのレガシー・プログラミング言語やオブジェクト指向プログラミング言語などで記述された、コンピュータ実行可能なプログラムにより実現でき、装置可読な記録媒体に格納して頒布することができる。
【0068】
これまで本発明を図面に示した実施形態および実施例をもって説明してきたが、本発明は図面に示した実施形態に限定されるものではなく、他の実施形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【符号の説明】
【0069】
100…産業システム、102…ネットワーク、104…IDS、110…管理サーバ、120…物理マシン、122,126…センサ、124,128…アクチュエータ、200…機能ブロック、210…サンドボックス管理部、212…異常通知受信部、214…全体トポロジデータ、216…異常判定部、218…サンドボックス活動制御部、230…ハイパーバイザ、232…仮想マシン、234…仮想ネットワーク、236…検査用ネットワーク、240…産業制御システム、242…セキュリティ・ゲートウェイ、244…仮想ネットワーク・アダプタ、246…仮想センサ、248…仮想アクチュエータ、250,262…監視部、252,264…周辺トポロジデータ、254,260…相互通信部、300…グループ
【特許請求の範囲】
【請求項1】
ネットワーク内の異常を検知する異常検知システムであって、
前記ネットワークに接続され、それぞれ個別の保護領域内で稼働する複数の制御システムと、
制御システム毎に設けられ、当該制御システムと、監視する相手方の制御システムとの間で交換されるデータを検査し、前記相手方の制御システムに異常が疑われる場合に異常通知を発信する監視部と、
前記複数の制御システム各々の監視部から発信される前記異常通知を集計して、異常が疑われた制御システムのレピュテーションを評価し、評価結果から基準に照らして異常であると判定された場合に、前記異常が疑われた制御システムを稼働させている保護領域に対し、少なくとも該保護領域内部からのアウトバウンドのトラフィックを制限させる管理部と
を含む、異常検知システム。
【請求項2】
前記管理部は、前記異常が疑われた制御システムを稼働させている前記保護領域に対し、さらに、前記ネットワークから切り離し、診断モジュールが接続される検査用ネットワークに接続させる、請求項1に記載の異常検知システム。
【請求項3】
前記管理部は、前記診断モジュールによる診断の結果、異常が確認されなかった場合に、前記異常が疑われた制御システムを稼働させている前記保護領域に対し、前記アウトバウンドのトラフィックの制限を解除させると共に、前記検査用ネットワークから切り離し、前記ネットワークへの接続を復旧させる、請求項2に記載の異常検知システム。
【請求項4】
前記管理部は、前記診断モジュールによる診断の結果、異常が確認された場合に、アラート通知、前記異常が疑われた制御システムの制限された状態での稼働の継続、前記異常が疑われた制御システムの詳細な検査、および前記異常が疑われた制御システムの過去の状態からの再開からなる群から選択された1種以上の対策アクションを実施する、請求項3に記載の異常検知システム。
【請求項5】
前記管理部は、前記異常が疑われた制御システムを稼働させている前記保護領域に対し、前記保護領域内で稼働する制御システムに、実制御デバイスに代替してダミー制御デバイスを接続させる、請求項1に記載の異常検知システム。
【請求項6】
前記管理部は、前記異常が疑われた制御システムを稼働させている前記保護領域に対し、実センサから前記保護領域内部へのインバウンドのトラフィックを透過させる、請求項1に記載の異常検知システム。
【請求項7】
前記監視部は、前記管理部と、前記異常が疑われた制御システム以外の該異常が疑われた制御システムを監視する制御システムに設けられる前記監視部とに対し、前記異常通知を発信する、請求項1に記載の異常検知システム。
【請求項8】
前記保護領域は、稼働させる制御システムをアプリケーションとして備えるシステム仮想マシンとして実装され、前記監視部は、前記他の制御システムに関する限定的な検査を行うためのトラフィックを発生させる相互通信部とともに、前記稼働させる制御システム外部のセキュリティ・ゲートウェイとして、前記稼働させる制御システムと同一の仮想マシン上に実装される、請求項1に記載の異常検知システム。
【請求項9】
複数の制御システムがそれぞれ個別の保護領域内で稼働しているネットワーク内の異常を検知する異常検知装置であって、
前記複数の制御システムの各々から、各々が監視する相手方の制御システムに関する異常通知を受信する受信部と、
異常が疑われた制御システム毎に前記異常通知を集計して、監視する2以上の制御システムによる前記異常が疑われた制御システムのレピュテーションを評価し、基準に照らして前記異常が疑われた制御システムが異常であるかを判定する判定部と、
異常であると判定された場合に、前記異常が疑われた制御システムを稼働させている保護領域に対し、該保護領域内部のトラフィックを制限させる制御部と
を含む、異常検知装置。
【請求項10】
前記制御部は、前記異常が疑われた制御システムを稼働させている前記保護領域に対し、さらに、前記ネットワークから切り離し、診断モジュールが接続される検査用ネットワークに接続させる、請求項9に記載の異常検知装置。
【請求項11】
前記制御部は、前記診断モジュールによる診断の結果、異常が確認されなかった場合に、前記異常が疑われた制御システムを稼働させている前記保護領域に対し、前記トラフィックの制限を解除させると共に、前記検査用ネットワークから切り離し、前記ネットワークへの接続を復旧させる、請求項10に記載の異常検知装置。
【請求項12】
複数の制御システムがそれぞれ個別の保護領域内で稼働しているネットワーク内の異常を検知する異常検知方法であって、
コンピュータ・システムが、前記複数の制御システムいずれかの制御システムから、該制御システムが監視する相手方の制御システムに関する異常通知を受信するステップと、
コンピュータ・システムが、異常が疑われた制御システム毎に前記異常通知を集計して、監視する2以上の制御システムによる前記異常が疑われた制御システムのレピュテーションを評価し、基準に照らして前記異常が疑われた制御システムが異常であるかを判定するステップと、
コンピュータ・システムが、異常であると判定された場合に、前記異常が疑われた制御システムを稼働させている保護領域に対し、少なくとも該保護領域内部からのアウトバウンド・トラフィックを制限させるステップと
を含む、異常検知方法。
【請求項13】
コンピュータ・システムが、前記異常が疑われた制御システムを稼働させている前記保護領域に対し、さらに、前記ネットワークから切り離し、診断モジュールが接続する検査用ネットワークに接続させるステップをさらに含む、請求項12に記載の異常検知方法。
【請求項14】
コンピュータ・システムが、前記診断モジュールによる診断の結果、異常が確認されなかった場合に、前記異常が疑われた制御システムを稼働させている前記保護領域に対し、前記アウトバウンドのトラフィックの制限を解除させると共に、前記検査用ネットワークから切り離し、前記ネットワークへの接続を復旧させるステップをさらに含む、請求項13に記載の異常検知方法。
【請求項15】
コンピュータ・システム上に、複数の制御システムがそれぞれ個別の保護領域内で稼働しているネットワーク内の異常を検知する異常検知装置を実現するためのコンピュータ実行可能なプログラムであって、前記コンピュータ・システムを、
前記複数の制御システムの各々から、各々が監視する相手方の制御システムに関する異常通知を受信する受信部、
異常が疑われた制御システム毎に前記異常通知を集計して、監視する2以上の制御システムによる前記異常が疑われた制御システムのレピュテーションを評価し、基準に照らして前記異常が疑われた制御システムが異常であるかを判定する判定部、および
異常であると判定された場合に、前記異常が疑われた制御システムを稼働させている保護領域に対し、少なくとも該保護領域内部からのアウトバウンド・トラフィックを制限させる制御部
として機能させるためのプログラム。
【請求項16】
請求項15に記載のコンピュータ実行可能なプログラムをコンピュータ読取可能に格納する記録媒体。
【請求項1】
ネットワーク内の異常を検知する異常検知システムであって、
前記ネットワークに接続され、それぞれ個別の保護領域内で稼働する複数の制御システムと、
制御システム毎に設けられ、当該制御システムと、監視する相手方の制御システムとの間で交換されるデータを検査し、前記相手方の制御システムに異常が疑われる場合に異常通知を発信する監視部と、
前記複数の制御システム各々の監視部から発信される前記異常通知を集計して、異常が疑われた制御システムのレピュテーションを評価し、評価結果から基準に照らして異常であると判定された場合に、前記異常が疑われた制御システムを稼働させている保護領域に対し、少なくとも該保護領域内部からのアウトバウンドのトラフィックを制限させる管理部と
を含む、異常検知システム。
【請求項2】
前記管理部は、前記異常が疑われた制御システムを稼働させている前記保護領域に対し、さらに、前記ネットワークから切り離し、診断モジュールが接続される検査用ネットワークに接続させる、請求項1に記載の異常検知システム。
【請求項3】
前記管理部は、前記診断モジュールによる診断の結果、異常が確認されなかった場合に、前記異常が疑われた制御システムを稼働させている前記保護領域に対し、前記アウトバウンドのトラフィックの制限を解除させると共に、前記検査用ネットワークから切り離し、前記ネットワークへの接続を復旧させる、請求項2に記載の異常検知システム。
【請求項4】
前記管理部は、前記診断モジュールによる診断の結果、異常が確認された場合に、アラート通知、前記異常が疑われた制御システムの制限された状態での稼働の継続、前記異常が疑われた制御システムの詳細な検査、および前記異常が疑われた制御システムの過去の状態からの再開からなる群から選択された1種以上の対策アクションを実施する、請求項3に記載の異常検知システム。
【請求項5】
前記管理部は、前記異常が疑われた制御システムを稼働させている前記保護領域に対し、前記保護領域内で稼働する制御システムに、実制御デバイスに代替してダミー制御デバイスを接続させる、請求項1に記載の異常検知システム。
【請求項6】
前記管理部は、前記異常が疑われた制御システムを稼働させている前記保護領域に対し、実センサから前記保護領域内部へのインバウンドのトラフィックを透過させる、請求項1に記載の異常検知システム。
【請求項7】
前記監視部は、前記管理部と、前記異常が疑われた制御システム以外の該異常が疑われた制御システムを監視する制御システムに設けられる前記監視部とに対し、前記異常通知を発信する、請求項1に記載の異常検知システム。
【請求項8】
前記保護領域は、稼働させる制御システムをアプリケーションとして備えるシステム仮想マシンとして実装され、前記監視部は、前記他の制御システムに関する限定的な検査を行うためのトラフィックを発生させる相互通信部とともに、前記稼働させる制御システム外部のセキュリティ・ゲートウェイとして、前記稼働させる制御システムと同一の仮想マシン上に実装される、請求項1に記載の異常検知システム。
【請求項9】
複数の制御システムがそれぞれ個別の保護領域内で稼働しているネットワーク内の異常を検知する異常検知装置であって、
前記複数の制御システムの各々から、各々が監視する相手方の制御システムに関する異常通知を受信する受信部と、
異常が疑われた制御システム毎に前記異常通知を集計して、監視する2以上の制御システムによる前記異常が疑われた制御システムのレピュテーションを評価し、基準に照らして前記異常が疑われた制御システムが異常であるかを判定する判定部と、
異常であると判定された場合に、前記異常が疑われた制御システムを稼働させている保護領域に対し、該保護領域内部のトラフィックを制限させる制御部と
を含む、異常検知装置。
【請求項10】
前記制御部は、前記異常が疑われた制御システムを稼働させている前記保護領域に対し、さらに、前記ネットワークから切り離し、診断モジュールが接続される検査用ネットワークに接続させる、請求項9に記載の異常検知装置。
【請求項11】
前記制御部は、前記診断モジュールによる診断の結果、異常が確認されなかった場合に、前記異常が疑われた制御システムを稼働させている前記保護領域に対し、前記トラフィックの制限を解除させると共に、前記検査用ネットワークから切り離し、前記ネットワークへの接続を復旧させる、請求項10に記載の異常検知装置。
【請求項12】
複数の制御システムがそれぞれ個別の保護領域内で稼働しているネットワーク内の異常を検知する異常検知方法であって、
コンピュータ・システムが、前記複数の制御システムいずれかの制御システムから、該制御システムが監視する相手方の制御システムに関する異常通知を受信するステップと、
コンピュータ・システムが、異常が疑われた制御システム毎に前記異常通知を集計して、監視する2以上の制御システムによる前記異常が疑われた制御システムのレピュテーションを評価し、基準に照らして前記異常が疑われた制御システムが異常であるかを判定するステップと、
コンピュータ・システムが、異常であると判定された場合に、前記異常が疑われた制御システムを稼働させている保護領域に対し、少なくとも該保護領域内部からのアウトバウンド・トラフィックを制限させるステップと
を含む、異常検知方法。
【請求項13】
コンピュータ・システムが、前記異常が疑われた制御システムを稼働させている前記保護領域に対し、さらに、前記ネットワークから切り離し、診断モジュールが接続する検査用ネットワークに接続させるステップをさらに含む、請求項12に記載の異常検知方法。
【請求項14】
コンピュータ・システムが、前記診断モジュールによる診断の結果、異常が確認されなかった場合に、前記異常が疑われた制御システムを稼働させている前記保護領域に対し、前記アウトバウンドのトラフィックの制限を解除させると共に、前記検査用ネットワークから切り離し、前記ネットワークへの接続を復旧させるステップをさらに含む、請求項13に記載の異常検知方法。
【請求項15】
コンピュータ・システム上に、複数の制御システムがそれぞれ個別の保護領域内で稼働しているネットワーク内の異常を検知する異常検知装置を実現するためのコンピュータ実行可能なプログラムであって、前記コンピュータ・システムを、
前記複数の制御システムの各々から、各々が監視する相手方の制御システムに関する異常通知を受信する受信部、
異常が疑われた制御システム毎に前記異常通知を集計して、監視する2以上の制御システムによる前記異常が疑われた制御システムのレピュテーションを評価し、基準に照らして前記異常が疑われた制御システムが異常であるかを判定する判定部、および
異常であると判定された場合に、前記異常が疑われた制御システムを稼働させている保護領域に対し、少なくとも該保護領域内部からのアウトバウンド・トラフィックを制限させる制御部
として機能させるためのプログラム。
【請求項16】
請求項15に記載のコンピュータ実行可能なプログラムをコンピュータ読取可能に格納する記録媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【公開番号】特開2012−168755(P2012−168755A)
【公開日】平成24年9月6日(2012.9.6)
【国際特許分類】
【出願番号】特願2011−29418(P2011−29418)
【出願日】平成23年2月15日(2011.2.15)
【出願人】(390009531)インターナショナル・ビジネス・マシーンズ・コーポレーション (4,084)
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MASCHINES CORPORATION
【復代理人】
【識別番号】100110607
【弁理士】
【氏名又は名称】間山 進也
【Fターム(参考)】
【公開日】平成24年9月6日(2012.9.6)
【国際特許分類】
【出願日】平成23年2月15日(2011.2.15)
【出願人】(390009531)インターナショナル・ビジネス・マシーンズ・コーポレーション (4,084)
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MASCHINES CORPORATION
【復代理人】
【識別番号】100110607
【弁理士】
【氏名又は名称】間山 進也
【Fターム(参考)】
[ Back to top ]