JP2022155174A - 診断装置、診断方法および診断プログラム - Google Patents

診断装置、診断方法および診断プログラム Download PDF

Info

Publication number
JP2022155174A
JP2022155174A JP2021058542A JP2021058542A JP2022155174A JP 2022155174 A JP2022155174 A JP 2022155174A JP 2021058542 A JP2021058542 A JP 2021058542A JP 2021058542 A JP2021058542 A JP 2021058542A JP 2022155174 A JP2022155174 A JP 2022155174A
Authority
JP
Japan
Prior art keywords
diagnostic
information
control device
diagnosis
difference
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.)
Pending
Application number
JP2021058542A
Other languages
English (en)
Inventor
毅 加藤
Takeshi Kato
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric Corp
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 Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP2021058542A priority Critical patent/JP2022155174A/ja
Priority to US17/687,216 priority patent/US20220318374A1/en
Priority to CN202210223720.9A priority patent/CN115145238A/zh
Publication of JP2022155174A publication Critical patent/JP2022155174A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/54Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0218Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
    • G05B23/0221Preprocessing measurements, e.g. data collection rate adjustment; Standardization of measurements; Time series or signal analysis, e.g. frequency analysis or wavelets; Trustworthiness of measurements; Indexes therefor; Measurements using easily measured parameters to estimate parameters difficult to measure; Virtual sensor creation; De-noising; Sensor fusion; Unconventional preprocessing inherently present in specific fault detection methods like PCA-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3086Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves the use of self describing data formats, i.e. metadata, markup languages, human readable formats
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Automation & Control Theory (AREA)
  • Mathematical Physics (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

【課題】セキュリティ診断において、診断システムの導入により生じる制御システムの操業に与える影響を削減することができる。【解決手段】セキュリティ診断装置10は、プラント内に設置されたプラントを稼働させる各機器の制御および監視を実行する制御装置20ごとに、セキュリティ診断の対象となる制御装置20の各構成に関する構成情報を記憶する記憶部14と、制御装置20によって収集された各構成の診断用情報を、制御装置20から受信する受信部151aと、受信された診断用情報と、構成情報とに基づき、制御装置20のセキュリティ診断を実行する診断部152aと、を備える。【選択図】図3

Description

本発明は、診断装置、診断方法および診断プログラムに関する。
プラントにおける制御システムでは、稼働中の制御装置に対してセキュリティ診断を実行する必要がある。ここで、制御装置は、例えば汎用OS(Operating System)で構築された仮想化コンピュータおよび物理コンピュータの機器を指し、セキュリティ診断とは、例えば制御装置の状態を機器固有情報やシステム構成、プロセス、ネットワーク、アカウント、ファイル情報を検出して予期せぬ変化が発生していない事を観察する行為を指す。また、セキュリティ診断システムは、上記セキュリティ診断情報の可視化を行い、変化が発生した際の通知とその判断結果を登録する仕組みを持つ。
特開2016-184194号公開
しかしながら、セキュリティ診断において、診断システムの導入により生じる制御システムの操業に与える影響を削減することは難しい。なぜならば、上記技術では、セキュリティ検査のために使用される検出用ドライバと検査用アプリが介在することによる制御ソフトウェア動作の遅延、検査用アプリの誤検知によって発生する正常動作の阻害が起こるためである。
上述した課題を解決し、目的を達成するために、本発明に係る診断装置は、プラント内に設置された前記プラントを稼働させる各機器の制御および監視を実行する制御装置ごとに、セキュリティ診断の対象となる前記制御装置の各構成に関する構成情報を記憶する記憶部と、前記制御装置によって収集された前記各構成の診断用情報を、前記制御装置から受信する受信部と、受信された前記診断用情報と、前記構成情報とに基づき、前記制御装置のセキュリティ診断を実行する診断部と、を備えることを特徴とする。
また、本発明に係る診断方法は、コンピュータが、プラント内に設置された前記プラントを稼働させる各機器の制御および監視を実行する制御装置ごとに、セキュリティ診断の対象となる前記制御装置の各構成に関する構成情報を記憶部に保持し、前記制御装置によって収集された前記各構成の診断用情報を、前記制御装置から受信し、受信した前記診断用情報と、前記構成情報とに基づき、前記制御装置のセキュリティ診断を実行する、処理を実行することを特徴とする。
また、本発明に係る診断プログラムは、コンピュータに、プラント内に設置された前記プラントを稼働させる各機器の制御および監視を実行する制御装置によって収集された、前記制御装置の各構成の診断用情報を、前記制御装置から受信し、受信した前記診断用情報と、前記制御装置ごとの、セキュリティ診断の対象となる前記制御装置の前記各構成に関する構成情報とに基づき、前記制御装置のセキュリティ診断を実行する、処理を実行させることを特徴とする。
本発明では、セキュリティ診断において、診断システムの導入により生じる制御システムの操業に与える影響を削減することができる。
実施形態に係るセキュリティ診断システムの構成例を示す図である。 従来のセキュリティ検査の概要を示す図である。 実施形態に係る各種装置の構成例を示すブロック図である。 実施形態に係るセキュリティ診断処理全体の流れの一例を示すフローチャートである。 実施形態に係るDB作成処理の流れの一例を示すシーケンス図である。 実施形態に係る定期診断処理の流れの一例を示すシーケンス図である。 実施形態に係る定常診断処理の流れの一例を示すシーケンス図である。 実施形態に係る臨時診断処理の流れの一例を示すシーケンス図である。 実施形態に係るフィードバック処理の流れの一例を示すシーケンス図である。 ハードウェア構成例を説明する図である。
以下に、本発明に係るセキュリティ診断装置(適宜、診断装置)、セキュリティ診断方法(適宜、診断方法)およびセキュリティ診断プログラム(適宜、診断プログラム)の発明を実施するための形態(適宜、実施形態)を図面に基づいて詳細に説明する。なお、本発明は、以下に説明する実施形態により限定されるものではない。
〔実施形態〕
以下に、本実施形態に係るセキュリティ診断システムの構成、従来のセキュリティ検査の概要、セキュリティ診断装置等の構成、各処理の流れを順に説明し、最後に本実施形態の効果を説明する。
[セキュリティ診断システムの構成]
図1を用いて、本実施形態に係るセキュリティ診断システム(適宜、本システム)100の構成を詳細に説明する。図1は、実施形態に係るセキュリティ診断システムの構成例を示す図である。以下に、本システム100全体の構成例を示した上で、各装置の処理を説明する。
(システム全体の構成例)
本システム100は、プラントの稼働、制御に関わる機器や装置のセキュリティの診断に利用されるシステムである。例えば、本システム100は、診断機能を備えたサーバ等の診断装置10、制御システム用コンピュータ群である制御装置20(20A、20B、・・・、20Z)、デスクイメージバックアップサーバ等のバックアップ装置30、診断対象コンピュータ群設置用領域に複製された制御装置40、およびコントローラ、センサ、アクチュエータ等の物理領域50を有する。ここで、診断装置10と、制御装置20と、バックアップ装置30と、クローン制御装置40と、物理領域(Physical area)50とは、図示しない所定の通信網を介して、有線または無線により通信可能に接続される。また、図1に示した診断システム100には、複数台の診断装置10、複数台のバックアップ装置30、複数の物理領域50が含まれてもよい。
本システム100では、構成情報マスタデータベース作成処理(適宜、「DB作成処理」)、診断処理、フィードバック処理を行う。まず、診断装置10は、クローン制御装置40が収集した、診断対象となる制御装置20ごとのセキュリティ診断用情報(適宜、「診断用情報」または「診断情報」)を受信し、受信した情報を構成情報として登録し、構成情報マスタデータベース(適宜、「マスタデータベース」)14を作成する(DB作成処理)。次に、診断装置10は、制御装置20またはクローン制御装置40が収集した診断情報を受信し、受信した診断情報と、マスタデータベース14に登録されている構成情報とを比較して、差分情報を出力することで、セキュリティ診断を行う(診断処理)。そして、診断装置10は、セキュリティ診断結果監視者(適宜、「診断結果監視者」)90等からセキュリティ診断結果に対する判断結果を受け付け、セキュリティ診断のフィードバックを行う(フィードバック処理)。
(診断装置10)
診断装置10は、セキュリティ診断機能を提供するコンピュータであり、制御システム用コンピュータ群と独立したネットワーク上に設置され、制御システムに対して情報送信ができないように制御システム用コンピュータ群のネットワークとはデータダイオードにより制御されている。また、診断装置10は、診断ソフトウェア15、受信サーバ13、情報を蓄積するためのデータベース(DB)14を有する。なお、図1では、診断装置10は、クローン制御装置40の仮想コンピュータを提供するサーバ機器(検査ハイパーバイザ:Validation Hypervisor)外に設置されているが、検査ハイパーバイザ内の仮想コンピュータとして構築も可能である。
診断ソフトウェア15は、セキュリティ診断と診断結果表示、診断結果へのフィードバック等を実行する。また、診断結果を表示するユーザインターフェースを持ち、異常を検知したときに通知する機能を持つ。
受信サーバ13は、診断情報収集アプリ21、診断情報収集アプリ41からの情報を受信する。受信サーバ13は、受信した情報を診断ソフトウェア15に送信する。また、受信サーバ13が受信した情報は、データベース14に格納される。
データベース14は、診断情報収集アプリ21、診断情報収集アプリ41や受信サーバ13によって収集された制御装置20の情報を記憶する。
(制御装置20)
制御装置20は、セキュリティ検査対象のコンピュータ機器である。設置される制御装置20の台数は、制御システムの規模により変動する。図1では、制御装置A20A、制御装置B20Bは、仮想化技術による仮想コンピュータ(制御ハイパーバイザ:Operation Hypervisor)として構築されており、制御装置Z20Zは、物理コンピュータとして構築されている。
以下では、制御装置20として用いられるコンピュータの特徴を説明するが、本実施形態において用いられる制御装置20を限定するものではない。第1に、制御装置20は、一般的なOA(Office Automation)で使われるコンピュータとは異なり、専用のソフトウェアのみが動作し、自由な操作や変更を行うような使い方はしない専用機器である。第2に、制御装置20は、物理領域50に存在するコントローラとの通信を行い、コントローラの先に接続されているセンサやアクチュエータ等の物理現象の変化を監視および操作するため、決められた周期(例えば、1秒以内)で情報を収集して表示および操作が求められる機器である。第3に、制御装置20は、連続稼働が求められ、かつ演算装置や主記憶装置、ハードディスク等のコンピュータリソースへのパフォーマンス要求がOA環境で使われるコンピュータに比べて高い機器である。
(バックアップ装置30)
バックアップ装置30は、制御ハイパーバイザ内の各制御装置と、制御システム用コンピュータ群内の物理コンピュータで構築された制御装置20のディスクイメージバックアップを保管する機器である。バックアップ装置30は、制御装置20で異常が発生した時に復旧時間を短縮する用途で、一定の期間、ルールに従ってバックアップされる。なお、バックアップ装置30は、制御装置20への機能追加や設定値の変更のタイミングや、定期修理や月次等の一定周期でバックアップを行うが、バックアップ処理の実行時期は特に限定されない。
(クローン制御装置40)
クローン制御装置40は、制御ハイパーバイザ内にある仮想コンピュータや物理コンピュータのバックアップイメージから複製されたコンピュータである。ここで、クローン制御装置40は、バックアップ元が仮想コンピュータか物理コンピュータかにより、クローン作成先が異なる。例えば、図1では、仮想コンピュータである制御装置20A、20Bは、検査ハイパーバイザ上にクローン制御装置40-1として複製され、物理コンピュータである制御装置20Zは、物理コンピュータにクローン制御装置40-2として複製されるが、特に限定されない。なお、クローン制御装置40は、制御システム用コンピュータ群内で操業に使用している制御装置20とは異なり、物理領域50への接続の必要はない。また、クローン制御装置40は、制御システム内で稼働中のコンピュータと同じ台数、構成で常時稼働させておく必要はなく、任意のタイミング、期間で起動して利用することができる。
(物理領域50)
物理領域50は、制御システムにおいて、制御装置20と接続されるコントローラと、そのコントローラに接続される物理情報の収集を行うセンサや物理操作を行うアクチュエータ等が設置されている領域であるが、物理領域50に設置されている機器は特に限定されない。
[従来のセキュリティ検査の概要]
ここで、図2を用いて、参考技術として、一般的に行われる従来のセキュリティ検査の概要について説明する。図2は、従来のセキュリティ検査の概要を示す図である。なお、上述した実施形態に係るセキュリティ診断システム100と共通の構成、機能については、説明を省略する。
例えば、従来のセキュリティ検査では、検査統括用コンピュータである管理装置60、制御システム用コンピュータ群である制御装置20(20A、20B、・・・、20Z)、およびコントローラ、センサ、アクチュエータ等の物理領域50を有する。
管理装置60は、セキュリティ検査のために導入する管理用コンピュータであり、システム内の複数の検査対象コンピュータのセキュリティ検査に関連する管理を行う。管理装置60は、検査結果の収集や、検査実行の指示、検査に必要な情報の更新などの機能を有する。なお、管理装置60は、制御装置20と送受信をできる必要があり、同一ネットワーク内に設置されるため、制御装置と同等の運用ポリシーやセキュリティ対策が求められる。
ポリシーα、ポリシーβは、管理装置60内の統括サービスで取り扱うセキュリティ検査に必要な電子ファイルであり、管理装置から管理下の検査対象コンピュータに配布される。なお、ポリシーα、ポリシーβは、制御装置20内の検査用アプリが使用する専用の電子ファイルであり、セキュリティ脅威の変化に追従するために、日々更新される必要がある。
統括サーバは、管理装置60上で、管理装置60の記憶媒体に保存されるセキュリティ検査に関する情報を一覧したり、管理下の検査対象コンピュータにインストールされる通信エージェントと通信したりする機能を有する。
通信エージェントは、制御装置20上で、統括サーバと情報通信を行い、検査用アプリを操作する機能を有する。管理装置60の作業者による統括サーバからの指示を受けて、ポリシーの更新を行ったり、セキュリティ検査を実行したり、検査用アプリの結果を管理装置の統括サーバに送信したりする機能を有する。
検査用アプリは、制御装置20上で、セキュリティ検査を実施する。検査用アプリは、統括サーバから配布されるポリシーを使いOSや汎用アプリケーション、制御用ソフトウェアの動作や振る舞い、人間による操作を監視して、不正な動作やマルウェアの実行、読み込みを検知して、脅威の発生を防止する。また、ハードディスク上に保存されている電子ファイルやメモリ上の検査を行う機能も有し、不審なデータを自発的に発見する機能も有する。
検出用ドライバは、制御装置20上で、セキュリティ検査のために検査用アプリと一緒に導入される。検出用ドライバは、OSのシステムコールを監視して、システムコールを呼び出した汎用アプリケーションや制御用ソフトウェアの動作を一時的に中断させて、検査用アプリで検閲するといった仕組みのために導入する。また、検出用ドライバは、検査用アプリにより問題ないと判断された場合は、中断させたアプリケーションへ処理を戻し、本来の動作を続行させる。
図2で示した従来のコンピュータ機器のセキュリティ検査では、管理装置60上の統括サーバと、制御装置20上の通信エージェント、検査用アプリ、検出用ドライバを組み合わせて実現する。すなわち、上記のセキュリティ検査では、人間によるソフトウェアの操作やサービスプログラムの自動処理等のソフトウェアによる操作(OSのシステムコール)を検出用ドライバが捉えて、検査用アプリを使用して正常か異常かの検査を行い、正常と診断されれば、捉えた動作が許可され、ソフトウェアが本来行いたい操作が実行される。
しかしながら、上記のセキュリティ検査では、検出用ドライバと検査用アプリが介在することによる制御ソフトウェア動作の遅延が起こり、また、検査用アプリの誤検知によって発生する正常動作の阻害が起こる。したがって、セキュリティ診断において、診断システムの導入により生じる制御システムの操業に与える影響を削減することは難しい。
これに対して、上述したように、図1に示した診断装置10は、プラント内に設置されたプラントを稼働させる各機器の制御および監視を実行する制御装置20ごとに、セキュリティ診断の対象となる制御装置20の各構成に関する構成情報を記憶するマスタデータベース14と、制御装置20によって収集された各構成の診断用情報を、制御装置20から受信する受信サーバ13と、受信された診断用情報と、構成情報とに基づき、制御装置20のセキュリティ診断を実行する診断ソフトウェア15と、を備える。
すなわち、診断装置10は、セキュリティ検査システムの導入により生じる制御装置の動作遅延や動作の阻害、停止といった制御システムの操業に与える影響を無くして、セキュリティ脅威に対処できる仕組みと手法を実現することができる。また、既設の制御システムへの導入容易性を高めるために、制御システムとセキュリティ診断システムの独立性を実現することもできる。
[診断装置等の構成]
図3を用いて、本実施形態に係るセキュリティ診断装置10等の構成を詳細に説明する。図3は、実施形態に係る各種装置の構成例を示すブロック図である。以下に、セキュリティ診断装置10の構成、制御装置20(クローン制御装置40)の構成の順に説明する。
(セキュリティ診断装置10の構成)
セキュリティ診断装置10は、入力部11、出力部12、通信部13、記憶部14および制御部15を有する。入力部11は、当該診断装置10への各種情報の入力を司る。入力部11は、例えば、マウスやキーボード等で実現され、当該診断装置10への設定情報等の入力を受け付ける。また、出力部12は、当該診断装置10からの各種情報の出力を司る。出力部12は、例えば、ディスプレイ等で実現され、当該診断装置10に記憶された設定情報等を出力する。
通信部13は、他の装置との間でのデータ通信を司る。例えば、通信部13は、各通信装置との間でデータ通信を行う。また、通信部13は、図示しないオペレータの端末との間でデータ通信を行うことができる。
記憶部14は、制御部15が動作する際に参照する各種情報や、制御部15が動作した際に取得した各種情報を記憶する。記憶部14は、診断用情報記憶部14aを有する。ここで、記憶部14は、例えば、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置等で実現され得る。なお、図3の例では、記憶部14は、診断装置10の内部に設置されているが、診断装置10の外部に設置されてもよいし、複数の記憶部が設置されていてもよい。
診断用情報記憶部14aは、プラント内に設置されたプラントを稼働させる各機器の制御および監視を実行する制御装置20ごとに、セキュリティ診断の対象となる制御装置20の各構成に関する構成情報を記憶する。ここで、診断用情報とは、制御装置20の収集部(診断用情報収集アプリ)21またはクローン制御装置40の収集部(診断用情報収集アプリ)41によって、セキュリティ診断開始後に収集される情報である。一方、構成情報とは、セキュリティ診断のために事前に収集された診断用情報であって、セキュリティ診断の対象となる制御装置20ごとに格納された情報である。
診断用情報は、例えば、機器固有情報、システム構成情報、プロセス情報、ネットワーク情報、アカウント情報、ファイル情報、カスタマイズ情報等であるが、特に限定されない。
機器固有情報は、制御装置を識別するための情報であって、例えば、コンピュータID、ホスト名、ライセンス番号等である。
システム構成情報は、コンピュータ内のハードウェア、ソフトウェアの構成に関する情報であって、例えば、CPU(Central Processing Unit)、メモリ、仮想メモリ、ハードディスク、接続されているネットワーク機器、接続されたことのあるポータブル記憶域デバイス、ドライバ、インストールされたソフトウェア、更新プログラム、セキュリティパッチ等である。
プロセス情報は、コンピュータ内の稼働や停止中のプロセスの情報であって、例えば、稼働中のプロセスの場合は、メモリ消費量やスレッド数、起動アカウント等である。
ネットワーク情報は、例えば、コンピュータ内のネットワークに関する設定情報、外部との通信状況に関する情報等である。
アカウント情報は、例えば、コンピュータ内に存在するユーザーアカウントに関する情報、コンピュータにアクセスしたことのあるアカウント情報等である。
ファイル情報は、例えば、コンピュータの記憶装置に保持されている電子ファイルの情報であって、ファイルおよびフォルダのサイズ、和、ハッシュ値等である。
カスタマイズ情報は、上記で定義されていない情報であって、診断対象に加えたい情報である。
なお、構成情報は、診断用情報と同様のカテゴリおよび内容であるので、説明を省略する。
制御部15は、当該診断装置10全体の制御を司る。制御部15は、DB作成部151として、受信部151aおよび格納部151bを有し、診断制御部152として、診断部152aおよび通知部152bを有し、フィードバック部153として、受付部153aおよび付与部153bを有する。ここで、制御部15は、例えば、CPUやMPU(Micro Processing Unit)等の電子回路やASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現され得る。
受信部151aは、制御装置20によって収集された各構成の診断用情報を、制御装置20から受信する。例えば、受信部151aは、バックアップ装置30によって定期的に取得される制御装置20のディスクイメージを用いて仮想マシンによって生成された仮想制御装置40-1、または制御装置20のディスクイメージを保持する物理装置40-2から、各構成の診断用情報を受信する。また、受信部151aは、定期的に、制御装置20が有する全構成の診断用情報を受信する。また、受信部151aは、制御装置20上で常駐稼働している収集アプリケーションによって、制御装置20が有する全構成の診断用情報のうち、指定された周期で収集された診断用情報を、指定された周期で受信する。また、受信部151aは、制御装置20によって異常が検出された場合には、異常が検出された制御装置20が有する全構成の診断用情報を受信する。
格納部151bは、制御装置20から受信された各構成の診断用情報を、記憶部14に格納する。例えば、格納部151bは、制御装置20から受信された各構成の診断用情報として、機器固有情報、システム構成情報、プロセス情報、ネットワーク情報、アカウント情報、ファイル情報、カスタマイズ情報を、診断用情報記憶部14aに格納する。
診断部152aは、受信された診断用情報と、構成情報とに基づき、制御装置20のセキュリティ診断を実行する。例えば、診断部152aは、受信された診断用情報と、構成情報との差分を抽出し、差分を出力する。また、診断部152aは、受信された診断用情報と、構成情報のうち該当する構成情報との差分を抽出し、差分を出力する。
通知部152bは、セキュリティ診断の診断結果を通知する。例えば、通知部152bは、セキュリティ診断の差分情報を、セキュリティ診断結果監視者90に通知する。なお、通知部152bは、セキュリティ診断の診断結果を記憶部14に格納してもよい。
受付部153aは、セキュリティ診断の診断結果に対する判断結果を受け付ける。例えば、受付部153aは、セキュリティ診断の診断結果に対する判断結果として、差分の許可、差分の不許可、または差分の一時的な許可を受け付ける。なお、受付部153aは、セキュリティ診断の診断結果を記憶部14に格納してもよい。
付与部151bは、受け付けられた判断結果に基づいて、診断結果に所定の情報を付与する。例えば、付与部151bは、差分の許可を受け付けられた場合には、診断結果に差分を許可する情報を付与し、差分の不許可または差分の一時的な許可を受け付けられた場合には、診断結果に固有の情報または重要度を付与する。また、付与部151bは、所定の情報を付与した診断結果を、セキュリティ診断結果監視者90に送信してもよい。なお、付与部151bは、所定の情報を付与した診断結果を記憶部14に格納してもよい。
(制御装置20の構成)
制御装置20は、制御部21として、収集部21aおよび送信部21bを有する。なお、クローン制御装置40の構成は、制御装置20の構成と共通であるので、説明を省略する。
収集部21aは、制御装置20の各構成の診断用情報を収集する。例えば、収集部21aは、定期的に、制御装置20の各構成の診断用情報を収集する。また、収集部21aは、制御装置20の全構成の診断用情報のうち、指定された周期で診断用情報を収集する。また、収集部21aは、異常が検出された制御装置20の全構成の診断用情報を収集する。
送信部21bは、制御装置20の各構成の診断用情報を、診断装置10に送信する。例えば、送信部21bは、定期的に収集された制御装置20の各構成の診断用情報を、診断装置10に送信する。また、送信部21bは、指定された周期で収集された診断用情報を、診断装置10に送信する。また、送信部21bは、異常が検出された制御装置20において収集された診断用情報を、診断装置10に送信する。
[セキュリティ診断処理全体の流れ]
図4を用いて、本実施形態に係るセキュリティ診断処理全体の流れを説明する。図4は、実施形態に係るセキュリティ診断処理全体の流れの一例を示すフローチャートである。本実施形態に係るセキュリティ診断処理では、DB作成処理(ステップS101)、診断処理(ステップS102)、フィードバック処理(ステップS103)の順に実行される。なお、ステップS101~S103の処理は、それぞれ個別の処理として実行してもよいし、異なる順序で実行してもよいし、省略される処理があってもよい。
(DB作成処理)
セキュリティ診断装置10は、DB作成処理を実行する(ステップS101)。DB作成処理では、診断装置10は、プラント内に設置されたプラントを稼働させる各機器の制御および監視を実行する制御装置20ごとに、セキュリティ診断の対象となる制御装置20の各構成に関する構成情報を受信し、記憶部14に格納する。このとき、診断装置10は、制御装置20によって収集された各構成の診断用情報を、制御装置20から受信してもよいし、バックアップ装置30によって定期的に取得される制御装置20のディスクイメージを用いて仮想マシンによって生成された仮想制御装置40-1、または制御装置20のディスクイメージを保持する物理装置40-2から、各構成の診断用情報を受信してもよい。
(DB作成処理に関わる構成)
制御装置20またはクローン制御装置40は、DB作成処理に関わる以下の構成を有する。操作画面は、依頼待受サービスに対して出せるリクエスト一覧を表示するユーザインターフェースを持つアプリケーションであり、リクエストを出した後、依頼待受サービスから終了通知・エラー通知を受け取る。
依頼待受サービスは、クローン制御装置40内で常駐しているサービスプログラムであり、操作画面からのリクエストを受け取って、決められた処理を行う。依頼待受サービスが提供するリクエストは、診断情報収集リクエスト(1.リクエスト元から指定されたカテゴリの情報を収集する 2.操作画面からのリクエストを診断情報収集統括サービスに転送して処理を待ち、結果を操作画面に送る)、診断情報送信リクエスト(1.クローン制御装置40内で収集済みの診断情報を診断装置に送る 2.操作画面からのリクエストを送信管理サービスに転送して処理を待ち、結果を操作画面に送る)、自動診断開始/終了リクエスト(1.診断情報収集と送信を自動で実行するモードに遷移させ、自動で実行するモードを停止させる 2.診断情報収集統括サービスと送信管理サービスの動作モードを変更させる)、サービス構成情報の表示/変更リクエスト(診断情報収集統括サービス、送信管理サービスの設定情報を操作画面に送る、操作画面からはその設定値の変更情報を受け取り、サービスの設定を変更する)等である。
診断情報収集統括サービスは、依頼待受サービスからの指示を受けて、実行中のコンピュータ内の情報収集をコントロールするサービスである。診断情報収集統括サービスは、リクエストごとにスレッドを生成して、診断情報収集機能を実行する。また、診断情報収集統括サービスは、診断情報収集機能開始時、完了時に呼び出し元に応答を返す。なお、現在のコンピュータ内のCPU、メモリ、ディスクアクセスの状態を監視して、設定されている閾値に達している場合は、診断情報収集機能の実行を行わない。
診断情報収集機能は、収集対象の情報を取得する機能である。収集対象ごとに機能が分割されており、診断情報収集統括サービスにより、リクエストに応じた機能が実行される。実行後の診断情報は、コンピュータ内の記憶媒体に電子ファイルとして保存される。
診断情報は、診断情報収集機能によって作成される電子ファイルである。送信用データ作成機能に読み込まれ、送信後に削除される。
送信管理サービスは、依頼待受サービスからの指示を受けて、実行中のコンピュータ内で収集済みの診断情報を送信する処理をコントロールするサービスである。送信管理サービスは、リクエストを受け取った後にリクエストキューイング状態に遷移して、送信用データ作成機能を実行する。送信管理サービスは、1つの送信リクエストが完了してから次のリクエストキューの処理を行う。リクエストを受領時、送信用データ作成完了時、送信完了時に呼び出し元に応答を返す。送信管理サービスは、現在のコンピュータ内のメモリ、ディスクアクセスの状態を監視して、設定されている閾値に達している場合は、診断情報を送信する処理を行わない。なお、送信先の情報は、依頼待受サービスに渡される「サービス構成情報の更新リクエスト」に含まれる情報を元に設定される。
送信用データ作成機能は、送信管理サービスによって実行される機能である。診断情報収集機能が生成した診断情報ファイルを読み込んで、送信機能で送信する送信用データに加工し、加工後に送信機能を実行する。なお、送信用データ作成機能は、送信機能が送信に成功した後に、診断情報ファイルを削除する。
送信機能は、送信用データを指定された送信先に送る機能である。
診断装置10は、DB作成処理に関わる以下の構成を有する。受信サービスは、診断装置10で常駐しているサービスプログラムである。受信サービスは、クローン制御装置40の送信機能から送られてくるデータを受信する。また、受信サービスは、受信したデータは、診断情報管理サービスに転送する。
診断情報管理サービスは、診断装置10で常駐しているサービスプログラムである。診断情報管理サービスは、診断情報に関する読み出し、書き込みのリクエストを受け取り、呼び元に応答を返す。診断情報管理サービスは、書き込みリクエスト時は、受信情報整合性確認機能を使用して、書き込み可否を判断し、データベース管理サービスに書き込みリクエストを出す。診断情報管理サービスは、読み出しリクエスト時は、データベース管理サービスに指定された対象のデータ読み出しのリクエストを出し、読み出しリクエスト元に結果を返す。
受信情報整合性確認機能は、診断情報管理サービスが使用する機能の1つである。受信情報整合性確認機能は、指定されたデータが、診断情報管理サービスで扱えるデータかどうかを判定する。受信情報整合性確認機能は、判定した結果、データ欠損やフォーマットエラー等の状態が見つかった場合は、通知機能を実行してエラーで応答を返し、通知機能を実行する。また、受信情報整合性確認機能は、判定した結果が問題なければ、利用可能の応答を返す。
データベース管理サービスは、診断装置10で常駐しているサービスプログラムである。データベース管理サービスは、診断情報管理サービスから読み出しまたは書き込みのリクエストを受け取る。また、データベース管理サービスは、書き込みリクエスト時は、成功・失敗の結果を通知機能で発報する。
データベースアクセス機能は、データベース管理サービスが使用する機能である。データベースアクセス機能は、データベースにアクセスし、情報の読み書きを担当する。
データベース14は、データベースアクセス機能が使用するデータベースである。
通知機能は、診断装置内の関連するサービス、機能が利用可能な通知機能である。通知機能は、診断装置内のセキュリティ診断に関する通知が必要な操作に対して、その結果を知らせる。
管理画面は、診断装置10のセキュリティ診断に関する全ての情報を扱えるユーザインターフェースであり、診断情報の確認や、診断結果の表示を行う機能を持つ。
(診断処理)
セキュリティ診断装置10は、診断処理を実行する(ステップS102)。診断処理では、診断装置10は、制御装置20によって収集された各構成の診断用情報を、制御装置20から受信し、受信した診断用情報と、構成情報とに基づき、制御装置20のセキュリティ診断を実行する。このとき、診断装置10は、バックアップ装置によって定期的に取得される制御装置20のディスクイメージを用いて仮想マシンによって生成された仮想制御装置40-1、または制御装置20のディスクイメージを保持する物理装置40-2から、各構成の診断用情報を受信してもよい。また、診断装置10は、受信した診断用情報と、構成情報との差分を抽出し、差分を出力してもよい。
診断装置10は、定期診断、定常診断および臨時診断の3種類のセキュリティ診断を実現する。3つの違いは、セキュリティ診断情報の収集対象と収集周期である。定期診断の場合は、診断情報の全てを扱うが、定常診断は制御システム用コンピュータとして稼働している制御装置20を対象とするため、低負荷で実行される。臨時診断は、本来は定期診断で行う診断操作を制御装置20で行うことを指す。
定期診断では、バックアップ装置30が保持する制御装置20のイメージバックアップが更新されたタイミングで、クローン制御装置40を用いて実施する。定期診断では、全てのセキュリティ診断情報を収集して診断装置10に送信する。診断装置10は、受信したセキュリティ診断情報と、構成情報マスタDB14に現在登録されている情報を比較して、差分情報を記憶する。また、管理画面で対象となる制御装置の定期診断情報を確認したときに、上記処理で生成された差分情報を表示する。
定常診断では、各制御装置20上で常駐稼働している診断情報収集アプリ21を用いて実施する。指定された収集周期で診断情報を収集して、逐次診断装置10の受信サーバ13に診断情報を送信する。診断装置10は、受信した診断情報と、構成情報マスタDB14に現在登録されている情報を比較して、差分情報を記録する。また、差分が確認された場合は、通知機能により差分発生が知らされ、診断装置10の管理画面を使った差分の確認を促す。
臨時診断では、制御装置20を使用している作業者が、制御装置20で異常を確認した場合に実施する。定常診断の診断結果からは異常な変化が確認出来ないが作業者から異常の報告があった場合に、制御装置20を診断のために利用できる状態にしたうえで実施する。また、定期診断同様に、全てのセキュリティ診断情報を収集して、診断装置10に送信する。その後の処理フローは定期診断と同様となる。
(診断処理に関わる構成)
制御装置20またはクローン制御装置40は、診断処理に関わる以下の構成を有する。操作画面は、定期・臨時診断では、制御装置またはクローン制御装置40で実行中の依頼待受サービスに診断開始のリクエストを送信した後、セキュリティ診断情報の収集と診断装置10への送信が完了した時点で完了通知またはエラー通知を受け取る。また、操作画面は、定常診断では、依頼待受サービスに診断開始のリクエスト送信後、すぐに受付完了またはエラー通知を受け取る。
診断装置10は、診断処理に関わる以下の構成を有する。診断情報管理サービスは、受信サービスで受け取った情報を構成情報マスタDB作成と同様に、受信情報整合性確認機能で確認する。診断情報管理サービスは、整合性が確認出来た場合は、差分チェック機能を用いて、構成情報マスタDBと受信データの差分比較を開始する。
差分チェック機能は、診断情報管理サービスから呼び出される機能であり、以下の手続きで差分比較を行う。差分チェック機能は、第1に、受信した機器固有情報で、差分比較する対象機器を特定し、第2に、受信した診断情報のカテゴリから、差分比較する対象値を特定し、第3に、上記の処理で特定した情報を使い、データベース管理サービスに過去の診断結果取得のリクエストを送り、第4に、受け取った過去の診断結果と現在の診断情報を比較し、第5に、見つかった差分を抽出して、差分情報としてデータベース管理サービスに登録し、第6に、差分発生を通知機能で通知する。
管理画面は、定常・定期・臨時の各診断で差分が検知された場合は、管理画面に差分検知の発生を表示し、制御装置ごとの状態確認画面で詳細な差分情報を確認できる。なお、セキュリティ診断結果管理者は、管理画面上で差分検知を見つけた後に制御装置ごとの状態確認を行い判断できる。
(フィードバック処理)
セキュリティ診断装置10は、フィードバック処理を実行する(ステップS103)。フィードバック処理では、診断装置10は、セキュリティ診断の診断結果に対する判断結果を受け付け、受け付けた判断結果に基づいて、診断結果に所定の情報を付与する。ここで、診断装置10は、判断結果として、差分の許可、差分の不許可、または差分の一時的な許可を受け付けてもよい。また、診断装置10は、差分の許可を受け付けた場合には、診断結果に差分を許可する情報を付与し、差分の不許可または差分の一時的な許可を受け付けた場合には、診断結果に固有の情報または重要度を付与する。
セキュリティ診断結果管理者90は、差分に対する判断結果をフィードバックできる。フィードバック可能な判断結果は、「差分を認知・許容する」「差分を認知・許容しない」「差分を一時的に許容する」の3種類となる。許容・認知しない場合と一時的に許容する場合は、検知された差分に対して固有の情報と重み付けを付与する事ができる。
差分を認知・許容する場合には、構成情報マスタDB14に登録されている情報(過去の結果)に対して、受信した診断情報に差分があったとしても、その差分が想定されている差分である場合に選択する。稼働中の制御システム用コンピュータ群の制御装置20は、バックアップ装置30に稼働直前のイメージバックアップが生成されており、そのセキュリティ診断情報は構成情報マスタDBに登録されている。次に、制御装置20に対して変更を加えた場合は、変更後の結果がバックアップ装置30のイメージバックアップに生成される。変更後のクローン制御装置40で定期診断を実施したときに生じる差分は、意図した変更であるため差分は認知される。また、稼働中の制御装置20で行われる定常診断にて、構成情報マスタDB14に登録されている情報よりも増加減された診断情報が届く事がある。診断情報によっては、一定の範囲を持つものもあり、特定の状態では、構成情報マスタDB14に登録されている範囲を超えた情報が取得される場合もある。その範囲が許容できる場合は、差分を許容する事で次回以降は差分とは扱われなくなる。
差分を認知・許容しない場合には、構成情報マスタDB14に登録されている情報(過去の結果)に対して、受信した診断情報に差分があり、その差分情報が認知されないまたは許容できない場合に選択する。制御用システムコンピュータ群で稼働中の制御装置20は、稼働中に自由に構成変更をするものでは無く、必要に応じてシステム管理者の許可のもと変更が行われる。制御装置20の定常診断情報との比較で許可されていない変更が検出された場合は、システム管理者と確認し変更の経緯を調査する。調査の結果、原因が判明した場合は認知されない変更として扱い、検出された差分に対してその原因を自由記入形式で書き込み、重要度を設定する事で、今後の再発時や同様の問題が別の制御装置20上で発生した場合の解析に役立てる。また、診断情報には一定の範囲を持つ情報も含まれている。その場合は、上限または下限を超えた場合に差分として検出される。その結果が許容できない場合には、許容できないとマークし、判断理由を自由記入形式で書き込み、重要度を設定する事で、今後の再発時や同様の問題が発生した場合に役立てる。
差分を一時的に許容する場合には、許容の判断が出来ない場合に、指定の期日まではその差分を許容する場合に選択する。原因が特定できないがセキュリティ上の問題が無いと判断した場合に、この状態を設定する。その後の調査により原因が特定できた場合は、許容または許容しない、のいずれかに状態を再設定する。一時的に許容する場合は、その差分に対して自由記入形式で書き込み、重要度を設定する事で、同様の差分が再発した場合の解析に役立てる。
(フィードバック処理に関わる構成)
診断装置10は、フィードバック処理に関わる以下の構成を有する。管理画面は、セキュリティ診断結果監視者が操作するためのユーザインターフェースを持つプログラムである。第1に、「管理画面」を選択すると、診断情報管理サービスにリクエストが送られ、データベースから機器固有識別情報と、差分の有無に関する情報が取得され、ユーザインターフェースに描画される。第2に、「管理画面」から特定の制御装置の「差分詳細情報」を選択すると、同サービスにリクエストが送られ、対象の制御装置のセキュリティ診断結果の差分情報が取得され、ユーザインターフェースに描画される。第3に、上記の差分詳細情報が表示された画面にて、判断結果を入力して登録操作を行うことで、同サービスにリクエストが送られ、データベースに判断結果が登録される。
診断情報管理サービスは、管理画面からのリクエストに応じて動作する。また、診断情報管理サービスは、取得する情報に合わせて、データベース管理サービスや差分チェック機能を介してデータベースの情報を取得・操作する。さらに、診断情報管理サービスは、実行結果を管理画面のユーザインターフェースに描画する。
[DB作成処理の流れ]
図5を用いて、本実施形態に係るDB作成処理の流れを詳細に説明する。図5は、実施形態に係るDB作成処理の流れの一例を示すシーケンス図である。以下では、収集処理(ステップS201~S206)、登録処理(ステップS207~S213)の順に説明する。
(収集処理)
まず、システム管理者等の操作者70は、クローン制御装置40に診断情報収集アプリ41を導入する(ステップS201)。また、操作者70は、クローン制御装置40に対して全ての情報収集を指示する(ステップS202)。次に、クローン制御装置40の診断情報収集アプリ41は、診断情報を収集する(ステップS203)。また、診断情報収集アプリ41は、診断情報の送信用データを作成し(ステップS204)、クローン制御装置40に保持する(ステップS205)。このとき、診断情報収集アプリ41は、操作者70に対して、情報収集終了を通知する(ステップS206)。
(登録処理)
まず、システム管理者等の操作者70は、クローン制御装置40の診断情報収集アプリ41に対して、受信サーバ13への送信を指示する(ステップS207)。次に、診断情報収集アプリ41は、受信サーバ13に診断用データを送信する(ステップS208)。続いて、受信サーバ13は、送信用スレッドを作成し(ステップS209)、診断ソフトウェア15に対して、受信データのDB登録を指示する(ステップS210)。そして、診断ソフトウェア15は、マスタDB15に受信データを登録する(ステップS211)。一方、受信サーバ13は、診断情報収集アプリ41に対して、診断用データの受信完了を通知する。また、診断情報収集アプリ41は、操作者70に対して、診断用データの送信完了を通知して(ステップS213)、処理を終了する。
[診断処理の流れ]
図6~図8を用いて、本実施形態に係る診断処理の流れを詳細に説明する。図6は、実施形態に係る定期診断処理の流れの一例を示すシーケンス図である。図7は、実施形態に係る定常診断処理の流れの一例を示すシーケンス図である。図8は、実施形態に係る臨時診断処理の流れの一例を示すシーケンス図である。以下では、定期診断処理、定常診断処理、臨時診断処理の順に説明する。
(定期診断処理)
図6を用いて、本実施形態に係る定期診断処理の流れを詳細に説明する。以下では、収集処理(ステップS301~S305)、差分情報生成処理(ステップS306~S316)の順に説明する。
(定期診断処理の収集処理)
まず、システム管理者等の定期診断実施者80Aは、クローン制御装置40の診断情報収集アプリ41に対して、診断開始を指示する(ステップS301)。次に、診断情報収集アプリ41は、診断情報の収集を開始する(ステップS302)。このとき、診断情報収集アプリ41は、情報を収集し(ステップS303)、送信用データを作成し(ステップS304)、送信用データを保存する(ステップS305)。定期診断処理では、ステップS303~S305の処理は、全ての構成データの収集が完了するまで繰り返される。
(定期診断処理の差分情報生成処理)
まず、クローン制御装置40の診断情報収集アプリ41は、受信サーバ13に対して、診断情報を送信する(ステップS306)。次に、受信サーバ13は、受信用スレッドを作成し(ステップS307)、診断ソフトウェア15に対して受信データのDB登録を依頼する(ステップS308)。そして、診断ソフトウェア15は、受信データの処理を開始し(ステップS309)、マスタDBから過去の登録情報を取得し(ステップS310)、差分チェックを行い(ステップS311)、差分情報をマスタDBに登録し(ステップS312)、システム管理者等の診断結果監視者90Aに対して差分情報を通知する(ステップS313)。一方、診断ソフトウェア15は、受信サーバ13に対して、依頼受信完了を通知する(ステップS314)。また、受信サーバ13は、診断情報収集アプリ41に対して、受信データの送信完了を通知する(ステップS315)。最後に、診断情報収集アプリ41は、定常診断実施者80Aに対して、診断終了を通知して(ステップS316)、処理を終了する。
(定常診断処理)
図7を用いて、本実施形態に係る定常診断処理の流れを詳細に説明する。以下では、収集処理(ステップS401~S409)、差分情報生成処理(ステップS410~S417)の順に説明する。
(定常診断処理の収集処理)
まず、システム管理者等の定常診断構築者80Bは、クローン制御装置40の診断情報収集アプリ41に対して、診断定義を設定し(ステップS401)、定常診断を開始する(ステップS402)。次に、診断情報収集アプリ41は、診断情報の収集を開始する(ステップS403)。このとき、診断情報収集アプリ41は、情報を収集し(ステップS404)、送信用データを作成し(ステップS405)、送信用データを保存し(ステップS406)、受信サーバ13に対して診断情報を送信する(ステップS407)。受信サーバ13は、受信データのキューイングを行い(ステップS408)、診断情報収集アプリ41に対して診断情報の受信完了を通知する(ステップS409)。定常診断処理では、ステップS404~S409の処理は、診断データの収集が完了するまで繰り返される。
(定常診断処理の差分情報生成処理)
まず、受信サーバ13は、受信データ登録のスレッドを作成し(ステップS410)、診断ソフトウェア15に対して受信データのDB登録を依頼する(ステップS411)。次に、診断ソフトウェア15は、受信データの処理を開始し(ステップS412)、マスタDBから過去の登録情報を取得し(ステップS413)、差分チェックを行い(ステップS414)、差分情報をマスタDBに登録し(ステップS415)、システム管理者等の診断結果監視者90Bに対して差分情報を通知する(ステップS416)。そして、診断ソフトウェア15は、受信サーバ13に対して終了を通知する(ステップS417)。定常診断処理では、ステップS410~S417の処理は、診断情報の登録が完了するまで繰り返される。
(臨時診断処理)
図8を用いて、本実施形態に係る臨時診断処理の流れを詳細に説明する。以下では、収集処理(ステップS501~S505)、差分情報生成処理(ステップS506~S516)の順に説明する。
(臨時診断処理の収集処理)
まず、システム管理者等の臨時診断実施者80Cは、制御装置20の診断情報収集アプリ21に対して、診断開始を指示する(ステップS501)。次に、診断情報収集アプリ21は、診断情報の収集を開始する(ステップS502)。このとき、診断情報収集アプリ21は、情報を収集し(ステップS503)、送信用データを作成し(ステップS504)、送信用データを保存する(ステップS505)。臨時診断処理では、ステップS503~S505の処理は、全ての構成データの収集が完了するまで繰り返される。
(臨時診断処理の差分情報生成処理)
まず、制御装置20の診断情報収集アプリ21は、受信サーバ13に対して、診断情報を送信する(ステップS506)。次に、受信サーバ13は、受信用スレッドを作成し(ステップS507)、診断ソフトウェア15に対して受信データのDB登録を依頼する(ステップS508)。そして、診断ソフトウェア15は、受信データの処理を開始し(ステップS509)、マスタDBから過去の登録情報を取得し(ステップS510)、差分チェックを行い(ステップS511)、差分情報をマスタDBに登録し(ステップS512)、システム管理者等の診断結果監視者90Cに対して差分情報を通知する(ステップS513)。一方、診断ソフトウェア15は、受信サーバ13に対して、依頼受信完了を通知する(ステップS514)。また、受信サーバ13は、診断情報収集アプリ21に対して、受信データの送信完了を通知する(ステップS515)。最後に、診断情報収集アプリ21は、臨時診断実施者80Cに対して、診断終了を通知して(ステップS516)、処理を終了する。
[フィードバック処理の流れ]
図9を用いて、本実施形態に係るフィードバック処理の流れを詳細に説明する。図9は、実施形態に係るフィードバック処理の流れの一例を示すシーケンス図である。以下では、管理画面提示処理(ステップS601~S604)、差分詳細画面提示処理(ステップS605~S608)、判断結果更新処理(ステップS609~S610)の順に説明する。
(管理画面提示処理)
まず、システム管理者等の診断結果監視者90は、診断装置10の診断ソフトウェア15に対して、管理画面確認を指示する(ステップS601)。次に、診断ソフトウェア15は、マスタDBから差分情報を取得し(ステップS602)、差分情報の描画を行う(ステップS603)。そして、診断ソフトウェア15は、診断結果監視者90に対して、管理画面を提示する(ステップS604)。
(差分詳細画面提示処理)
まず、システム管理者等の診断結果監視者90は、診断装置10の診断ソフトウェア15に対して、差分詳細情報を要求する(ステップS605)。次に、診断ソフトウェア15は、マスタDBから差分詳細情報を取得し(ステップS606)、差分詳細情報の描画を行う(ステップS607)。そして、診断ソフトウェア15は、診断結果監視者90に対して、差分詳細画面を提示する(ステップS608)。
(判断結果更新処理)
まず、システム管理者等の診断結果監視者90は、診断ソフトウェア15に対して、判断結果を入力する(ステップS609)。そして、診断ソフトウェア15は、マスタDBの判断結果を更新し(ステップS610)、処理を終了する。
[実施形態の効果]
第1に、上述した本実施形態に係るセキュリティ診断処理では、プラント内に設置されたプラントを稼働させる各機器の制御および監視を実行する制御装置20ごとに、セキュリティ診断の対象となる制御装置20の各構成に関する構成情報を保持し、制御装置20によって収集された各構成の診断用情報を、制御装置20から受信し、受信した診断用情報と、構成情報とに基づき、制御装置20のセキュリティ診断を実行する。このため、本処理では、セキュリティ診断において、診断システムの導入により生じる制御システムの操業に与える影響を削減することができる。
第2に、上述した本実施形態に係るセキュリティ診断処理では、バックアップ装置30によって定期的に取得される制御装置20のディスクイメージを用いて仮想マシンによって生成された仮想制御装置40-1、または制御装置20のディスクイメージを保持する物理装置40-2から、各構成の診断用情報を受信する。このため、本処理では、セキュリティ診断において、制御装置20のアプリケーション実行を阻害することなく、診断システムの導入により生じる制御システムの操業に与える影響を削減することができる。
第3に、上述した本実施形態に係るセキュリティ診断処理では、定期的に、制御装置20が有する全構成の診断用情報を受信し、受信した診断用情報と、構成情報との差分を抽出し、差分を出力する。このため、本処理では、定期的なセキュリティ診断において、診断システムの導入により生じる制御システムの操業に与える影響を削減することができる。
第4に、上述した本実施形態に係るセキュリティ診断処理では、制御装置20上で常駐稼働している収集アプリケーション21によって、制御装置20が有する全構成の診断用情報のうち、指定された周期で収集された診断用情報を、指定された周期で受信し、受信した診断用情報と、構成情報のうち該当する構成情報との差分を抽出し、差分を出力する。このため、本処理では、定常的なセキュリティ診断において、診断システムの導入により生じる制御システムの操業に与える影響を削減することができる。
第5に、上述した本実施形態に係るセキュリティ診断処理では、制御装置20によって異常が検出された場合には、異常が検出された制御装置20が有する全構成の診断用情報を受信し、診断部は、受信した診断用情報と、構成情報との差分を抽出し、差分を出力する。このため、本処理では、臨時的なセキュリティ診断において、診断システムの導入により生じる制御システムの操業に与える影響を削減することができる。
第6に、上述した本実施形態に係るセキュリティ診断処理では、セキュリティ診断の診断結果に対する判断結果を受け付け、受け付けた判断結果に基づいて、診断結果に所定の情報を付与する。このため、本処理では、セキュリティ診断において、フィードバックを行うことにより、診断システムの導入により生じる制御システムの操業に与える影響を効果的に削減することができる。
第7に、上述した本実施形態に係るセキュリティ診断処理では、セキュリティ診断の診断結果に対する判断結果として、差分の許可、差分の不許可、または差分の一時的な許可を受け付け、差分の許可を受け付けた場合には、診断結果に差分を許可する情報を付与し、差分の不許可または前記差分の一時的な許可を受け付けた場合には、診断結果に固有の情報または重要度を付与する。このため、本処理では、セキュリティ診断において、フィードバックを行うことにより、診断システムの導入により生じる制御システムの操業に与える影響をより効果的に削減することができる。
〔システム〕
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
〔ハードウェア〕
次に、診断装置10のハードウェア構成例を説明する。なお、他の装置も同様のハードウェア構成とすることができる。図10は、ハードウェア構成例を説明する図である。図10に示すように、診断装置10は、通信装置10a、HDD(Hard Disk Drive)10b、メモリ10c、プロセッサ10dを有する。また、図10に示した各部は、バス等で相互に接続される。
通信装置10aは、ネットワークインタフェースカードなどであり、他のサーバとの通信を行う。HDD10bは、図3に示した機能を動作させるプログラムやDBを記憶する。
プロセッサ10dは、図3に示した各処理部と同様の処理を実行するプログラムをHDD10b等から読み出してメモリ10cに展開することで、図3等で説明した各機能を実行するプロセスを動作させる。例えば、このプロセスは、診断装置10が有する各処理部と同様の機能を実行する。具体的には、プロセッサ10dは、受信部151a、格納部151b、診断部152a、通知部152b、受付部153a、付与部153b等と同様の機能を有するプログラムをHDD10b等から読み出す。そして、プロセッサ10dは、受信部151a、格納部151b、診断部152a、通知部152b、受付部153a、付与部153b等と同様の処理を実行するプロセスを実行する。
このように、診断装置10は、プログラムを読み出して実行することで各種処理方法を実行する情報処理装置として動作する。また、診断装置10は、媒体読取装置によって記録媒体から上記プログラムを読み出し、読み出された上記プログラムを実行することで上記した実施例と同様の機能を実現することもできる。なお、この他の実施例でいうプログラムは、診断装置10によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
このプログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD-ROM、MO(Magneto-Optical disk)、DVD(Digital Versatile Disc)などのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することができる。
10 セキュリティ診断装置
11 入力部
12 出力部
13 通信部
14 記憶部
14a 診断用情報記憶部
15、21、41 制御部
151 DB作成部
151a 受信部
151b 格納部
152 診断制御部
152a 診断部
152b 通知部
153 フィードバック部
153a 受付部
153b 付与部
20 制御装置
30 バックアップ装置
40 クローン制御装置
50 物理領域
60 管理装置
70 操作者
80 診断実施者(診断構築者)
90 診断結果監視者
100 診断システム

Claims (9)

  1. プラント内に設置された前記プラントを稼働させる各機器の制御および監視を実行する制御装置ごとに、セキュリティ診断の対象となる前記制御装置の各構成に関する構成情報を記憶する記憶部と、
    前記制御装置によって収集された前記各構成の診断用情報を、前記制御装置から受信する受信部と、
    受信された前記診断用情報と、前記構成情報とに基づき、前記制御装置のセキュリティ診断を実行する診断部と、
    を備えることを特徴とする診断装置。
  2. 前記受信部は、
    バックアップ装置によって定期的に取得される前記制御装置のディスクイメージを用いて仮想マシンによって生成された仮想制御装置、または前記制御装置のディスクイメージを保持する物理装置から、前記各構成の診断用情報を受信する、
    ことを特徴とする請求項1に記載の診断装置。
  3. 前記受信部は、
    定期的に、前記制御装置が有する全構成の診断用情報を受信し、
    前記診断部は、
    受信された前記診断用情報と、前記構成情報との差分を抽出し、前記差分を出力する、
    ことを特徴とする請求項1または2に記載の診断装置。
  4. 前記受信部は、
    前記制御装置上で常駐稼働している収集アプリケーションによって、前記制御装置が有する全構成の診断用情報のうち、指定された周期で収集された診断用情報を、前記周期で受信し、
    前記診断部は、
    受信された前記診断用情報と、前記構成情報のうち該当する構成情報との差分を抽出し、前記差分を出力する、
    ことを特徴とする請求項1または2に記載の診断装置。
  5. 前記受信部は、
    前記制御装置によって異常が検出された場合には、異常が検出された前記制御装置が有する全構成の前記診断用情報を受信し、
    前記診断部は、
    受信された前記診断用情報と、前記構成情報との差分を抽出し、前記差分を出力する、
    ことを特徴とする請求項1または2に記載の診断装置。
  6. 前記セキュリティ診断の診断結果に対する判断結果を受け付ける受付部と、
    前記受け付けられた前記判断結果に基づいて、前記診断結果に所定の情報を付与する付与部と、
    をさらに備えることを特徴とする請求項1に記載の診断装置。
  7. 前記受付部は、
    前記判断結果として、差分の許可、差分の不許可、または差分の一時的な許可を受け付け、
    前記付与部は、
    前記差分の許可を受け付けられた場合には、前記診断結果に前記差分を許可する情報を付与し、前記差分の不許可または前記差分の一時的な許可を受け付けられた場合には、前記診断結果に固有の情報または重要度を付与する、
    ことを特徴とする請求項6に記載の診断装置。
  8. コンピュータが、
    プラント内に設置された前記プラントを稼働させる各機器の制御および監視を実行する制御装置ごとに、セキュリティ診断の対象となる前記制御装置の各構成に関する構成情報を記憶部に保持し、
    前記制御装置によって収集された前記各構成の診断用情報を、前記制御装置から受信し、
    受信した前記診断用情報と、前記構成情報とに基づき、前記制御装置のセキュリティ診断を実行する、
    処理を実行することを特徴とする診断方法。
  9. コンピュータに、
    プラント内に設置された前記プラントを稼働させる各機器の制御および監視を実行する制御装置によって収集された、前記制御装置の各構成の診断用情報を、前記制御装置から受信し、
    受信した前記診断用情報と、前記制御装置ごとの、セキュリティ診断の対象となる前記制御装置の前記各構成に関する構成情報とに基づき、前記制御装置のセキュリティ診断を実行する、
    処理を実行させることを特徴とする診断プログラム。
JP2021058542A 2021-03-30 2021-03-30 診断装置、診断方法および診断プログラム Pending JP2022155174A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2021058542A JP2022155174A (ja) 2021-03-30 2021-03-30 診断装置、診断方法および診断プログラム
US17/687,216 US20220318374A1 (en) 2021-03-30 2022-03-04 Diagnosis apparatus, diagnosis method, and computer-readable recording medium
CN202210223720.9A CN115145238A (zh) 2021-03-30 2022-03-09 诊断装置、诊断方法以及计算机可读取的记录介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021058542A JP2022155174A (ja) 2021-03-30 2021-03-30 診断装置、診断方法および診断プログラム

Publications (1)

Publication Number Publication Date
JP2022155174A true JP2022155174A (ja) 2022-10-13

Family

ID=83404816

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021058542A Pending JP2022155174A (ja) 2021-03-30 2021-03-30 診断装置、診断方法および診断プログラム

Country Status (3)

Country Link
US (1) US20220318374A1 (ja)
JP (1) JP2022155174A (ja)
CN (1) CN115145238A (ja)

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6975966B2 (en) * 2003-01-28 2005-12-13 Fisher-Rosemount Systems, Inc. Integrated diagnostics in a process plant having a process control system and a safety system
JP5597514B2 (ja) * 2010-10-19 2014-10-01 株式会社日立システムズ セキュリティ診断システムおよび方法ならびにプログラム
JP6036464B2 (ja) * 2013-03-26 2016-11-30 富士通株式会社 プログラム、診断方法及び診断システム
US10015329B2 (en) * 2014-05-16 2018-07-03 Ricoh Company, Ltd. Information management apparatus, information management method, and information device
KR101620601B1 (ko) * 2015-03-04 2016-05-13 (주) 에스에스알 보안성 진단 방법 및 이를 위한 컴퓨터 프로그램, 그 기록매체
US9904785B2 (en) * 2015-06-02 2018-02-27 Rockwell Automation Technologies, Inc. Active response security system for industrial control infrastructure
EP3258661B1 (en) * 2016-06-16 2020-11-18 ABB Schweiz AG Detection of abnormal configuration changes
JP6676508B2 (ja) * 2016-09-29 2020-04-08 株式会社日立製作所 セキュリティ診断装置およびセキュリティ診断方法
DE102020108070A1 (de) * 2020-03-24 2021-09-30 Basler Aktiengesellschaft Robuste Überwachung von Computersystemen und/oder Steuerungssystemen

Also Published As

Publication number Publication date
CN115145238A (zh) 2022-10-04
US20220318374A1 (en) 2022-10-06

Similar Documents

Publication Publication Date Title
TWI225985B (en) Method and apparatus for the automatic determination of potentially worm-like behavior of a program
JP6788178B2 (ja) 設定支援プログラム、設定支援方法及び設定支援装置
JP4880376B2 (ja) 支援装置、プログラム、情報処理システム及び支援方法
US8024713B2 (en) Using ghost agents in an environment supported by customer service providers
US10802847B1 (en) System and method for reproducing and resolving application errors
CN113014445B (zh) 用于服务器的运维方法、装置、平台及电子设备
JP4383484B2 (ja) メッセージ解析装置、制御方法および制御プログラム
JP6201079B2 (ja) 監視システムおよび監視方法
JP2022155174A (ja) 診断装置、診断方法および診断プログラム
JP6531601B2 (ja) 診断プログラム、診断方法および診断装置
CN112416700A (zh) 分析启动的预测性故障和smart日志
JP2007241873A (ja) ネットワーク上のコンピュータ資源の変更監視プログラム
CA3144122A1 (en) Data verifying method, device and system
JP2008191849A (ja) 稼働管理装置、情報処理装置、稼働管理装置の制御方法、情報処理装置の制御方法及びプログラム
JP6730235B2 (ja) アプリケーション稼働監視装置および監視方法
JP2008181432A (ja) ヘルスチェック装置及びヘルスチェック方法及びプログラム
JP2020135701A (ja) 情報処理システム、情報処理装置および情報処理プログラム
JP6547341B2 (ja) 情報処理装置、方法及びプログラム
KR950010835B1 (ko) 컴퓨터 시스템의 서비스 네트워크에서 한 컴퓨터 시스템상의 문제 예방 실행 방법
US20240020039A1 (en) Evidence collection guidance method and apparatus for file selection and computer-readable storage medium
WO2024105747A1 (ja) 検査装置、検査方法、および検査プログラム
CN115174343B (zh) B/s架构页面巡检方法、装置和页面巡检系统
JP3985530B2 (ja) 不正行為監視システム
JP6586844B2 (ja) 情報処理装置、情報処理システム、情報処理方法及びプログラム
US10511474B2 (en) Information processing apparatus, computer-readable recording medium having stored therein program, and method for processing information

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221006

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230920

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231003

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20240402