JP2018142078A - Information processing system and information processing method - Google Patents
Information processing system and information processing method Download PDFInfo
- Publication number
- JP2018142078A JP2018142078A JP2017034784A JP2017034784A JP2018142078A JP 2018142078 A JP2018142078 A JP 2018142078A JP 2017034784 A JP2017034784 A JP 2017034784A JP 2017034784 A JP2017034784 A JP 2017034784A JP 2018142078 A JP2018142078 A JP 2018142078A
- Authority
- JP
- Japan
- Prior art keywords
- information
- block data
- patch
- application
- arithmetic
- 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.)
- Granted
Links
Images
Landscapes
- Hardware Redundancy (AREA)
- Stored Programmes (AREA)
Abstract
Description
本発明は、情報処理システム及び情報処理方法に関する。 The present invention relates to an information processing system and an information processing method.
発電プラント、鉄道システム、船舶、自動車、工場のオートメーション等において、それらの運転を制御するために分散制御システムが用いられることがある。分散制御システムなどの分散システムは、冗長化構成を有する。冗長化構成とは、多重化構成とも呼ばれる。安全性を確保するため、2つ又はそれ以上(例えば、4つ)のサブシステムを備え、サブシステム間で同一の処理を並列に実行可能とする。このとき、各サブシステムを構成する演算装置は、起動時に自装置が備えるハードウェアとソフトウェアの組み合わせが適切か否かを確認することがある。例えば、複数の異なるユーザによる二重承認が得られるときにソフトウェアの更新を行うことが提案されている(特許文献1)。また、分散システムにおいて、認証局サーバ(CA:Certification Authority)を設けておき、演算装置は認証された電子証明書を用いて演算装置にアクセスするユーザの認証を行うことが提案されている(特許文献2)。また、監視モニタ等の管理装置から提供されるホワイトリストを用いて、演算装置は予め許可されたソフトウェアやプロセス以外のソフトウェアやプロセスの起動を行わないことが提案されている。 In a power plant, a railway system, a ship, an automobile, a factory automation, and the like, a distributed control system may be used to control their operation. A distributed system such as a distributed control system has a redundant configuration. The redundant configuration is also called a multiplexed configuration. In order to ensure safety, two or more (for example, four) subsystems are provided, and the same processing can be executed in parallel between the subsystems. At this time, the computing devices constituting each subsystem may check whether the combination of hardware and software included in the own device is appropriate at the time of activation. For example, it has been proposed to update software when double approval by a plurality of different users is obtained (Patent Document 1). In a distributed system, it is proposed that a certificate authority server (CA) is provided and the computing device authenticates a user who accesses the computing device using an authenticated electronic certificate (patent). Reference 2). Further, it has been proposed that the arithmetic device does not start software or processes other than software or processes permitted in advance using a white list provided from a management device such as a monitor.
しかしながら、冗長化構成をとる場合、互いにソフトウェア構成を確認するために演算装置間で相互に通信が発生する。そのため、冗長化台数が増えると、演算装置間で送受信されるデータの通信量が著しく増える。冗長化台数とは、冗長化構成におけるサブシステムの数である。冗長化台数は、多重度と呼ばれることもある。例えば、サブシステム、即ち演算装置の個数がn(nは、1より大きい整数)個である場合には、演算装置間における通信量は、冗長化構成をとらない場合のn(n−1)/2倍となる。そのため、冗長化台数を容易に増やすことができないという課題があった。
また、サイバーセキュリティを確保するために認証局サーバが設けられる場合、認証局サーバが各種のサイバーセキュリティに関する機能に関して中央サーバとしての役割を担う。そのため、分散システムであるにも関わらず、認証局サーバに障害が発生すると、分散システム全体の稼働に影響を及ぼしうるという課題が生じていた。認証局サーバの設置は、ユーザの成りすましに対しては有効な対策であるが、予め許可されたソフトウェア以外の不正なソフトウェアの適用を防止することができない。例えば、感染防止に予め許可したプログラムのみ起動を許可するホワイトリスト方式が用いられる場合、ソフトウェアの更新の度に実行が許可されるソフトウェアを示すホワイトリストの配信を要するうえ、冗長化台数が多いほど更新ならびに配信の負荷が多くなる。更新ならびに配信のために専用の配信サーバを分散システムに設置すると、認証局サーバと同様に、その障害により分散システム全体の稼働に影響を及ぼしうるという課題を生じる。
However, when a redundant configuration is adopted, communication occurs between the arithmetic devices to mutually confirm the software configuration. For this reason, when the number of redundant units increases, the amount of communication of data transmitted and received between arithmetic devices increases remarkably. The number of redundant units is the number of subsystems in the redundant configuration. The number of redundant units is sometimes called multiplicity. For example, when the number of subsystems, that is, the number of arithmetic devices is n (n is an integer greater than 1), the amount of communication between the arithmetic devices is n (n−1) when no redundant configuration is adopted. / 2 times. Therefore, there was a problem that the number of redundant units could not be easily increased.
When a certificate authority server is provided in order to ensure cyber security, the certificate authority server plays a role as a central server for various cyber security functions. For this reason, there has been a problem that, even though the system is a distributed system, a failure of the certificate authority server may affect the operation of the entire distributed system. The installation of a certificate authority server is an effective measure against user impersonation, but it cannot prevent the application of unauthorized software other than software permitted in advance. For example, when a whitelist method is used that allows only programs that have been permitted in advance to prevent infection, it is necessary to distribute a whitelist indicating the software that is permitted to be executed every time the software is updated, and the more redundant the number Update and distribution load increases. When a dedicated distribution server is installed in the distributed system for updating and distribution, the problem arises that the operation of the entire distributed system may be affected by the failure, like the certificate authority server.
本発明は、上述の課題を鑑みてなされたものであり、分散処理を維持しながら信頼性及び不正なプログラム起動を防止してサイバーセキュリティを向上することができる情報処理システム及び情報処理方法を提供することを目的としている。 The present invention has been made in view of the above-described problems, and provides an information processing system and an information processing method capable of improving cyber security by preventing reliability and unauthorized program activation while maintaining distributed processing. The purpose is to do.
本実施形態の一態様は、複数の演算装置を備える情報処理システムであって、前記複数の演算装置のそれぞれは、前記演算装置で許可又は許可しない事項を示すリスト情報に基づいて、前記事項についての処理の実行の許否を判定する制御部と、前時点のブロックデータに基づく検証値と、前記事項の発生に関する現時点まで累積された履歴情報と、を含む現時点のブロックデータを生成するデータ生成部と、前記ブロックデータを前記複数の演算装置間で同報する通信部と、を備える情報処理システムである。 One aspect of the present embodiment is an information processing system including a plurality of arithmetic devices, wherein each of the plurality of arithmetic devices is based on list information indicating matters that are permitted or not permitted in the arithmetic devices. A data generation unit that generates current block data including a control unit that determines whether or not to execute the process, a verification value based on block data at a previous time point, and history information accumulated up to the present time regarding occurrence of the item And a communication unit that broadcasts the block data among the plurality of arithmetic devices.
本実施形態の一態様は、上述の情報処理システムであって、実行が許可されたプログラムを示すプログラムリスト情報を含む開始時点の第1ブロックデータを前記複数の演算装置に提供する管理装置を備え、前記制御部は、前記プログラムリスト情報が示すプログラムに基づく処理の実行の許否を判定し、前記データ生成部は、前時点の第1ブロックデータに基づく検証値と、前記処理の起動状態を示す起動プログラム情報が現時点まで累積された履歴情報と、を含む現時点の第1ブロックデータを生成し、前記通信部は、前記第1ブロックデータを前記複数の演算装置間で同報する。 One aspect of the present embodiment is the above-described information processing system, including a management device that provides the plurality of arithmetic devices with first block data at a start time including program list information indicating a program that is permitted to be executed. The control unit determines whether or not to execute the process based on the program indicated by the program list information, and the data generation unit indicates a verification value based on the first block data at the previous time point and an activation state of the process. The first block data at the present time including the history information in which the activation program information is accumulated up to the present time is generated, and the communication unit broadcasts the first block data among the plurality of arithmetic devices.
本実施形態の他の態様は、上述の情報処理システムであって、所定の機能へのアクセスが許可されたユーザを示すユーザリスト情報を含む開始時点の第2ブロックデータを前記複数の演算装置に提供する管理装置を備え、前記制御部は、前記ユーザリスト情報に基づいてユーザからの前記機能へのアクセスの許否を判定し、前記データ生成部は、前時点の第2ブロックデータに基づく検証値と、前記機能へのアクセス結果を示すアクセス状態情報が現時点まで累積された履歴情報であるアクセス履歴情報と、を含む現時点の第2ブロックデータを生成し、前記通信部は、前記第2ブロックデータを前記複数の演算装置間で同報する。 Another aspect of the present embodiment is the information processing system described above, in which the second block data at the start point including user list information indicating users who are permitted to access a predetermined function is stored in the plurality of arithmetic devices. A management device for providing, the control unit determines whether to allow access to the function from a user based on the user list information, the data generation unit is a verification value based on the second block data of the previous time point And access history information that is history information in which access status information indicating an access result to the function is accumulated up to the present time, and the communication unit generates the second block data Is broadcast among the plurality of arithmetic units.
本実施形態の他の態様は、上述の情報処理システムであって、前記複数の演算装置のそれぞれは、サイバーセキュリティが損なわれる事象を検出する検出部を備え、前記データ生成部は、前時点の第3ブロックデータに基づく検証値と、検出された前記事象を示す事象情報が現時点まで累積された履歴情報である事象履歴情報と、を含む現時点の第3ブロックデータを生成し、前記通信部は、前記第3ブロックデータを前記複数の演算装置間で同報する。 Another aspect of the present embodiment is the information processing system described above, wherein each of the plurality of arithmetic devices includes a detection unit that detects an event in which cyber security is impaired, and the data generation unit Generating the current third block data including a verification value based on the third block data and event history information which is history information in which event information indicating the detected event is accumulated up to the present time, and the communication unit Broadcasts the third block data among the plurality of arithmetic devices.
本発明の他の態様は、上述の情報処理システムであって、プログラムのパッチを示すパッチリスト情報を含む開始時点の第4ブロックデータを前記複数の演算装置に提供する管理装置を備え、前記制御部は、前記パッチリスト情報が示すパッチの適用の要否を判定し、前記データ生成部は、前時点の第4ブロックデータに基づく検証値と、前記パッチの適用状態を示すパッチ適用情報が現時点まで累積された履歴情報であるパッチ適用履歴情報と、を含む現時点の第4ブロックデータを生成し、前記通信部は、前記第4ブロックデータを前記複数の演算装置間で同報する。 Another aspect of the present invention is the information processing system described above, including a management device that provides the plurality of arithmetic devices with fourth block data at a start point including patch list information indicating a patch of the program, and the control Determine whether or not to apply the patch indicated by the patch list information, and the data generation unit includes a verification value based on the fourth block data of the previous time point and the patch application information indicating the patch application state at the present time. Current application block data including patch application history information that is accumulated history information until the first block data is broadcast among the plurality of arithmetic devices.
本発明の他の態様は、複数の演算装置を備える情報処理システムにおける情報処理方法であって、前記複数の演算装置のそれぞれが、前記演算装置で許可又は許可しない事項を示すリスト情報に基づいて、前記事項についての処理の実行の許否を判定する制御過程と、前時点のブロックデータに基づく検証値と、前記事項の発生に関する現時点まで累積された履歴情報と、を含む現時点のブロックデータを生成するデータ生成過程と、前記ブロックデータを前記複数の演算装置間で同報する通信過程と、を有する情報処理方法である。 Another aspect of the present invention is an information processing method in an information processing system including a plurality of arithmetic devices, wherein each of the plurality of arithmetic devices is based on list information indicating matters permitted or not permitted by the arithmetic devices. Generating current block data including a control process for determining whether or not to execute the process for the item, a verification value based on the previous block data, and history information accumulated up to the present time regarding the occurrence of the item And a communication process for broadcasting the block data among the plurality of arithmetic devices.
本発明によれば、複数の演算装置間で同報されるブロックデータが共有される。そのため、送信対象の演算装置の数の増加による伝送量の増加が、個々の演算装置を特定してブロックデータが伝送される場合よりも抑制されるため、ブロックデータが効率的に共有される。また、ブロックデータに含まれるプログラムリスト情報の正当性を認証するための認証サーバを設置しなくても、冗長化された個々の演算装置の分散処理を維持しながら、ブロックデータに含まれるプログラムリスト情報に基づいて、そのプログラムに基づく処理の起動を制御することができる。実行が許可されない不正なプログラムの起動が抑制されことで、情報処理システムの信頼性とサイバーセキュリティが向上する。 According to the present invention, block data broadcast is shared among a plurality of arithmetic devices. For this reason, an increase in the transmission amount due to an increase in the number of computing devices to be transmitted is suppressed as compared with the case where block data is transmitted by specifying individual computing devices, so that the block data is efficiently shared. In addition, the program list included in the block data can be maintained while maintaining the distributed processing of each redundant computing device without installing an authentication server for authenticating the validity of the program list information included in the block data. Based on the information, it is possible to control activation of processing based on the program. Suppressing the activation of unauthorized programs that are not allowed to be executed improves the reliability and cyber security of the information processing system.
<第一実施形態>
以下、本発明の第一実施形態に係る冗長化システムについて、図1〜図9を参照して説明する。
図1は、本実施形態に係る冗長化システム1の一構成例を示すブロック図である。
冗長化システム1は、複数の演算装置10とEMS(Engineering and Maintenance Station;管理装置)22を含んで構成される。複数の演算装置10は、互いに共通の構成を備える。演算装置10a等のa等の符号は、個々の演算装置を区別するための符号である。演算装置10a−10dは、それぞれネットワークNWで通信可能に接続され、相互に各種のデータを送受信できる。図1に示す例では、演算装置10の台数は、4個であるが、3個以上であればよい。また、台数の上限は特に設けられない。以下の説明では、演算装置10が、主にサーバ装置として実現される場合を例にする。
<First embodiment>
Hereinafter, a redundant system according to a first embodiment of the present invention will be described with reference to FIGS.
FIG. 1 is a block diagram illustrating a configuration example of a
The
EMS22は、ユーザであるエンジニアの操作を受け付け、受け付けた操作に応じてネットワークNWを介して接続されている機器を管理するための装置である。演算装置10の管理には、例えば、各演算装置10の起動、停止などの動作状態の指示、パラメータの設定、アプリケーションプログラムの作成と配信、などである。EMS22は、ユーザの操作を受け付ける操作入力部と、操作対象の演算装置や各種の情報を表示するための表示部と、操作により指示される操作情報、設定情報などを適用対象の演算装置10に送信するための通信部を備える。EMS22は、演算装置10に起動を許可するアプリケーションプログラムのリストを示す開始時点のブロックデータを生成する。起動とは、実行を開始することを示す。以下の説明では、アプリケーションプログラムを単にアプリケーション又はアプリと呼ぶ。プログラムの実行とは、CPU(Central Processing Unit)、ASIC(Application Specific Integrated Circuit)等の演算処理を実行する演算デバイスがプログラムに記述された命令に係る処理を行うことを意味する。プログラムの起動とは、プログラムの実行を開始することを意味する。また、機能部毎にその処理を実行する演算デバイス、プログラムが異なっていてもよい。
The
現時点のブロックデータは、前時点のブロックデータに基づく検証値と、開始時点から現時点までの各時点の要素情報を累積して構成される履歴情報を含むデータである。検証値として、例えば、前時点のブロックデータに含まれるブロックヘッダ、現時点の履歴情報のそれぞれについて得られたハッシュ値が用いられる。EMS22は、開始時点のブロックデータとして、アプリケーションのリストを示す開始時点(初期)の履歴情報、所定の検証値の初期値、及び開始時点の履歴情報の検証値と、を含むブロックデータを生成する。アプリケーションのリストは、演算装置10に起動を許可するアプリケーションを示すアプリケーション情報を1個又は複数個を含んで構成されるホワイトリスト情報である。ブロックデータの具体例については、後述する。各アプリケーション情報には、そのアプリケーションの起動の許否を示す演算装置10の情報が含まれてもよい。EMS22は、生成した開始時点のブロックデータを演算装置10にネットワークNWを介して送信する。
The current block data is data including a verification value based on the block data at the previous time point and history information configured by accumulating element information at each time point from the start time point to the current time point. As the verification value, for example, a hash value obtained for each of the block header included in the block data at the previous time point and the current history information is used. The
次に、本実施形態に係る演算装置10の機能構成について説明する。図2は、本実施形態に係る演算装置10の一例を示すブロック図である。
演算装置10は、制御演算部11、機能制御部13、ブロックデータ処理部14、通信部16及び記憶部18を備える。演算装置10は、例えば、演算デバイスから構成される。演算デバイスは、記憶部18に記憶された所定の制御プログラムを読み出し、読み出した制御プログラムを実行する。また、機能部間でプログラムを実行する演算デバイスが共通であってもよいし、異なっていてもよい。
Next, a functional configuration of the
The
制御演算部11は、記憶部に記憶された各種のプログラムから、機能制御部13から入力されたアプリケーション起動指示情報が示すアプリケーションを読み出し、読み出したアプリケーションに記述された命令が示す処理を実行する。なお、制御演算部11は、処理を実行するアプリケーションは、アプリケーション起動指示情報が示すアプリケーションであって、ユーザの操作により指示されたアプリケーションでもよい。また、制御演算部11が処理を実行するプログラムには、そのアプリケーションから参照されるダイナミックリンクライブラリ(DLL:Dynamic Link Library)が含まれることがある。制御演算部11は、起動したアプリケーションについて、自機における起動状態として起動中を示す起動アプリケーション情報を記憶部18に記憶する。また、制御演算部11は、起動したアプリケーションについて起動が完了したとき、記憶部18に記憶した起動アプリケーション情報を、自機における起動状態として起動完了を示す起動アプリケーション情報に更新する。また、実行対象のアプリケーションは、EMS22を介して提供されるアプリケーションであってもよい。
また、制御演算部11は、機能制御部13からアプリケーション実行停止情報が入力されるとき、アプリケーション実行停止情報が示すアプリケーションの実行を停止する。制御演算部11は、実行を停止したアプリケーションについて、自機における起動状態として起動停止を示す起動アプリケーション情報を記憶部18に記憶する。
The
Further, when the application execution stop information is input from the
機能制御部13は、記憶部18に新たに記憶されたアプリケーション情報、つまりホワイトリスト情報に基づいて、そのアプリケーション情報が示すアプリケーションの実行の許否を判定する。機能制御部13は、アプリケーション情報が自装置での実行を許可するアプリケーションを実行すると判定する。機能制御部13は、そのアプリケーション情報が自装置に実行が許可されていないアプリケーションを実行しないと判定する。機能制御部13は、実行すると判定したアプリケーションの起動を指示するアプリケーション起動指示情報を生成し、生成したアプリケーション起動指示情報を制御演算部11に出力する。
The
機能制御部13は、記憶部18に記憶された最新の起動アプリケーション情報が示すアプリケーションのうち、その起動状態が起動停止(起動を中断し停止すること)であるアプリケーションが存在する場合がある。その場合には、自装置とは異なる他の演算装置10の制御演算部11においてそのアプリケーションの実行が停止している場合と、自装置の制御演算部11がそのアプリケーションの実行が停止している場合とがある。機能制御部13は、そのアプリケーションの起動を指示するアプリケーション起動指示情報を生成し、生成したアプリケーション起動指示情報を制御演算部11に出力してもよい。これにより、冗長化システム1において、実行が停止されたアプリケーションが最初に検知した演算装置10が、そのアプリケーションの実行が維持される。また、アプリケーションの実行の停止を最初に検知した演算装置において、そのアプリケーションが再起動される。そのため、アプリケーションの実行を停止した演算装置10と、アプリケーションを再起動する演算装置10とは同一であることもあるし、異なることもある。
In the
また、機能制御部13は、制御演算部11において新たに起動したアプリケーションを検知したとき、ホワイトリスト情報を参照して、そのアプリケーションが自装置に実行が許可されたアプリケーションであるか否かを判定する。さらに、機能制御部13は、記憶部18に記憶されたホワイトリスト情報が、更新されたか否かを所定時間毎に判定してもよい。更新されたと判定するとき、制御演算部11において実行中のアプリケーションのうち、更新されたホワイトリスト情報を参照して自装置に実行が許可されていないアプリケーションが存在しているか否かを判定してもよい。自装置に実行が許可されていないアプリケーションが存在する場合には、機能制御部13は、そのアプリケーションの実行の停止を示すアプリケーション実行停止情報を生成し、生成したアプリケーション実行停止情報を制御演算部11に出力する。これにより、そのアプリケーションの実行が停止される。その場合、機能制御部13は、そのアプリケーションの実行の停止を示すアラーム情報を生成し、生成したアラーム情報をOPS(Operator Station;監視装置)21(図9)に通信部16を介して送信してもよい。OPS21は、後述するように各種の機器の制御状態をユーザであるエンジニアが監視するための装置である。OPS21は、EMS22と一体に構成されてもよい。これにより、ユーザは、起動したアプリケーションの実行の停止を知得することができる。
なお、機能制御部13は、制御演算部11におけるアプリケーションの実行の停止を検知したとき、記憶部18に記憶した起動アプリケーション情報を、自装置におけるそのアプリケーションの起動状態として起動停止を示す起動アプリケーション情報に更新する。
Further, when the
When the
ブロックデータ処理部14は、ブロックデータに係る処理を実行する。ブロックデータ処理部14は、ブロックデータ保存部141、受信データ解析部142、及び送信データ生成部143を含んで構成される。
The block
ブロックデータ保存部141は、EMS22又は自装置とは異なる他の演算装置10から通信部16を介して受信したブロックデータと自装置の送信データ生成部143が生成したブロックデータを一時的に保存する。
The block data storage unit 141 temporarily stores the block data received via the
受信データ解析部142は、保存されているブロックデータのうち、前時点のブロックデータとして最新のブロックデータをブロックデータ保存部141から読み出す。読み出されたブロックデータが開始時点のブロックデータである場合には、受信データ解析部142は、読み出したブロックデータから開始時点の履歴情報に相当するホワイトリスト情報を抽出し、抽出したホワイトリスト情報を記憶部18に記憶する。なお、読み出したブロックデータに含まれるホワイトリスト情報が、記憶部18に過去に記憶したホワイトリスト情報から変更されていない場合には、受信データ解析部142は、読み出したブロックデータに含まれるホワイトリスト情報を記憶部18に記憶しなくてもよい。つまり、新たなホワイトリスト情報が取得されるとき、記憶部18に記憶されるホワイトリスト情報が新たなホワイトリスト情報に更新されればよい。
また、読み出されたブロックデータが開始時点よりも後の時点のブロックデータである場合には、受信データ解析部142は、最新のブロックデータの履歴情報から最新の起動アプリケーション情報を抽出し、抽出した起動アプリケーション情報を記憶部18に記憶する。
The received
In addition, when the read block data is block data after the start time, the reception
送信データ生成部143は、自装置におけるアプリケーションの起動状態を示す最新の起動アプリケーション情報を記憶部18から読み出す。また、送信データ生成部143は、ブロックデータ保存部141に保存されたブロックデータのうち最新のブロックデータを前時点のブロックデータとして読み出し、読み出したブロックデータと起動アプリケーション情報とに基づいて現時点のブロックデータを生成する。現時点のブロックデータは、前時点のブロックデータに基づく検証値と、その履歴情報に新たな起動アプリケーション情報を要素情報として追加して構成される現時点の履歴情報とを含むデータである。送信データ生成部143は、検証値として、例えば、前時点のブロックデータに含まれるブロックヘッダ、現時点の履歴情報のそれぞれについて所定の一方向関数を用いてハッシュ値を算出する。送信データ生成部143は、生成したブロックデータを自装置とは異なる他の演算装置10に送信し、自装置のブロックデータ保存部141に保存する。これにより、自装置を含む複数の演算装置10の間で送信データ生成部143が生成したブロックデータが同報(ブロードキャスト)され、互いに共有される。
The transmission
通信部16は、ネットワークNWと通信可能に接続され、ネットワークNWに接続された他の機器との間で各種のデータを送受信する。通信部16は、例えば、自装置とは異なる他の演算装置10からブロックデータを受信し、自装置の送信データ生成部143が生成したブロックデータを自装置とは異なる他の演算装置10に同報する。
記憶部18は、自装置の各部が取得した各種のデータ、自装置の各部の処理に用いるデータを記憶する。記憶部18、ブロックデータ保存部141は、例えば、RAM(Random Access Memory)などの記憶媒体を含んで構成される。
The
The
(ホワイトリスト情報)
次に、本実施形態に係るホワイトリスト情報の例について説明する。
図3は、本実施形態に係るホワイトリスト情報の例を示す図である。
図3に示す例では、ホワイトリスト情報は、実行を許可するアプリケーション毎に、アプリケーション名、バージョン、ハッシュ値及び許可する演算装置の情報の組み合わせを、1個又は複数個含んで構成される。各行に示すこの情報の組み合わせが、アプリケーション情報に相当する。アプリケーション名は、個々のアプリケーションの名称である。図3に示す例では、アプリケーション名としてプロセス名が用いられているが、そのアプリケーションを特定することができる名称であれば、略称、通称などが用いられてもよい。バージョンは、そのアプリケーション名に係るアプリケーションのバージョンである。本実施形態では、アプリケーション名が共通であってもバージョンが異なるアプリケーションは、異なるアプリケーションであるものとして扱われる。ハッシュ値は、そのアプリケーションを示すビット列全体のハッシュ値であり、EMS22において設定される。制御演算部11は、このハッシュ値を、実行対象として選択したアプリケーションに基づくハッシュ値とが一致するか否かを照合し、両者が一致するとき、そのアプリケーションが改変されていない正当なアプリケーションであると判定して、両者が一致しないとき、そのアプリケーションが不正なアプリケーションであると判定してもよい。そして、制御演算部11は、正当であると判定したアプリケーションを実行させ、不当であると判定したアプリケーションを実行させない。許可する演算装置の項目には、実行を許可する演算装置の番号が指定される。ALLとは、ブロックデータの共有先の全ての演算装置を示す。
(White list information)
Next, an example of white list information according to the present embodiment will be described.
FIG. 3 is a diagram illustrating an example of white list information according to the present embodiment.
In the example illustrated in FIG. 3, the white list information is configured to include one or a plurality of combinations of application name, version, hash value, and information on a computing device to be permitted for each application that is permitted to be executed. This combination of information shown in each row corresponds to application information. The application name is the name of each application. In the example shown in FIG. 3, the process name is used as the application name, but an abbreviation, common name, or the like may be used as long as the name can identify the application. The version is the version of the application related to the application name. In the present embodiment, even if the application name is common, applications having different versions are treated as different applications. The hash value is a hash value of the entire bit string indicating the application, and is set in the
(起動アプリケーション情報)
次に、本実施形態に係る起動アプリケーション情報の例について説明する。
図4は、本実施形態に係る起動アプリケーション情報の一例を示す図である。図4に示す例では、起動アプリケーション情報は、1つの演算装置10におけるアプリケーション毎の起動状態を示す。起動アプリケーション情報は、アプリケーション毎のアプリケーション名、バージョン、プロセスID(Identifier)及び状態の組み合わせを1個又は複数個含んで構成される。このアプリケーションは、ホワイトリスト情報が示すアプリケーションのいずれかに該当する。プロセスIDは、そのプロセスを示す識別情報である。状態の項目は、そのアプリケーションの起動状態を示し、起動中、起動完了又は停止のいずれかの情報を示す。制御演算部11は、アプリケーションの起動状態が変化する度に、該当するアプリケーションについて、変化前の起動状態の情報を変化後の起動状態を示す情報に更新し、記憶部18に記録する。なお、起動アプリケーション情報とは、後述するブロックデータの履歴情報に記録される情報である。
(Launched application information)
Next, an example of activation application information according to the present embodiment will be described.
FIG. 4 is a diagram illustrating an example of activation application information according to the present embodiment. In the example illustrated in FIG. 4, the startup application information indicates a startup state for each application in one
(ホワイトリスト情報の作成画面)
EMS22は、ホワイトリスト情報を作成する際、その作成画面を表示部に表示させ、作成画面に表されるアプリケーションのうち、受け付けた操作で指定されたアプリケーションを選択する。EMS22は、選択されたアプリケーションを示すアプリケーション情報からなるホワイトリスト情報を構成する。
図5は、本実施形態に係るホワイトリスト情報の作成画面の一例を示す図である。
図5に示すホワイトリスト情報の作成画面は、例えば、EMS22が受け付けた操作によりホワイトリスト作成開始が指示されるときに表示される。ホワイトリスト情報の作成画面には、演算装置10において実行可能とするアプリケーションが縦長の枠内の各行に表される。EMS22は、各アプリケーションの名称の冒頭に表れているチェックボックスが選択操作により指定されるとき、そのアプリケーションを、実行を許可するアプリケーションとして選択する。EMS22は、指定されたアプリケーションに係る四角形内にチェック記号を表示させる。なお、EMS22は、選択されたアプリケーション毎に操作により指定された装置を、実行を許可する演算装置10として定める(図示せず)。そして、クリック操作により「ロード」ボタンが指定されるとき、EMS22は、選択されたアプリケーションを示すホワイトリスト情報を生成する。
(Whitelist information creation screen)
When creating the white list information, the
FIG. 5 is a diagram showing an example of a whitelist information creation screen according to the present embodiment.
The white list information creation screen shown in FIG. 5 is displayed, for example, when the start of white list creation is instructed by an operation accepted by the
(ハードウェア構成情報の作成画面)
EMS22は、ホワイトリスト情報の送信先として複数の演算装置10を指定する際、ハードウェア構成情報の作成画面を表示部に表示させる。
図6は、本実施形態に係るハードウェア構成情報の作成画面の一例を示す図である。
図6に示すハードウェア構成情報の作成画面は、例えば、EMS22が受け付けた操作によりハードウェア構成の設定が指示されるときに表示される。ハードウェア構成情報の作成画面には、EMS22がネットワークNWを介して接続されている機器が表される。EMS22は、右クリック操作により指定された位置に表された機器を送信先として選択し、メニューバーを表示部に表示させる。そして、EMS22は、メニューバーに表示されている機能のうち、ハードウェア構成及びホワイトリスト生成が操作により選択するとき、その機器が送信先として選択される。
(Hardware configuration information creation screen)
When the
FIG. 6 is a diagram illustrating an example of a hardware configuration information creation screen according to the present embodiment.
The hardware configuration information creation screen illustrated in FIG. 6 is displayed, for example, when the hardware configuration setting is instructed by an operation received by the
(ブロックデータ)
次に、本実施形態に係るブロックデータ(第1ブロックデータ)の例について説明する。
図7は、本実施形態に係るブロックデータの例を示す図である。
BD01、BD02、BD03は、開始時点におけるブロックデータ、開始時点よりも後のある時点におけるブロックデータ、その次の時点におけるブロックデータをそれぞれ示す。
ブロックデータは、ブロックヘッダとその時点における履歴情報とを含んで構成される。ブロックヘッダには、前時点のブロックデータに基づく検証値、装置ID、演算回数、検証用データ及び履歴情報の検証値が含まれる。
(Block data)
Next, an example of block data (first block data) according to the present embodiment will be described.
FIG. 7 is a diagram illustrating an example of block data according to the present embodiment.
BD01, BD02, and BD03 indicate block data at the start time, block data at a certain time after the start time, and block data at the next time, respectively.
The block data includes a block header and history information at that time. The block header includes a verification value based on the previous block data, a device ID, the number of calculations, verification data, and verification information of history information.
前ブロックデータの検証値は、前時点におけるブロックデータのブロックヘッダから所定の一方向関数を用いて導出された検証値である。図7に示す例では、検証値として所定のハッシュ関数を用いて算出されるハッシュ値が採用されている。検証値は、現時点における履歴情報に含まれる前時点における履歴情報から得られる検証値に基づいても算出される。従って、双方の検証値が一致するか否かにより、現時点において生成されるブロックデータが正当であるか否かが検証される。
但し、開始時点のブロックデータでは、前時点におけるブロックデータが存在しないため、所定の初期値、例えば、0が検証値として用いられる。
The verification value of the previous block data is a verification value derived using a predetermined one-way function from the block header of the block data at the previous time point. In the example illustrated in FIG. 7, a hash value calculated using a predetermined hash function is employed as the verification value. The verification value is also calculated based on the verification value obtained from the history information at the previous time included in the history information at the current time. Accordingly, whether or not the block data generated at the present time is valid is verified based on whether or not both verification values match.
However, since the block data at the start time does not exist at the start time, a predetermined initial value, for example, 0 is used as the verification value.
装置IDは、そのブロックデータを生成する機器を示す識別情報である。
演算回数は、その機器が実行する演算処理を示す番号である。つまり、演算回数は、演算処理がどの段階まで進行したかを示す稼働タイミングを示す情報である。
検証用データは、演算装置10間で稼働タイミングを調整するために任意に設定されるデータである。自装置とは異なる他の演算装置10よりも稼働タイミングが先行している演算装置10は、その検証用データを用いて他の機能に影響を及ぼさない所定の処理を行う。その処理が行われる時間は、自装置とは異なる他の演算装置10よりも稼働タイミングが先行している時間差に相当する。所定の処理は、継続的な演算を含むことで一定の時間を要するアルゴリズムに基づく処理、例えば、円周率の計算、マイニング用ハッシュ値の計算である。検証用データには、例えば、処理開始時刻、カウンタタイマー値などが含まれる。検証用データには、その他、実行する処理の初期値、処理により得られる中間値などが含まれてもよい。
The device ID is identification information indicating a device that generates the block data.
The number of calculations is a number indicating the calculation process executed by the device. That is, the number of calculations is information indicating the operation timing indicating to which stage the calculation process has progressed.
The verification data is data that is arbitrarily set in order to adjust the operation timing between the
履歴情報の検証値は、現時点までの履歴情報の一方向関数として算出される検証値である。つまり、開始時点の履歴情報の検証値として、ホワイトリスト情報に基づく検証値が用いられる。また、開始時点よりも後の各時点の履歴情報の検証値として、ホワイトリスト情報と現時点までの全起動アプリケーション情報を累積して構成される履歴情報の検証値が用いられる。この検証値はブロックヘッダに含まれ、次の時点における前ブロックデータの検証値の導出に用いられる。従って、前ブロックデータが正当ではないと判定されるとき、現ブロックデータも正当ではないと判定される。 The verification value of history information is a verification value calculated as a one-way function of history information up to the present time. That is, the verification value based on the white list information is used as the verification value of the history information at the start time. In addition, as the verification value of the history information at each time point after the start time point, the verification value of the history information configured by accumulating the white list information and all the activated application information up to the present time is used. This verification value is included in the block header and is used to derive the verification value of the previous block data at the next time point. Therefore, when it is determined that the previous block data is not valid, the current block data is also determined not valid.
開始時点のブロックデータの履歴情報には、ホワイトリスト情報が含まれる。ホワイトリスト情報の各行には、各アプリケーションのアプリケーション情報が含まれる。
開始時点よりも後の時点のブロックデータの履歴情報には、要素情報としてホワイトリスト情報と現時点までの起動アプリケーション情報が含まれる。個々の起動アプリケーション情報には、その起動状態に係る演算装置である稼働サーバの情報が対応付けられる。
The history information of the block data at the start time includes white list information. Each line of the white list information includes application information of each application.
The history information of the block data at a time later than the start time includes white list information and activated application information up to the present time as element information. Each piece of activated application information is associated with information about an active server that is a computing device related to the activated state.
(ホワイトリスト管理・配信処理)
次に、本実施形態に係るホワイトリスト管理・配信処理について説明する。
図8は、本実施形態に係るホワイトリスト管理・配信処理の一例を示すフローチャートである。次の説明では、冗長化システム1は、複数の演算装置10とEMS22の他、OPS21を備えていることを前提とする。
また、以下の処理は、演算装置10の起動中、定期的(例えば、周期制御毎)に実行される。
(ステップS102)演算装置10の演算デバイスは、記憶部18に予め記憶されたブロックデータ処理プログラムを読み出し、読み出したブロックデータ処理プログラムを起動する。これにより、機能制御部13及びブロックデータ処理部14の機能が開始される。これにより、ブロックデータを処理する準備が整う。この段階では、ホワイトリストに記載されたアプリケーションは、実行されない。その後、ステップS104の処理に進む。
(ステップS104)ブロックデータ保存部141は、EMS22から通信部16を介して開始時点のブロックリスト1を受信し、受信したブロックリスト1を保存する。受信データ解析部142は、ブロックデータ保存部141に保存されている最新のブロックリスト1からホワイトリストを抽出し、抽出したホワイトリストを記憶部18に記憶する。その後、ステップS106の処理に進む
(Whitelist management / distribution processing)
Next, white list management / distribution processing according to the present embodiment will be described.
FIG. 8 is a flowchart showing an example of whitelist management / distribution processing according to the present embodiment. In the following description, it is assumed that the
Further, the following processing is executed periodically (for example, for each cycle control) while the
(Step S102) The computing device of the
(Step S104) The block data storage unit 141 receives the
(ステップS106)機能制御部113は、記憶部18に記憶されたホワイトリストを構成するアプリケーション情報が示すアプリケーションのうち、自装置に起動が許可されたアプリケーションを示すアプリケーション起動指示情報を制御演算部11に出力する。これにより、制御演算部11は、ホワイトリスト情報が示すアプリケーションのうち、自装置に起動が許可されたアプリケーションを起動する。その後、ステップS108の処理に進む。
(ステップS108)制御演算部11は、自装置における、そのアプリケーションの起動が完了したとき、起動状態として起動完了を示す起動アプリケーション情報を記憶部18に記憶する。送信データ生成部143は、ブロックデータ保存部141から最新のブロックデータ1を前時点のブロックデータとして読み出し、記憶部18から最新の起動アプリケーション情報を読み出す。送信データ生成部143は、前時点のブロックデータに含まれている履歴情報に、最新の起動アプリケーション情報を追加して現時点の履歴情報を生成する。その後、ステップS110の処理に進む。
(ステップS110)送信データ生成部143は、現時点の履歴情報、現時点の履歴情報の検証値、及び前時点のブロックデータに含まれるブロックヘッダの検証値を含む現時点のブロックデータを送信ブロックデータとして生成する。送信データ生成部143は、生成した送信ブロックデータを、自装置とは異なる他の演算装置10に通信部16を介して送信し、ブロックデータ保存部141に保存する。これにより、送信ブロックデータが演算装置10の間で共有される。その後、ステップS112の処理に進む。
(Step S <b> 106) The function control unit 113 displays application activation instruction information indicating an application permitted to be activated by the own apparatus among the applications indicated by the application information included in the white list stored in the
(Step S108) When the activation of the application in the own device is completed, the
(Step S110) The transmission
(ステップS112)機能制御部113は、自装置の制御演算部11において新たにアプリケーションが起動したか否かを検知する。ここで、起動した状態には、起動中と起動済のいずれも含まれる。起動が検知されるとき(ステップS112 YES)、ステップS114の処理に進む。起動が検知されないとき(ステップS112 NO)、ステップS108に戻り、例えば、次の制御周期をむかえると、ステップS108以降の処理が繰り返される。
(ステップS114)機能制御部13は、起動が検知されたアプリケーションが、記憶部18に記憶されたホワイトリスト情報を参照して、そのアプリケーションが自装置に実行が許可されたアプリケーションであるか否かを判定する。実行が許可されたアプリケーションであると判定されるとき(ステップS114 YES)、ステップS120の処理に進む。実行が許可されていないアプリケーションであると判定されるとき(ステップS114 NO)、ステップS116の処理に進む。
(ステップS116)機能制御部13は、起動が検知されたアプリケーションの実行の停止を示すアプリケーション実行停止情報を制御演算部11に出力する。制御演算部11は、そのアプリケーションが起動中であるときには、その起動を停止し、そのアプリケーションが起動済である場合には、その実行を停止する(ブロック)。その後、ステップS118の処理に進む。
(ステップS118)機能制御部13は、そのアプリケーションの実行の停止を示すアラーム情報を生成し、生成したアラーム情報をOPS21に通信部を介して送信する。その後、ステップS112の処理に進む。
(Step S112) The function control unit 113 detects whether or not an application is newly activated in the
(Step S114) The
(Step S116) The
(Step S118) The
(ステップS120)機能制御部13は、制御演算部11にそのアプリケーションの実行を停止させず、実行を継続させる。その後、ステップS122の処理に進む。
(ステップS122)機能制御部13は、記憶部18に記憶されたホワイトリスト情報が更新されたか否かを判定する。なお、この判定は、前回の処理後に受信した新たなブロックデータに新しいホワイトリスト情報が追加されているかどうかによって判定する。更新後の新しいホワイトリスト情報は、新たに受信したブロックデータの履歴情報において、前回のホワイトリストに対して行われたアプリケーションの起動や停止の履歴を示す複数の起動アプリケーション情報の次に追加されている。ホワイトリスト情報が更新されたとき、機能制御部13は、自装置の制御演算部11において実行中のアプリケーションと、更新されたホワイトリスト情報が示すアプリケーションであって自装置に実行が許可されたアプリケーションとを比較する。
(Step S120) The
(Step S122) The
(ステップS124)ステップS122の処理において、ホワイトリスト情報に変更がないと判定された場合には、そのアプリケーションの実行を停止させず、制御演算部11に実行を継続させる。その後、ステップS108に戻り、例えば次の制御周期をむかえると、ステップS108以降の処理を繰り返す。
(ステップS126)ステップS122の処理において、実行中のアプリケーションに、更新されたホワイトリスト情報が示す実行が許可されたアプリケーション以外のアプリケーションが存在する場合、ステップS128の処理に進む。そのような場合は、自装置に実行が許可されたアプリケーションの一部又は全部の情報が、ホワイトリスト情報から削除される場合に起こりうる。
(ステップS128)機能制御部13は、実行が許可されたアプリケーション以外のアプリケーションの実行の停止を示すアプリケーション実行停止情報を制御演算部11に出力する。これにより、そのアプリケーションの実行を停止させる。その後、ステップS108に戻り、例えば次の制御周期をむかえると、ステップS108以降の処理を繰り返す。
(ステップS130)ステップS120の処理において、更新されたホワイトリスト情報が示す自装置に実行が許可されたアプリケーションに新たに追加されたアプリケーションが存在する場合、制御演算部11にそのアプリケーションの実行を停止させず、実行を継続させる。その後、ステップS108に戻り、例えば次の制御周期をむかえると、ステップS108以降の処理を繰り返す。
(Step S124) If it is determined in step S122 that there is no change in the white list information, the
(Step S126) In the process of step S122, when there is an application other than the application permitted to be executed indicated by the updated white list information in the application being executed, the process proceeds to step S128. Such a case may occur when a part or all of the application permitted to be executed by the own device is deleted from the white list information.
(Step S128) The
(Step S130) In the process of Step S120, when there is an application newly added to the application permitted to be executed in the own device indicated by the updated white list information, the control
このように、ホワイトリスト情報をブロックデータに格納し、開始時点の履歴情報の検証値と共に次のブロックデータ内に反映させることにより、サイバー攻撃によるホワイトリスト情報の改ざん防止が可能になる。つまり、攻撃者は、ホワイトリスト情報を改ざんし自身の悪意あるプログラムに起動許可を与える企図を企てても、開始時点からのすべてのブロックデータを変更し、かつ履歴情報の検証値も再計算し反映する必要がある。さらに各演算装置がブロックデータ保存部に保存するブロックデータも全装置に亘り改ざんすることも必要になる。そして、すべてに成功しないとき、ユーザは履歴情報の検証値から改ざんをきわめて容易に検出できる。この改ざんの検出により、攻撃者の企図が発覚する。従って、本手法により、ホワイトリスト情報の改ざんをけん制する効果が生じる。 In this manner, by storing the white list information in the block data and reflecting it in the next block data together with the verification value of the history information at the start time, it becomes possible to prevent the white list information from being falsified by a cyber attack. In other words, even if the attacker falsifies the whitelist information and attempts to grant start permission to his malicious program, he changes all block data from the beginning and recalculates the verification value of the history information. Need to be reflected. Furthermore, the block data stored in the block data storage unit by each arithmetic device must be altered throughout the entire device. And when all are not successful, the user can detect tampering very easily from the verification value of the history information. By detecting this alteration, the attacker's intention is discovered. Therefore, this method has an effect of suppressing falsification of the white list information.
(変形例)
なお、上述では、ホワイトリスト情報が、ブログラムプロセス毎の実行が許可されたアプリケーションプログラムを示す場合を例にしたが、これには限られない。ホワイトリスト情報は、制御コマンド毎の実行が許可されたプログラムを示す情報であってもよい。その場合には、上述の例のようにプログラムプロセス単位ではなく、制御コマンド単位で実行が制御される。また、ホワイトリスト情報が示す各制御コマンドには、その実行に用いるためのパラメータの情報が付随していてもよい。制御演算部11は、その制御コマンドを実行するとき、付随した情報が示すパラメータを用いて、その制御コマンドの処理を実行する。
(Modification)
In the above description, the case where the white list information indicates an application program that is permitted to be executed for each program process is taken as an example, but the present invention is not limited to this. The white list information may be information indicating a program that is permitted to be executed for each control command. In such a case, execution is controlled in units of control commands, not in units of program processes as in the above example. Further, each control command indicated by the white list information may be accompanied by parameter information for use in the execution. When executing the control command, the
なお、正規のアプリケーションプログラムに、不正な処理を実行するコードが含まれている場合には、上述の例のようにプログラムプロセス毎の制御では、その不正な処理の実行を防御することができないことがある。例えば、SQL(Structured Query Language)インジェクション、OS(Operating System)コマンドインジェクションなどのインジェクション攻撃が制御コマンドのレベルで行われる場合には、その攻撃に対する防御がなされない。しかしながら、制御コマンド単位でその実行の制御を行うことで、不正な処理の実行を阻止することができる。そのため、冗長化システム1のサイバーセキュリティを確保することができる。
In addition, when a legitimate application program includes a code for executing an illegal process, the control for each program process cannot prevent the execution of the illegal process as in the above example. There is. For example, when an injection attack such as SQL (Structured Query Language) injection or OS (Operating System) command injection is performed at the control command level, the attack is not protected. However, execution of unauthorized processing can be prevented by controlling the execution in units of control commands. Therefore, the cyber security of the
なお、上述では、演算装置10が主にサーバ装置である場合を例にしたが、これには限られない。例えば、図9に示す冗長化システム2の制御装置(LS:Logic Solver)24、入出力装置(IO:Input Output)28は、演算装置10と同様の構成を備えてもよい。制御装置24は、冗長化システム2が制御対象とするプラントの動作を制御するための装置である。入出力装置28は、プラントに各種の出力データを出力し、プラントから各種の入力データを入力するための装置である。ここで、制御装置24、入出力装置28は、それぞれ演算デバイスを備え、演算デバイスが所定のプログラムに記述された命令が示す処理を実行する。
In the above description, the case where the
冗長化システム2は、OPS21、EMS22、NA(Network Adaptor;ネットワークアダプタ)23、複数の制御装置24a〜24d、IO(Input Output;入出力)スキャナ25、IOネットワーク26、IOアダプタ27a、27b、及び入出力装置28aa〜28aI、28ba〜28bJを含んで構成される制御システムである。制御装置24a〜24d、入出力装置28aa〜28aI、28ba〜28bJは、それぞれ互いに共通の構成を備える。制御装置24a等のa等の符号、入出力装置28aa等のaa等の符号は、個々の装置を識別するための符号である。
The
以上に説明したように、本実施形態に係る冗長化システム1、2は、複数の演算装置(例えば、演算装置10、制御装置24、入出力装置28等)と、実行が許可されたプログラムを示すプログラムリスト情報(例えば、ホワイトリスト情報)を含む開始時点のブロックデータを前記複数の演算装置に提供する管理装置(例えば、EMS22)と、を備える情報処理システムである。複数の演算装置のそれぞれは、制御部(例えば、機能制御部13)、データ生成部(例えば、送信データ生成部143)及び通信部(例えば、通信部16)を備える。制御部は、プログラムリスト情報が示すプログラムに基づく処理の実行の許否を判定する。データ生成部は、前時点のブロックデータに基づく検証値と、処理の起動状態を示す起動プログラム情報(例えば、起動アプリケーション情報)が現時点まで累積された履歴情報と、を含む現時点のブロックデータを生成する。通信部は、ブロックデータを複数の演算装置間で同報する。
As described above, the
この構成によれば、複数の演算装置間で同報されるブロックデータが共有される。そのため、送信対象の演算装置の数の増加による伝送量の増加が、個々の演算装置を特定してブロックデータが伝送される場合よりも抑制されるため、ブロックデータが効率的に共有される。また、ブロックデータに含まれるプログラムリスト情報の正当性を認証するための認証サーバを設置しなくても、冗長化された個々の演算装置の分散処理を維持しながら、ブロックデータに含まれるプログラムリスト情報に基づいて、そのプログラムに基づく処理の起動を制御することができる。実行が許可されない不正なプログラムの起動が抑制されことで、冗長化システムの信頼性が向上する。
また、ブロックデータに含まれる起動プログラム情報がネットワークを介して複数の演算装置間で共有される。そのため、ブロックデータを参照して、実行が許可されていないプログラムに基づく処理の実行の検知及びその実行の停止が効率よく行われるので、サイバーセキュリティが確保される。
According to this configuration, block data broadcast is shared among a plurality of arithmetic devices. For this reason, an increase in the transmission amount due to an increase in the number of computing devices to be transmitted is suppressed as compared with the case where block data is transmitted by specifying individual computing devices, so that the block data is efficiently shared. In addition, the program list included in the block data can be maintained while maintaining the distributed processing of each redundant computing device without installing an authentication server for authenticating the validity of the program list information included in the block data. Based on the information, it is possible to control activation of processing based on the program. By suppressing the activation of unauthorized programs that are not allowed to be executed, the reliability of the redundant system is improved.
In addition, activation program information included in the block data is shared among a plurality of arithmetic devices via a network. Therefore, referring to the block data, the detection of the execution of the process based on the program that is not permitted to execute and the stop of the execution are efficiently performed, so that cyber security is ensured.
<第二実施形態>
次に、本発明の第二実施形態について説明する。第一実施形態と同一の構成については、同一の符号を付してその説明を援用する。以下の説明では、主に第一実施形態の冗長化システム1との差異点について述べる。
<Second embodiment>
Next, a second embodiment of the present invention will be described. About the same structure as 1st embodiment, the same code | symbol is attached | subjected and the description is used. In the following description, differences from the
本実施形態に係るEMS22(図1)は、受け付けた操作に基づいて個々の演算装置10へのアクセスが許可されたユーザを示すユーザ情報を1個又は複数個含むホワイトリスト情報をさらに生成する。以下の説明では、このホワイトリスト情報を、ユーザリスト情報と呼んで第1の実施形態に係るホワイトリスト情報と区別する。ユーザ情報には、各ユーザの識別情報のハッシュ値、そのユーザの認証情報のハッシュ値、及びアクセス許可機能の情報が含まれる。ユーザの識別情報、認証情報として、例えば、ユーザID、パスワード、がそれぞれ用いられる。アクセス許可機能は、そのユーザにアクセスを許可する機能である。EMS22は、生成したユーザリスト情報を含むように開始時点のブロックデータを生成する。以下の説明では、ユーザリスト情報を含むブロックデータを、第2ブロックデータと呼んで第1の実施形態に係るブロックデータと区別する。開始時点の第2ブロックデータは、ユーザリスト情報を開始時点の履歴情報とし、所定の検証値の初期値、及び開始時点の履歴情報を含んで構成される。第2ブロックデータの具体例については後述する。EMS22は、生成した開始時点の第2ブロックデータを演算装置10にネットワークNWを介して送信する。
The EMS 22 (FIG. 1) according to the present embodiment further generates white list information including one or a plurality of user information indicating users who are permitted to access each
次に、本実施形態に演算装置10(図2)の構成について説明する。本実施形態に係る機能制御部13は、自装置の外部からの入力情報に基づいてユーザアクセス情報を取得する。ユーザアクセス情報は、ユーザによる演算装置10が有する機能へのアクセスを示す情報である。ユーザアクセス情報には、例えば、アクセスユーザの識別情報のハッシュ値、アクセスユーザの認証情報のハッシュ値及びアクセス機能の情報が含まれる。アクセスユーザとは、アクセスを行うユーザである。アクセス機能とは、アクセスユーザが利用しようとする機能である。機能制御部13は、入力情報を取得する際、例えば、自装置が備える操作入力部(図示せず)が受け付けた操作によりアクセスユーザの識別情報、アクセスユーザの認証情報及びアクセス機能の情報を特定する。そして、機能制御部13は、特定したアクセスユーザの識別情報とアクセスユーザの認証情報のそれぞれの検証値を算出する。また、機能制御部13は、EMS22もしくはネットワークNWに接続された他の機器から通信部16を介して受信した操作又は設定情報が示すアクセスユーザの識別情報の検証値、アクセスユーザの認証情報の検証値及びアクセス機能の情報を取得してもよい。
Next, the configuration of the arithmetic device 10 (FIG. 2) will be described in this embodiment. The
機能制御部13は、記憶部18に記憶されたユーザリスト情報を参照して、取得したユーザアクセス情報についてユーザ認証処理を行う。ここで、機能制御部13は、ユーザリスト情報に含まれるユーザの識別情報のハッシュ値とユーザの認証情報のハッシュ値のセット毎に、ユーザアクセス情報に含まれるアクセスユーザの識別情報のハッシュ値とアクセスユーザの認証情報のハッシュ値とをそれぞれ照合する。機能制御部13は、ユーザアクセス情報に含まれるアクセスユーザの識別情報のハッシュ値とアクセスユーザの認証情報のハッシュ値とそれぞれ一致する、ユーザの識別情報のハッシュ値とユーザの認証情報のセットがユーザリスト情報に存在するか否かを判定する。存在すると判定するとき、機能制御部13は、さらにユーザアクセス情報に含まれるアクセス機能が、一致すると判定したセットに対応付けられたアクセス許可機能に該当するか否かを判定する。存在しないと判定するとき、機能制御部13は、そのユーザアクセス情報についてユーザ認証失敗と判定し、アクセスを許可しない。
The
また、機能制御部13は、ユーザアクセス情報に含まれるアクセス機能が、そのセットに対応付けられたアクセス許可機能に該当すると判定するとき、そのユーザアクセス情報についてユーザ認証成功と判定し、アクセスを許可する。機能制御部13は、アクセス機能が、そのセットに対応付けられたアクセス許可機能に該当しないと判定するとき、そのユーザアクセス情報についてユーザ認証失敗と判定し、アクセスを許可しない。機能制御部13は、その時点の日時を示すアクセス日時、アクセスユーザ、アクセス機能及びアクセス成否を示すアクセス状態情報を生成し、生成したアクセス状態情報を記憶部18に記憶する。機能制御部13は、アクセスを許可した機能を示す機能情報を制御演算部11に出力する。制御演算部11は、機能制御部13から入力される機能情報が示す機能を実現するためのプログラムを記憶部18から読み出し、読み出したプログラムを起動する。これにより、アクセスが許可された機能が実行される。
Further, when the
ブロックデータ保存部141は、EMS22又は自装置とは異なる他の演算装置10から通信部16を介して受信した第2ブロックデータと自装置の送信データ生成部143が生成した第2ブロックデータを一時的に保存する。
受信データ解析部142は、ブロックデータ保存部141に記憶されている第2ブロックデータのうち最新の第2ブロックデータを読み出す。読み出した最新の第2ブロックデータが、開始時点の第2ブロックデータである場合には、受信データ解析部142は、その第2ブロックデータから開始時点の履歴情報に相当するユーザリスト情報を抽出し、抽出したユーザリスト情報を記憶部18に記憶する。ユーザリスト情報の記憶は、必ずしも新たな第2ブロックデータの読出しの度に行われなくてもよい。新たなユーザリスト情報が取得されるとき、記憶部18に記憶されるユーザリスト情報が新たなユーザリスト情報に更新されればよい。
ブロックデータ保存部141から読み出した最新の第2ブロックデータが、開始時点よりも後の時点の第2ブロックデータである場合には、受信データ解析部142は、最新の第2ブロックデータの履歴情報から、最新のアクセス状態情報を抽出し、抽出したアクセス状態情報を記憶部18に記憶する。
The block data storage unit 141 temporarily stores the second block data received from the
The reception
When the latest second block data read from the block data storage unit 141 is the second block data at a time point after the start time point, the reception
送信データ生成部143は、自装置におけるユーザからのアクセス状態を示す最新のアクセス状態情報を記憶部18から読み出す。また、送信データ生成部143は、ブロックデータ保存部141に保存された第2ブロックデータのうち最新の第2ブロックデータを前時点の第2ブロックデータとして読み出し、読み出した第2ブロックデータとアクセス状態情報とに基づいて現時点の第2ブロックデータを生成する。現時点の第2ブロックデータは、前時点の第2ブロックデータに基づく検証値と、その履歴情報に新たなアクセス状態情報を要素情報として追加して構成される現時点の履歴情報とを含むデータである。送信データ生成部143は、検証値として、例えば、前時点の第2ブロックデータに含まれるブロックヘッダ、現時点の履歴情報のそれぞれについて所定の一方向関数を用いてハッシュ値を算出する。送信データ生成部143は、生成した第2ブロックデータを自装置とは異なる他の演算装置10に送信し、自装置のブロックデータ保存部141に保存する。これにより、自装置を含む複数の演算装置10の間で送信データ生成部143が生成した第2ブロックデータが同報され、互いに共有される。
The transmission
(ブロックデータ)
次に、本実施形態に係るブロックデータの例について説明する。
図10は、本実施形態に係るブロックデータの例を示す図である。
BD21、BD22、BD23は、開始時点における第2ブロックデータ、開始時点よりも後の時点における第2ブロックデータ、その次の時点における第2ブロックデータをそれぞれ示す。
第2ブロックデータは、ブロックヘッダとその時点における履歴情報とを含んで構成される。第2ブロックヘッダには、前時点のブロックデータに基づく検証値、装置ID、演算回数、検証用データ及び履歴情報の検証値が含まれる。
(Block data)
Next, an example of block data according to the present embodiment will be described.
FIG. 10 is a diagram illustrating an example of block data according to the present embodiment.
BD21, BD22, and BD23 indicate second block data at the start time, second block data at a time later than the start time, and second block data at the next time, respectively.
The second block data includes a block header and history information at that time. The second block header includes a verification value based on the block data at the previous time point, a device ID, the number of operations, verification data, and a verification value of history information.
本実施形態では、履歴情報の検証値として、開始時点の第2ブロックデータについてはユーザリスト情報のハッシュ値が用いられ、それよりも後の各時点の履歴情報として、ユーザリスト情報と現時点までの全ユーザアクセス状態情報を累積して構成される履歴情報のハッシュ値が用いられる。 In the present embodiment, the hash value of the user list information is used for the second block data at the start time as the verification value of the history information, and the user list information and the current time information as the history information at each subsequent time point are used. A hash value of history information configured by accumulating all user access status information is used.
開始時点の第2ブロックデータの履歴情報には、ユーザリスト情報が含まれる。ユーザリスト情報の各行には、各ユーザのユーザ情報が含まれる。ユーザ情報には、各ユーザのユーザIDのハッシュ値、そのユーザのパスワードのハッシュ値、及びアクセスできる機能(アクセス許可機能)の情報が含まれる。
開始時点よりも後の時点の第2ブロックデータの履歴情報には、要素情報としてユーザリスト情報と現時点までのアクセス状態情報が含まれる。個々のアクセス状態情報には、アクセス日時、アクセスユーザ、アクセス機能、及びアクセス成否の情報が含まれる。アクセス機能には、その機能を有する演算装置10の情報が含まれてもよい。
なお、本実施形態及び変形例に係る冗長化システム1の構成は、冗長化システム2に適用されてもよい。ここで、制御装置24、入出力装置28は、それぞれ本実施形態に係る演算装置10と同様の構成を備えてもよい。
The history information of the second block data at the start time includes user list information. Each line of the user list information includes user information of each user. The user information includes a hash value of the user ID of each user, a hash value of the password of the user, and information on an accessible function (access permission function).
The history information of the second block data at a time later than the start time includes user list information and access status information up to the current time as element information. The individual access status information includes access date / time, access user, access function, and access success / failure information. The access function may include information on the
Note that the configuration of the
以上に説明したように、本実施形態に係る冗長化システム(例えば、冗長化システム1、2)において、管理装置(例えば、EMS22)は、所定の機能へのアクセスが許可されたユーザを示すユーザリスト情報を含む開始時点の第2ブロックデータを複数の演算装置に提供する。各演算装置の制御部(例えば、機能制御部13)は、ユーザリスト情報に基づいてユーザからのその機能へのアクセスの許否を判定する。データ生成部(例えば、送信データ生成部143)は、 前時点の第2ブロックデータに基づく検証値と、その機能へのアクセス結果を示すアクセス状態情報が現時点まで累積された履歴情報であるアクセス履歴情報と、を含む現時点の第2ブロックデータを生成する。通信部(例えば、通信部16)は、第2ブロックデータを複数の演算装置間で同報する。
As described above, in the redundant system (for example,
この構成により、ユーザリスト情報を含む第2ブロックデータが複数の演算装置間で分散処理を維持しながら同報される。そのため、冗長化システムにおいて認証局を設置しなくても、演算装置は、そのユーザリスト情報を用いてユーザ認証処理を行うことができる。そのため、サイバー攻撃等による単一障害点となりうる認証局が設置される場合よりも、冗長化システムの信頼性が向上する。
また、各演算装置10におけるアクセス状態情報を複数の演算装置間を接続するネットワーク上で取得することができるので、アクセス状態情報が示すアクセス日時、アクセスユーザ、アクセス機能などの情報をネットワークを介して入手することができる。そのため、ユーザのアクセス否認に対する検証の手がかりが得られる。その検証によりユーザの行動を牽制することで、サイバーセキュリティが確保される。
With this configuration, the second block data including the user list information is broadcast while maintaining distributed processing among a plurality of arithmetic devices. Therefore, the arithmetic unit can perform user authentication processing using the user list information without installing a certificate authority in the redundant system. Therefore, the reliability of the redundant system is improved as compared with the case where a certificate authority that can be a single point of failure due to a cyber attack or the like is installed.
Further, since the access status information in each
<第三実施形態>
次に、本発明の第三実施形態について説明する。上述の実施形態と同一の構成については、同一の符号を付してその説明を援用する。以下の説明では、主に第一実施形態の冗長化システム1(図1)との差異点について述べる。本実施形態に係る冗長化システム1は、複数の演算装置10とEMS22の他、OPS21を備える。
まず、本実施形態に係る演算装置10の機能構成について説明する。図11は、本実施形態に係る演算装置10の一構成例を示すブロック図である。
本実施形態に係る演算装置10は、制御演算部11、検出部12、機能制御部13、ブロックデータ処理部14、通信部16、及び記憶部18を含んで構成される。
<Third embodiment>
Next, a third embodiment of the present invention will be described. About the same structure as the above-mentioned embodiment, the same code | symbol is attached | subjected and the description is used. In the following description, differences from the redundancy system 1 (FIG. 1) of the first embodiment will be mainly described. The
First, a functional configuration of the
The
検出部12は、自装置における脅威を検出する。脅威とは、サイバーセキュリティが損なわれうる事象を意味する。検出部12は、脅威として、例えば、ログイン連続失敗、未定義ユーザの連続アクセス、未定義アドレスからのデータ受信、受信データ量の異常、未定義コマンドの受信、定義外サイズのパケットデータ受信などの事象を検出する。ログイン連続失敗とは、所定期間(例えば、1〜5秒)内に同一のアドレスで指定される機器からのログイン要求に応じたユーザ認証の失敗が複数回発生することである。未定義ユーザの連続アクセスとは、アクセスが許可されたユーザ以外のユーザからのアクセス要求が所定期間内に複数回発生することである。未定義アドレスからのデータ受信とは、予め設定アドレス以外の他のアドレスで指定された機器からデータを受信することである。受信データ量の異常とは、他の機器から受信するデータの情報量が、他の機能の実行に影響を及ぼさずに受信できる情報量の上限よりも大きいことである。受信データ量の異常は、例えば、DoS(Denial of Service)攻撃を受けているときに生じうる。未定義コマンドの受信とは、演算装置10の機能を指示するためのコマンドとして予め設定されていないコマンドを受信することである。定義外サイズのパケットデータ受信とは、予め設定されていない情報量を有するパケットデータを受信することである。検出部12は、脅威を検出した日時と、その脅威を示す脅威IDを示す脅威情報を生成し、生成した脅威情報を記憶部18に記憶する。ここで、検出部12は、記憶部18に予め記憶された脅威対処テーブル(図12)を参照して、検出した脅威を示す脅威IDを特定する。
The
検出部12は、特定した脅威IDをOPS21に通信部16を介して送信してもよい。もしくは、後述するように、送信データ生成部143は、その脅威IDが含まれる第3ブロックデータをOPS21に通信部16を介して送信してもよい。脅威対処テーブルは、各項目の脅威に脅威ID、脅威レベル及び推奨対策情報が対応付けて構成される脅威リスト情報である。脅威レベルは、その影響の度合いを定量化した数値であり、その数値が大きいほど影響が大きいことを示す。推奨対策情報は、脅威に対する望ましい対策、つまり、その脅威の抑止、その脅威による有害な事象の抑止、被害拡大の防止、再発防止、のいずれか又はその組み合わせを示す情報である。脅威対処テーブルの具体例については、後述する。
The
OPS21は、予め記憶させておいた脅威対処テーブルを参照し、演算装置10から受信した脅威IDに対応する脅威レベルと推奨対策情報を特定し、特定した脅威レベルと推奨対策情報を表示部に表示させてもよい。脅威レベルと推奨対策情報は、ダイアログ画面として表示されてもよい。ダイアログ画面には、推奨対策の実行を指示するための実行ボタンが含まれてもよい。OPS21は、操作によりその推奨対策の実行が指示されるとき、その実行の要求を示す推奨対策実行要求情報を、推奨対策情報の応答として演算装置10に送信してもよい。演算装置10の機能制御部13は、OPS21から通信部16を介して推奨対策実行要求情報を受信するとき、その推奨対策実行要求情報が示す推奨対策を実行する。
The
なお、記憶部18には、自装置とは他の演算装置10から受信した最新の第3ブロックデータに含まれる新たな脅威情報が記憶される場合がある。その場合には、機能制御部13は、脅威対処テーブルを参照し、その脅威情報に含まれる脅威IDに対応する推奨対策情報を特定し、特定した推奨対策情報が示す推奨対策を実行してもよい。
機能制御部13は、推奨対策を実行した場合には、その実行を示す推奨対策実行情報を記憶部18に記憶してもよい。なお、特定した脅威レベルが所定の脅威レベルの閾値よりも高い場合には、検出部12は、その推奨対策情報が示す推奨対策の実行を示す推奨対策実行対策要求を、機能制御部13に出力することで、その推奨対策を実行させてもよい。
Note that the
When executing the recommended measure, the
ブロックデータ保存部141は、自装置とは異なる他の演算装置10から通信部16を介して受信した第3ブロックデータと自装置の送信データ生成部143が生成した第3ブロックデータを一時的に保存する。
受信データ解析部142は、ブロックデータ保存部141に保存されている第3ブロックデータのうち最新の第3ブロックデータを読み出す。受信データ解析部142は、読み出した第3ブロックデータからその時点の履歴情報のうち最新の脅威情報を抽出し、抽出した脅威情報を記憶部18に記憶する。抽出した脅威情報に含まれる脅威IDは、自装置とは異なる他の演算装置10において検出された新たな脅威を示す。
The block data storage unit 141 temporarily stores the third block data received from the other
The reception
送信データ生成部143は、自装置において検出された脅威を示す最新の脅威情報を記憶部18から読み出す。なお、その脅威に対する最新の推奨対策実行情報が記憶部18に記憶されている場合には、送信データ生成部143は、その推奨対策実行情報を脅威情報に追加してもよい。従って、脅威情報に、その脅威に対する推奨対策の実行の旨の情報が反映される。また、送信データ生成部143は、ブロックデータ保存部141に保存された第3ブロックデータのうち最新の第3ブロックデータを前時点の第3ブロックデータとして読み出し、読み出した第3ブロックデータと脅威情報とに基づいて現時点の第3ブロックデータを生成する。現時点の第3ブロックデータは、前時点の第3ブロックデータに基づく検証値と、その履歴情報に新たな脅威情報を要素情報として追加して構成される現時点の履歴情報とを含むデータである。送信データ生成部143は、検証値として、例えば、前時点の第3ブロックデータに含まれるブロックヘッダ、現時点の履歴情報のそれぞれについて所定の一方向関数を用いてハッシュ値を算出する。送信データ生成部143は、生成した第3ブロックデータを自装置とは異なる他の演算装置10に送信し、自装置のブロックデータ保存部141に保存する。これにより、自装置を含む複数の演算装置10間で送信データ生成部143が生成した第3ブロックデータが同報され、互いに共有される。また、送信データ生成部143は、生成した第3ブロックデータをOPS21に送信してもよい。
The transmission
(脅威対処テーブル)
次に、本実施形態に係る脅威対処テーブルについて説明する。
図12は、本実施形態に係る脅威対処テーブルの一例を示す図である。
脅威対処テーブルは、各項目の脅威、脅威ID、脅威レベル及び推奨対策の情報の組み合わせである脅威項目情報を1個又は複数個含んで構成される脅威リスト情報である。
図12の第2行に示す例では、脅威「ログイン連続失敗」に、脅威ID「Threat1」、脅威レベル「3」及び推奨対策「ユーザのアクセス許可を失効させる」を対応付けられ、脅威項目情報が形成されている。
(Threat Response Table)
Next, the threat countermeasure table according to the present embodiment will be described.
FIG. 12 is a diagram showing an example of a threat countermeasure table according to the present embodiment.
The threat countermeasure table is threat list information including one or a plurality of threat item information that is a combination of threat information, threat ID, threat level, and recommended countermeasure information for each item.
In the example shown in the second row of FIG. 12, the threat “login continuous failure” is associated with the threat ID “
(ブロックデータ)
次に、本実施形態に係るブロックデータについて説明する。
図13は、本実施形態に係るブロックデータの例を示す図である。
BD41、BD42、BD43は、ある時点における第3ブロックデータ、次の時点における第3ブロックデータ、その次の時点における第3ブロックデータをそれぞれ示す。
第3ブロックデータは、ブロックヘッダとその時点における履歴情報とを含んで構成される。第3ブロックヘッダには、前時点のブロックデータに基づく検証値、装置ID、演算回数、検証用データ及び履歴情報の検証値が含まれる。
本実施形態では、履歴情報の検証値として、開始時点から現時点までの全脅威情報を累積して構成される履歴情報のハッシュ値が用いられる。第3ブロックデータの履歴情報には、要素情報として現時点までの脅威情報が含まれる。個々の脅威情報には、日時と脅威IDが含まれる。
(Block data)
Next, block data according to the present embodiment will be described.
FIG. 13 is a diagram illustrating an example of block data according to the present embodiment.
BD41, BD42, and BD43 respectively indicate third block data at a certain time point, third block data at the next time point, and third block data at the next time point.
The third block data includes a block header and history information at that time. The third block header includes a verification value based on block data at the previous time point, a device ID, the number of operations, verification data, and a verification value of history information.
In this embodiment, a hash value of history information configured by accumulating all threat information from the start time to the present time is used as a verification value of history information. The history information of the third block data includes threat information up to the present time as element information. Each threat information includes a date and a threat ID.
(変形例)
上述した例では、各演算装置10の記憶部18に脅威対処テーブルを予め記憶しておき、検出部12が、その脅威対処テーブルを参照して、検出した脅威を特定する場合を例にしたが、これには限られない。次に説明する変形例において、EMS22は、受け付けた操作に基づいて脅威対処テーブルを生成してもよい。EMS22は、生成した脅威対処テーブルを含むように開始時点の第3ブロックデータを生成する。開始時点の第3ブロックデータは、脅威対処テーブルを開始時点の履歴情報とし、所定の検証値の初期値、及び開始時点の履歴情報を含んで構成される。EMS22は、生成した開始時点の第3ブロックデータを演算装置10にネットワークNWを介して送信する。
(Modification)
In the example described above, the threat handling table is stored in advance in the
ブロックデータ保存部141は、EMS22から通信部16を介して受信した第3ブロックデータを一時的に保存する。
受信データ解析部142は、ブロックデータ保存部141に記憶されている第3ブロックデータのうち最新の第3ブロックデータを読み出す。読み出した最新の第3ブロックデータが、開始時点の第3ブロックデータである場合には、受信データ解析部142は、その第3ブロックデータから開始時点の履歴情報に相当する脅威対処テーブルを抽出し、抽出した脅威対処テーブルを記憶部18に記憶する。脅威リスト情報の記憶は、必ずしも新たな第3ブロックデータの読出しの度に行われなくてもよい。新たな脅威対処テーブルが取得されるとき、記憶部18に記憶される脅威対処テーブルが新たな脅威対処テーブルに更新されればよい。上述したように、記憶部18に記憶される脅威対処テーブルが脅威リスト情報として、検出された脅威の特定に用いられる。
The block data storage unit 141 temporarily stores the third block data received from the
The reception
(ブロックデータ)
次に、本変形例に係るブロックデータについて説明する。
図14は、本変形例に係るブロックデータの例を示す図である。
BD61、BD62、BD63は、開始時点における第3ブロックデータ、開始時点よりも後の時点における第3ブロックデータ、次の時点における第3ブロックデータをそれぞれ示す。
本変形例では、開始時点における第3ブロックデータでは、前時点のブロックデータに基づく検証値に代えて、所定の初期値が用いられている。また、履歴情報の検証値として、脅威リスト情報、つまり脅威対処テーブルのハッシュ値が用いられる。開始時点の第3ブロックデータの履歴情報には、脅威対象テーブルが含まれる。脅威リスト情報の各行に、各項目の脅威項目情報が含まれる。脅威項目情報は、それぞれ脅威、脅威ID、脅威レベル及び推奨対策の情報が含まれる。開始時点よりも後の時点における第3ブロックデータの履歴情報には、要素情報として障害リスト情報と、現時点までの脅威情報が含まれる。
なお、本実施形態及び変形例に係る冗長化システム1の構成は、冗長化システム2に適用されてもよい。ここで、制御装置24、入出力装置28は、それぞれ本実施形態に係る演算装置10と同様の構成を備えてもよい。
(Block data)
Next, block data according to this modification will be described.
FIG. 14 is a diagram illustrating an example of block data according to the present modification.
BD61, BD62, and BD63 respectively indicate third block data at the start time, third block data at a time later than the start time, and third block data at the next time.
In this modification, in the third block data at the start time, a predetermined initial value is used instead of the verification value based on the block data at the previous time. In addition, threat list information, that is, a hash value of a threat countermeasure table is used as a verification value of history information. The history information of the third block data at the start time includes a threat target table. Each line of the threat list information includes threat item information of each item. The threat item information includes information on a threat, a threat ID, a threat level, and recommended measures, respectively. The history information of the third block data at a time later than the start time includes failure list information and threat information up to the present time as element information.
Note that the configuration of the
以上に説明したように、本実施形態に係る冗長化システム(例えば、冗長化システム1、2)において、複数の演算装置(例えば、演算装置10、制御装置24、入出力装置28)のそれぞれは、検出部(例えば、検出部12)、データ生成部(例えば、送信データ生成部143)及び通信部(例えば、通信部16)を備える。検出部は、サイバーセキュリティが損われうる事象(例えば、脅威)を検出する。データ生成部は、前時点の第3ブロックデータに基づく検証値と、検出された事象を示す事象情報(例えば、脅威情報)が現時点まで累積された履歴情報である事象履歴情報と、を含む現時点の第3ブロックデータを生成する。通信部は、第3ブロックデータを複数の演算装置間で同報する。
As described above, in the redundant system (for example,
この構成によれば、複数の演算装置10間でサイバーセキュリティが損なわれうる事象を示す事象情報を含む第3ブロックデータが分散処理を維持しながら共有される。例えば、脅威としてサイバー攻撃の兆候となりうる事象の発生が、複数の演算装置10間で相互に、それらの発生が通知される。そのため、検出された脅威に対する対策の実行により、さらなる脅威、有害事象もしくは被害の拡大などを防止することができる。そのため、冗長化システムにおけるサイバーセキュリティが確保される。
According to this configuration, the third block data including event information indicating an event in which cyber security can be impaired is shared among the plurality of
<第四実施形態>
次に、本発明の第四実施形態について説明する。上述の実施形態と同一の構成については、同一の符号を付してその説明を援用する。以下の説明では、主に第一実施形態の冗長化システム1(図1)との差異点について述べる。
<Fourth embodiment>
Next, a fourth embodiment of the present invention will be described. About the same structure as the above-mentioned embodiment, the same code | symbol is attached | subjected and the description is used. In the following description, differences from the redundancy system 1 (FIG. 1) of the first embodiment will be mainly described.
本実施形態に係るEMS22は、受け付けた操作に基づいて、パッチとその所在を示すパッチ情報を生成する。パッチとは、プログラムの一部又は全部を更新してバグ修正や機能変更を行うための修正データである。本実施形態では、パッチは、少なくともいずれか1台の演算装置10において実行されるプログラムの修正データである。かかる修正データは、主にサイバーセキュリティ上の脆弱性を解消又は低減するためのセキュリティパッチである。EMS22は、各パッチの所在と適用が許可される演算装置10の情報を示すパッチ情報を1個又は複数個含むホワイトリスト情報をさらに生成する。以下の説明では、このホワイトリスト情報を、パッチリスト情報と呼んで、他の実施形態に係るホワイトリスト情報を区別する。パッチ情報には、例えば、各パッチのパッチ名、バージョン、そのパッチを構成するデータのハッシュ値、適用許可装置情報、保存場所情報及び再起動要否情報を含んで構成される。適用許可装置情報は、そのパッチの適用が許可される演算装置10を示す情報である。保存場所情報は、そのパッチの保存場所を示す情報である。再起動要否情報は、そのパッチの適用後に再起動を必要とするか否かを示す情報である。
The
EMS22は、生成したパッチリスト情報を含むように開始時点のブロックデータを生成する。以下の説明では、パッチリスト情報を含むブロックデータを、第4ブロックデータと呼んで他の実施形態に係るブロックデータと区別する。開始時点の第4ブロックデータは、ユーザリスト情報を開始時点の履歴情報とし、所定の検証値の初期値、及び開始時点の履歴情報を含んで構成される。第4ブロックデータの具体例については後述する。EMS22は、生成した開始時点の第4ブロックデータを演算装置10にネットワークNWを介して送信する。
The
次に、本実施形態に演算装置10(図2)の構成について説明する。本実施形態に係る機能制御部13は、記憶部18に記憶されているパッチリスト情報に含まれる各パッチのパッチ情報を参照して、そのパッチの適用の要否を判定する。機能制御部13は、そのパッチの適用許可装置情報に自装置の情報が含まれ、かつそのパッチが自装置において未適用であるとき、そのパッチを適用すると判定し、機能制御部13は、適用許可装置情報に自装置の情報が含まれない、又はそのパッチが自装置において適用中もしくは適用済であるとき、そのパッチを適用しないと判定する。
Next, the configuration of the arithmetic device 10 (FIG. 2) will be described in this embodiment. The
適用すると判定するとき、機能制御部13は、そのパッチの保存場所情報が示す保存場所となる機器に、そのパッチの要求を示すパッチ要求信号を、通信部16を介して送信する。保存場所となる機器は、EMS22であってもよいし、EMS22以外のネットワークNWに接続された機器であってもよい。機能制御部13は、その機器から通信部16を介してパッチ要求信号に対する応答としてパッチを受信(ダウンロード)する。機能制御部13は、受信したパッチのハッシュ値を算出し、そのパッチのパッチ情報に含まれるハッシュ値と一致するか否かを判定する。一致すると判定するとき、機能制御部13は、そのパッチとそのパッチの再起動要否情報を制御演算部11に出力する。制御演算部11は、機能制御部13から入力されたパッチを、そのプログラムの対応する部分に置き換えることにより適用(インストール)する。制御演算部11は、機能制御部13から入力される再起動要否情報が再起動要を示すとき、そのプログラムの実行を停止し、パッチが適用されたプログラムの実行を開始する。
When it is determined to be applied, the
機能制御部13は、そのパッチが適用中であるとき、そのパッチが自装置において適用中であることを示すパッチ適用情報を生成し、生成したパッチ適用情報を記憶部18に記憶する。機能制御部13は、そのパッチの適用が完了したとき、そのパッチが自装置において適用済であることを示すパッチ適用情報を生成し、生成したパッチ適用情報を記憶部18に記憶する。
When the patch is being applied, the
ブロックデータ保存部141は、EMS22又は自装置とは異なる他の演算装置10から通信部16を介して受信した第4ブロックデータと自装置の送信データ生成部143が生成した第4ブロックデータを一時的に保存する。
受信データ解析部142は、ブロックデータ保存部141に記憶されている第4ブロックデータのうち最新の第4ブロックデータを読み出す。読み出した最新の第4ブロックデータが、開始時点の第4ブロックデータである場合には、受信データ解析部142は、その第4ブロックデータから開始時点の履歴情報に相当するパッチリスト情報を抽出し、抽出したパッチリスト情報を記憶部18に記憶する。パッチリスト情報の記憶は、必ずしも新たな第4ブロックデータの読出しの度に行われなくてもよい。新たなパッチリスト情報が取得されるとき、記憶部18に記憶されるパッチリスト情報が新たなパッチリスト情報に更新されればよい。
The block data storage unit 141 temporarily stores the fourth block data received from the
The reception
なお、受信データ解析部142は、開始時点よりも後の各時点の第4ブロックデータにから履歴情報の要素情報であるパッチ適用情報を抽出し、抽出したパッチ適用情報からパッチ毎にそのパッチを適用した演算装置10を特定してもよい。受信データ解析部142は、あるパッチのパッチ情報が示す適用許可装置情報が示す演算装置10の全てが、そのパッチを適用したと判定することがある。その場合には、受信データ解析部142は、ブロックデータ保存部141に記憶された最新の第4ブロックデータから、そのパッチに係るパッチ情報と、パッチ適用情報を削除してもよい。これにより、無用なデータの流通が防止されるので、通信量が低減する。
The received
送信データ生成部143は、自装置におけるパッチの適用状態を示す最新のパッチ適用情報を記憶部18から読み出す。また、送信データ生成部143は、ブロックデータ保存部141に保存された第4ブロックデータのうち最新の第4ブロックデータを前時点の第4ブロックデータとして読み出し、読み出した第4ブロックデータとパッチ適用情報とに基づいて現時点の第4ブロックデータを生成する。現時点の第4ブロックデータは、前時点の第4ブロックデータに基づく検証値と、その履歴情報に新たなパッチ適用情報を要素情報として追加して構成される現時点の履歴情報とを含むデータである。送信データ生成部143は、検証値として、例えば、前時点の第4ブロックデータに含まれるブロックヘッダ、現時点の履歴情報のそれぞれについて所定の一方向関数を用いてハッシュ値を算出する。送信データ生成部143は、生成した第4ブロックデータを自装置とは異なる他の演算装置10に送信し、自装置のブロックデータ保存部141に保存する。これにより、自装置を含む複数の演算装置10の間で送信データ生成部143が生成した第4ブロックデータが同報され、互いに共有される。また、受信データ解析部142は、生成した第4ブロックデータをEMS22に通信部16を介して送信してもよい。
The transmission
(パッチリスト情報)
次に、本実施形態に係るパッチリスト情報について説明する。
図15は、本実施形態に係るパッチリスト情報の例を示す図である。
パッチリスト情報は、1個又は複数個のパッチ情報から構成される。各パッチのパッチ情報は、パッチ名、バージョン、そのパッチを構成するデータのハッシュ値、適用許可装置情報、保存場所情報及び再起動要否情報の組み合わせとして構成される。図15の第2行のパッチ情報は、パッチ名「パッチ1」、バージョン「1.00」、ハッシュ値「661957fd99573fbbe391b9b4a950a19b」、適用許可装置情報「ALL」、保存場所情報「ABC/DEF/GHIJK」、再起動「要」を含んで構成される。1種類のパッチは、パッチ名とバーションの組で表される。つまり、パッチ名が同一であっても、バージョンが異なっているパッチ同士は、互いに異なるパッチであるものとして扱われる。適用許可装置のALLとは、EMS22により第4ブロックデータの同報先として指示された演算装置10の全てを示す。図15に示す例では、保存場所情報は、パス名で表されているが、その所在を特定することができれば、他の情報、例えば、URL(Uniform Resource Locator)などを用いて指定されてもよい。
(Patch list information)
Next, patch list information according to the present embodiment will be described.
FIG. 15 is a diagram illustrating an example of patch list information according to the present embodiment.
The patch list information is composed of one or a plurality of pieces of patch information. The patch information of each patch is configured as a combination of a patch name, a version, a hash value of data constituting the patch, application permission device information, storage location information, and restart necessity information. The patch information in the second row in FIG. 15 includes the patch name “
(パッチ適用情報)
次に、本実施形態に係るパッチ適用情報について説明する。
図16は、本実施形態に係るパッチ適用情報の例を示す図である。
パッチ適用情報は、個々の演算装置10におけるパッチ毎の適用状態を示す情報である。図16に示す例では、パッチ毎にパッチ名、適用日時、及び適用状態を含んで構成される。図16の第2行は、パッチ名「パッチ1」、適用日時「2017/1/1」及び適用状態「適用済」を示す。なお、パッチ適用情報には、そのパッチのバージョンの情報がさらに含まれてもよい。
(Patch application information)
Next, patch application information according to the present embodiment will be described.
FIG. 16 is a diagram showing an example of patch application information according to the present embodiment.
The patch application information is information indicating an application state for each patch in each
(ブロックデータ)
次に、本実施形態に係るブロックデータについて説明する。
図17は、本実施形態に係るブロックデータの例を示す図である。
BD81、BD82、BD83は、開始時点における第4ブロックデータ、開始時点より後の時点における第4ブロックデータ、その次の時点における第4ブロックデータをそれぞれ示す。
第4ブロックデータは、ブロックヘッダとその時点における履歴情報とを含んで構成される。第4ブロックヘッダには、前時点のブロックデータに基づく検証値、装置ID、演算回数、検証用データ及び履歴情報の検証値が含まれる。
(Block data)
Next, block data according to the present embodiment will be described.
FIG. 17 is a diagram illustrating an example of block data according to the present embodiment.
BD81, BD82, and BD83 indicate the fourth block data at the start time point, the fourth block data at a time point after the start time point, and the fourth block data at the next time point, respectively.
The fourth block data includes a block header and history information at that time. The fourth block header includes a verification value based on the block data at the previous time point, a device ID, the number of operations, verification data, and a verification value of history information.
但し、履歴情報の検証値として、開始時点の第4ブロックデータについてはパッチリスト情報のハッシュ値が用いられ、それよりも後の各時点の履歴情報として、パッチリスト情報と現時点までの全パッチ適用情報を累積して構成される履歴情報のハッシュ値が用いられる。 However, as the verification value of the history information, the hash value of the patch list information is used for the fourth block data at the start time, and the patch list information and all the patches applied up to the present time are applied as the history information at each time after that. A hash value of history information configured by accumulating information is used.
開始時点の第4ブロックデータの履歴情報には、パッチリスト情報が含まれる。パッチリスト情報の各行には、各パッチのパッチ情報が含まれる。パッチ情報には、各パッチのパッチ名、バージョン、ハッシュ値、適用許可装置情報、保存場所情報及び再起動要否情報が含まれる。
開始時点よりも後の時点の第4ブロックデータの履歴情報には、要素情報として現時点までのパッチ適用情報が含まれる。個々のパッチ適用情報には、パッチ毎のパッチ名、適用日時、及び適用状態の各情報が含まれる。アクセスユーザ、アクセス機能、及びアクセス成否の情報が含まれる。アクセス機能には、その機能を有する演算装置10の情報が含まれてもよい。
The history information of the fourth block data at the start time includes patch list information. Each line of the patch list information includes patch information of each patch. The patch information includes the patch name, version, hash value, application permission device information, storage location information, and restart necessity information for each patch.
The history information of the fourth block data at a time later than the start time includes patch application information up to the present time as element information. Each piece of patch application information includes information on a patch name, an application date and time, and an application state for each patch. Information on the access user, access function, and access success / failure is included. The access function may include information on the
なお、上述では、機能制御部13が、適用許可装置情報に基づいてパッチを適用すると判定するとき、パッチの要求及びその適用の制御を行う場合を例にしたが、これには限られない。機能制御部13は、パッチを適用すると判定するとき、パッチの適用をユーザに照会するためのパッチ適用照会情報をEMS22に通信部16を介して送信してもよい。EMS22は、演算装置10からパッチ適用照会情報を受信するとき、その表示部にパッチ適用照会画面を表示させてもよい。パッチ適用照会画面には、パッチ適用の要否の問合せを示すメッセージが含まれる。EMS22は、受け付けた操作がパッチ適用を示すとき、パッチ適用指示情報をパッチ適用照会情報に対する応答として送信する。機能制御部13は、通信部16を介してEMS22からパッチ適用指示情報を受信するとき、前述のパッチの要求及びその適用の制御を行う。これにより、ユーザの意思に応じてパッチが適用される。
In the above description, when the
また、EMS22は、そのパッチをユーザの操作に基づいて生成する編集部を備えていてもよい。また、ネットワークNWには、さらに承認受付装置が接続されてもよい。その場合、演算装置10の機能制御部13が、適用許可装置情報に基づいてパッチを適用すると判定するとき、パッチ適用照会情報を承認受付装置に通信部16を介して送信してもよい。承認受付装置は、演算装置10からパッチ適用照会情報を受信するとき、その表示部にパッチ適用照会画面を表示させてもよい。承認受付装置は、そのパッチの生成に係るユーザとは別個のユーザ(Safety Supervisor)から受け付けた操作がパッチ適用を示すとき、パッチ適用指示情報をパッチ適用照会情報に対する応答として送信する。機能制御部13は、通信部16を介して承認受付装置からパッチ適用指示情報を受信するとき、前述のパッチの要求及びその適用の制御を行う。これにより、パッチの適用において、パッチの生成に係るユーザとは異なるユーザによる承認を必要とするため、無秩序なパッチの適用が回避される。承認受付装置として、OPS21が用いられてもよいし、OPS21とは別個の機器が用いられてもよい。
The
なお、図17は、パッチリスト情報に、各パッチの保存場所情報を含む場合を例にするが、これには限られない。保存場所情報に代えて、そのパッチ自体が実行形式で含まれてもよい。その場合、機能制御部13は、保存場所情報が示す保存場所からパッチを受信することに代え、記憶部18に記憶されたパッチリスト情報から、そのパッチを抽出すればよい。この場合、パッチを含む第4ブロックデータが演算装置10間で同報される。そのため、パッチを保存する機器の障害を考慮する必要がなくなるので、分散システムとしての信頼性が高くなる。また、受信データ解析部142は、あるパッチのパッチ情報が示す適用許可装置情報が示す演算装置10の全てが、そのパッチを適用したと判定することがある。その場合、受信データ解析部142は、ブロックデータ保存部141に記憶された最新の第4ブロックデータから、そのパッチを削除してもよい。これにより、無用なデータの流通が防止されるので、通信量が低減する。
なお、本実施形態及び変形例に係る冗長化システム1の構成は、冗長化システム2に適用されてもよい。ここで、制御装置24、入出力装置28は、それぞれ本実施形態に係る演算装置10と同様の構成を備えてもよい。
FIG. 17 illustrates an example in which the patch list information includes storage location information of each patch, but is not limited thereto. Instead of the storage location information, the patch itself may be included in an execution format. In that case, the
Note that the configuration of the
以上に説明したように、本実施形態に係る冗長化システム(例えば、冗長化システム1、2)において、管理装置(例えば、EMS22)は、プログラムのパッチを示すパッチリスト情報を含む開始時点の第4ブロックデータを複数の演算装置(例えば、演算装置10、制御装置24、入出力装置28)に提供する。また、複数の演算装置は、それぞれ制御部(例えば、機能制御部13)、データ生成部(例えば、送信データ生成部143)及び通信部(例えば、通信部16)を備える。制御部は、パッチリスト情報が示すパッチの適用の要否を判定する。データ生成部は、前時点の第4ブロックデータに基づく検証値と、パッチの適用状態を示すパッチ適用情報が現時点まで累積された履歴情報であるパッチ適用履歴情報と、を含む現時点の第4ブロックデータを生成する。通信部は、第4ブロックデータを前記複数の演算装置間で同報する。
As described above, in the redundant system (for example, the
この構成によれば、その時点で最新のパッチリスト情報を有する第4ブロックデータが演算装置10間で分散処理を維持しながら共有される。そのため、各演算装置10において、自装置において適用が許可されたパッチが適用可能となる。例えば、パッチリストが示すパッチがセキュリティパッチである場合には、セキュリティパッチの適用によりサイバーセキュリティが確保される。
また、本実施形態によればEMS22は、個々の演算装置を指定して第4ブロックデータを送信する必要がなくなるので、個々の演算装置10を指定して第4ブロックデータを送信する場合よりも、送信先の演算装置の数の増加に伴う情報量の増加を抑制することができる。
また、各演算装置で適用されるパッチの適用状態を示すパッチ適用情報を含む第4ブロックデータが同報されるので、パッチが未適用である演算装置の発見が容易となる。例えば、パッチが未適用であることによる脆弱性を報知したままの演算装置10に対する対策(通信の遮断など)を実行することでサイバーセキュリティが向上する。
また、第4ブロックデータによりパッチリスト情報とパッチ適用情報とが演算装置10間で一元的に共有されるので、製造者、機種、機能など互いに種別が異なる制御装置が混在する冗長化システムであっても、パッチの適用を可能とし、その管理を可能とする環境が構築される。
According to this configuration, the fourth block data having the latest patch list information at that time is shared among the
Further, according to the present embodiment, the
In addition, since the fourth block data including patch application information indicating the application state of the patch applied by each arithmetic device is broadcast, it is easy to find an arithmetic device to which the patch has not been applied. For example, cyber security is improved by executing a countermeasure (blocking communication or the like) for the
In addition, since the patch list information and the patch application information are centrally shared between the
以上、本発明の実施形態及び変形例について、本発明の趣旨を逸脱しない範囲で、上記した実施の形態における構成要素を周知の構成要素に置き換えることは適宜可能である。また、この発明の技術範囲は上記の実施形態に限られるものではなく、本発明の趣旨を逸脱しない範囲において種々の変更を加えることが可能である。 As described above, in the embodiments and modifications of the present invention, the constituent elements in the above-described embodiments can be appropriately replaced with known constituent elements without departing from the spirit of the present invention. The technical scope of the present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the spirit of the present invention.
例えば、第二実施形態に係る演算装置10や第四実施形態に係る演算装置10は、それぞれ第三実施形態の検出部12を備え、機能制御部13、ブロックデータ処理部14は、それぞれ第三実施形態の機能制御部13、ブロックデータ処理部14と同様の処理を行ってもよい。
第三実施形態に係る演算装置において、機能制御部13、ブロックデータ処理部14は、それぞれ第四実施形態の機能制御部13、ブロックデータ処理部14と同様の処理を行ってもよい。
また、ブロックデータ処理部14は、自部で扱われる最新のブロックデータに含まれる履歴情報の情報量が、所定の情報量を超えたか否かを判定してもよい。所定の情報量を超えたと判定するとき、ブロックデータ処理部14は、その履歴情報を記憶部18に記憶し、新たに開始時点におけるブロックデータを生成してもよい。
また、各演算装置10の送信データ生成部143は、生成した各種のブロックデータをOPS21、EMS22の一方又は両方に通信部16を介して送信してもよい。
その他、上述した演算装置10と同様の構成を、ネットワークを介して接続される複数の電子機器のそれぞれが備えてもよい。かかる電子機器には、例えば、Webカメラ、センサユニットなどのIoT(Internet of Things;モノのインターネット)機器が該当する。
For example, the
In the arithmetic device according to the third embodiment, the
Further, the block
The transmission
In addition, each of a plurality of electronic devices connected via a network may have the same configuration as the
第二実施形態〜第四実施形態に係る演算装置10の各々は、第一実施形態をはじめとする他の実施形態の機能に依存せず、その実施形態に固有のブロックデータ(第2ブロックデータ〜第4ブロックデータ)を処理する機能のみを備えていてもよい。
なお、「実行が許可されたプログラムに基づく処理の実行」、「所定の機能へのアクセス」、「サイバーセキュリティが損なわれうる事象」、「パッチの適用」は演算装置10で許可又は許可しない事項の一例である。
また、冗長化システム1および冗長化システム2は情報処理システムの一例である。
Each of the
Note that “execution of processing based on a program that is permitted to execute”, “access to a predetermined function”, “an event that can damage cyber security”, and “application of a patch” are items that are not permitted or permitted by the
Further, the
なお上述の演算装置10、制御装置24、入出力装置28は、内部にコンピュータシステムを有してもよい。そして、上述した演算装置10等における各処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしてもよい。
The
また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。 The program may be for realizing a part of the functions described above. Furthermore, what can implement | achieve the function mentioned above in combination with the program already recorded on the computer system, what is called a difference file (difference program) may be sufficient.
1、2…冗長化システム、10…演算装置、11…制御演算部、12…検出部、13…機能制御部、14…ブロックデータ処理部、16…通信部、18…記憶部、
21…OPS、22…EMS、23…NA、24…制御装置、25…IOスキャナ、26…IOネットワーク、27…IOアダプタ、28…入出力装置、141…ブロックデータ保存部、142…受信データ解析部、143…送信データ生成部
DESCRIPTION OF
21 ... OPS, 22 ... EMS, 23 ... NA, 24 ... control device, 25 ... IO scanner, 26 ... IO network, 27 ... IO adapter, 28 ... input / output device, 141 ... block data storage unit, 142 ... received data analysis Part, 143 ... transmission data generation part
Claims (6)
前記複数の演算装置のそれぞれは、
前記演算装置で許可又は許可しない事項を示すリスト情報に基づいて、前記事項についての処理の実行の許否を判定する制御部と、
前時点のブロックデータに基づく検証値と、前記事項の発生に関する現時点まで累積された履歴情報と、を含む現時点のブロックデータを生成するデータ生成部と、
前記ブロックデータを前記複数の演算装置間で同報する通信部と、
を備える情報処理システム。 An information processing system including a plurality of arithmetic devices,
Each of the plurality of arithmetic units is
Based on list information indicating items that are permitted or not permitted in the arithmetic device, a control unit that determines whether or not to execute processing for the items;
A data generation unit for generating current block data including a verification value based on block data at the previous time point and history information accumulated up to the present time regarding the occurrence of the matter;
A communication unit for broadcasting the block data among the plurality of arithmetic devices;
An information processing system comprising:
前記制御部は、
前記プログラムリスト情報が示すプログラムに基づく処理の実行の許否を判定し、
前記データ生成部は、
前時点の第1ブロックデータに基づく検証値と、前記処理の起動状態を示す起動プログラム情報が現時点まで累積された履歴情報と、を含む現時点の第1ブロックデータを生成し、
前記通信部は、
前記第1ブロックデータを前記複数の演算装置間で同報する
請求項1に記載の情報処理システム。 A management device that provides the plurality of arithmetic devices with first block data at a start time including program list information indicating a program permitted to be executed;
The controller is
Determining whether to execute the process based on the program indicated by the program list information;
The data generator is
Generating the first block data at the present time including the verification value based on the first block data at the previous time point and the history information in which the activation program information indicating the activation state of the process is accumulated up to the present time;
The communication unit is
The information processing system according to claim 1, wherein the first block data is broadcast among the plurality of arithmetic devices.
前記制御部は、
前記ユーザリスト情報に基づいてユーザからの前記機能へのアクセスの許否を判定し、
前記データ生成部は、
前時点の第2ブロックデータに基づく検証値と、前記機能へのアクセス結果を示すアクセス状態情報が現時点まで累積された履歴情報であるアクセス履歴情報と、を含む現時点の第2ブロックデータを生成し、
前記通信部は、
前記第2ブロックデータを前記複数の演算装置間で同報する
請求項1又は請求項2に記載の情報処理システム。 A management device that provides the plurality of arithmetic devices with second block data at the start point including user list information indicating users who are permitted to access a predetermined function;
The controller is
Determining whether to allow access to the function from the user based on the user list information;
The data generator is
Generating second block data at the present time including a verification value based on the second block data at the previous time point and access history information which is history information in which access status information indicating an access result to the function is accumulated up to the present time ,
The communication unit is
The information processing system according to claim 1, wherein the second block data is broadcast among the plurality of arithmetic devices.
サイバーセキュリティが損なわれうる事象を検出する検出部を備え、
前記データ生成部は、
前時点の第3ブロックデータに基づく検証値と、検出された前記事象を示す事象情報が現時点まで累積された履歴情報である事象履歴情報と、を含む現時点の第3ブロックデータを生成し、
前記通信部は、
前記第3ブロックデータを前記複数の演算装置間で同報する
請求項1から請求項3のいずれか一項に記載の情報処理システム。 Each of the plurality of arithmetic units is
It has a detection unit that detects events that can compromise cyber security,
The data generator is
Generating current third block data including a verification value based on the third block data of the previous time point, and event history information that is history information in which the event information indicating the detected event is accumulated up to the present time;
The communication unit is
The information processing system according to any one of claims 1 to 3, wherein the third block data is broadcast among the plurality of arithmetic devices.
前記制御部は、
前記パッチリスト情報が示すパッチの適用の要否を判定し、
前記データ生成部は、
前時点の第4ブロックデータに基づく検証値と、前記パッチの適用状態を示すパッチ適用情報が現時点まで累積された履歴情報であるパッチ適用履歴情報と、を含む現時点の第4ブロックデータを生成し、
前記通信部は、
前記第4ブロックデータを前記複数の演算装置間で同報する
請求項1から請求項4のいずれか一項に記載の情報処理システム。 A management device that provides the plurality of arithmetic devices with fourth block data at the start point including patch list information indicating a patch of the program;
The controller is
Determining whether or not to apply a patch indicated by the patch list information;
The data generator is
Generating current fourth block data including a verification value based on the fourth block data at the previous time point and patch application history information which is history information in which the patch application information indicating the patch application state is accumulated up to the present time ,
The communication unit is
The information processing system according to any one of claims 1 to 4, wherein the fourth block data is broadcast among the plurality of arithmetic devices.
前記複数の演算装置のそれぞれが、
前記演算装置で許可又は許可しない事項を示すリスト情報に基づいて、前記事項についての処理の実行の許否を判定する制御過程と、
前時点のブロックデータに基づく検証値と、前記事項の発生に関する現時点まで累積された履歴情報と、を含む現時点のブロックデータを生成するデータ生成過程と、
前記ブロックデータを前記複数の演算装置間で同報する通信過程と、
を有する情報処理方法。 An information processing method in an information processing system including a plurality of arithmetic devices,
Each of the plurality of arithmetic units is
Based on list information indicating items that are permitted or not permitted in the arithmetic device, a control process for determining whether or not to execute processing for the items;
A data generation process for generating current block data including a verification value based on block data of the previous time point and history information accumulated up to the present time regarding the occurrence of the matter;
A communication process for broadcasting the block data between the plurality of computing devices;
An information processing method comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017034784A JP6814659B2 (en) | 2017-02-27 | 2017-02-27 | Information processing system and information processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017034784A JP6814659B2 (en) | 2017-02-27 | 2017-02-27 | Information processing system and information processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018142078A true JP2018142078A (en) | 2018-09-13 |
JP6814659B2 JP6814659B2 (en) | 2021-01-20 |
Family
ID=63527991
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017034784A Active JP6814659B2 (en) | 2017-02-27 | 2017-02-27 | Information processing system and information processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6814659B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020026745A1 (en) | 2018-07-30 | 2020-02-06 | 三菱マテリアル株式会社 | LOW α-RAY EMISSION STANNOUS OXIDE AND METHOD FOR PRODUCING SAME |
JP2021033452A (en) * | 2019-08-20 | 2021-03-01 | 株式会社リコー | Information processing apparatus, information processing method, and program |
US11271757B2 (en) | 2017-12-28 | 2022-03-08 | Mitsubishi Heavy Industries, Ltd. | Monitoring device, monitoring system, information processing device, monitoring method, and program |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06124214A (en) * | 1992-10-09 | 1994-05-06 | Nec Corp | Continuation control system for fault hot job |
JPH08202665A (en) * | 1995-01-30 | 1996-08-09 | Hitachi Ltd | Inter-computer coupling device of loosely coupled computer |
JP2009122728A (en) * | 2007-11-12 | 2009-06-04 | Ricoh Co Ltd | Information processor, information processing method, information processing program and recording medium |
JP2010244226A (en) * | 2009-04-03 | 2010-10-28 | Nec Corp | Authentication device, server system, server authentication method between a plurality of cells, and authentication program |
-
2017
- 2017-02-27 JP JP2017034784A patent/JP6814659B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06124214A (en) * | 1992-10-09 | 1994-05-06 | Nec Corp | Continuation control system for fault hot job |
JPH08202665A (en) * | 1995-01-30 | 1996-08-09 | Hitachi Ltd | Inter-computer coupling device of loosely coupled computer |
JP2009122728A (en) * | 2007-11-12 | 2009-06-04 | Ricoh Co Ltd | Information processor, information processing method, information processing program and recording medium |
JP2010244226A (en) * | 2009-04-03 | 2010-10-28 | Nec Corp | Authentication device, server system, server authentication method between a plurality of cells, and authentication program |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11271757B2 (en) | 2017-12-28 | 2022-03-08 | Mitsubishi Heavy Industries, Ltd. | Monitoring device, monitoring system, information processing device, monitoring method, and program |
WO2020026745A1 (en) | 2018-07-30 | 2020-02-06 | 三菱マテリアル株式会社 | LOW α-RAY EMISSION STANNOUS OXIDE AND METHOD FOR PRODUCING SAME |
JP2021033452A (en) * | 2019-08-20 | 2021-03-01 | 株式会社リコー | Information processing apparatus, information processing method, and program |
JP7293975B2 (en) | 2019-08-20 | 2023-06-20 | 株式会社リコー | Information processing device, information processing method, and program |
Also Published As
Publication number | Publication date |
---|---|
JP6814659B2 (en) | 2021-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11856106B2 (en) | Secure configuration of a device | |
US10367834B2 (en) | Systems and methods for implementing intrusion prevention | |
US10963543B2 (en) | Secure communication between operating system and processes | |
CN102947795B (en) | The system and method that secure cloud calculates | |
US8161285B2 (en) | Protocol-Independent remote attestation and sealing | |
RU2568295C2 (en) | System and method for temporary protection of operating system of hardware and software from vulnerable applications | |
EP2652663B1 (en) | Software signing certificate reputation model | |
US8935530B2 (en) | Control device and computer readable medium | |
US8667294B2 (en) | Apparatus and method for preventing falsification of client screen | |
RU2709287C1 (en) | Device for safe and trusted image forming and method of monitoring thereof, as well as a system and an image forming method | |
JP2014021923A (en) | Information processor and control method | |
JP6814659B2 (en) | Information processing system and information processing method | |
CN111433774B (en) | Method and device for confirming integrity of system | |
US9965625B2 (en) | Control system and authentication device | |
US12039050B2 (en) | Information processing device | |
KR101320680B1 (en) | Method and apparatus for integrity check of software | |
JPWO2017150003A1 (en) | Detection System, Web Application Device, Web Application Firewall Device, Detection Method in Detection System, Web Application Device Detection Method, and Web Application Firewall Device Detection Method | |
JP2006127422A (en) | Terminal controller and terminal control method | |
US12039064B2 (en) | Information processing device, information processing method, information processing program, and information processing system | |
US20220107834A1 (en) | Task engine | |
CN106415565B (en) | Protect software project | |
JP6041727B2 (en) | Management apparatus, management method, and management program | |
CN113157543A (en) | Credibility measuring method and device, server and computer readable storage medium | |
KR101071962B1 (en) | Automatic Managing System and Method for Integrity Reference Manifest | |
EP4174697B1 (en) | System, device and method for enabling identification when a security sensitive function has been previously enabled |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20170228 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20181109 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191217 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20201030 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20201124 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20201221 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6814659 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |