JP6437457B2 - 制御および調節ユニットのシステム状態の不正操作を識別する装置および該装置を含む核技術設備 - Google Patents

制御および調節ユニットのシステム状態の不正操作を識別する装置および該装置を含む核技術設備 Download PDF

Info

Publication number
JP6437457B2
JP6437457B2 JP2015555708A JP2015555708A JP6437457B2 JP 6437457 B2 JP6437457 B2 JP 6437457B2 JP 2015555708 A JP2015555708 A JP 2015555708A JP 2015555708 A JP2015555708 A JP 2015555708A JP 6437457 B2 JP6437457 B2 JP 6437457B2
Authority
JP
Japan
Prior art keywords
control
module
monitoring
monitoring module
notification
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.)
Active
Application number
JP2015555708A
Other languages
English (en)
Other versions
JP2016505183A5 (ja
JP2016505183A (ja
Inventor
ハルビッヒ、ジークフリート
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.)
Areva GmbH
Original Assignee
Areva GmbH
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 Areva GmbH filed Critical Areva GmbH
Publication of JP2016505183A publication Critical patent/JP2016505183A/ja
Publication of JP2016505183A5 publication Critical patent/JP2016505183A5/ja
Application granted granted Critical
Publication of JP6437457B2 publication Critical patent/JP6437457B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/058Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/16Plc to applications
    • G05B2219/161Nuclear plant
    • 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/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • GPHYSICS
    • G21NUCLEAR PHYSICS; NUCLEAR ENGINEERING
    • G21DNUCLEAR POWER PLANT
    • G21D3/00Control of nuclear power plant
    • G21D3/001Computer implemented control
    • GPHYSICS
    • G21NUCLEAR PHYSICS; NUCLEAR ENGINEERING
    • G21DNUCLEAR POWER PLANT
    • G21D3/00Control of nuclear power plant
    • G21D3/008Man-machine interface, e.g. control room layout
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E30/00Energy generation of nuclear origin
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E30/00Energy generation of nuclear origin
    • Y02E30/30Nuclear fission reactors

Description

本発明は、核技術設備における制御および調節ユニット、特にプログラマブルロジックコントローラのシステム状態の不正操作を識別する装置および方法に関する。さらに本発明は、核技術設備用のプログラマブルロジックコントローラ、ディジタル監視装置ならびに相応の核技術設備に関する。
例えば発電設備のような核技術設備(原子力発電所)においては、通常の制御および調節を含む多数の協動するプロセスが並列的に進行する。各プロセスについて、その適用のために最適に構成された制御および調節ユニットが使用される。
核技術設備、特に発電設備の増大するデータ技術ネットワーク化と、インターネットに至る外部ネットへの接続とによって、これらの設備は、ウィルスやその他の悪意のある不正ソフトウェア(マルウェア)の攻撃を受けやすくなる。この種の設備がソフトウェアウィルスにより攻撃された既知の事例がスタックスネット(STUXNET)である。このような攻撃は、全体故障に至る生産損失をもたらし、高い人的および経済的な損害を招き得る。さらに、この種の送り込まれたマルウェアは産業スパイ行為のために使用される。さらに、ウィルスによる最初の攻撃時にウィルス伝播の危険が存在するので、このウィルスが同じ核技術設備の他の制御装置を攻撃し、あるいはそれと共にネットワーク化された設備も攻撃することがある。これらの危険に基づいて、原理的に実行時にメモリ構成がマルウェアによって変更され得る制御システムの使用は、ネットワーク化された環境において、高い安全性リスクとなる。この種の制御システムは、プログラマブルロジックコントローラ(PLC)である。
従って、本発明の課題は、不正操作を信頼性のある方法で検出することを可能にする、不正操作を識別する装置を提供することにある。さらに、本発明は、核技術設備用のプログラマブルロジックコントローラおよび監視装置、核技術設備ならびに相応の方法を提供しようとするものである。
不正操作を識別する装置に関して、この課題は、本発明によれば、制御および調節ユニットの動作状態および/又はハードウェア拡張状態および/又はプログラム状態を監視し、該状態の変化時に通報を発生する監視モジュールを設けることによって解決される。
本発明の有利な実施形態は従属請求項に記載されている。
本発明は、次の場合にウィルス又は類似のマルウェアによる攻撃が成功するという考えから出発している。即ち、望んでもいないのに制御および/又は調節システムのシステム機能が変化、拡張又は破壊されるほど、ウィルス又は類似のマルウェアが、制御および/又は調節システムのシステム状態に影響を及ぼす場合である。これは、悪意のある不正プログラムおよび/又は不正データが動作中に書込み可能なメモリ内に取り込まれて実行されることによって起こる。この理由から、安全性が重視される設備において、この種の制御および/又は調節システムを使用することが先ず問題である。核技術設備の場合には、制御システムの変更がスパイ行為、構成要素の故障、誤動作および重大事故を招き得ることから、最高の安全性基準を満たすことが要求される。
この種の攻撃の場合に、例えば制御および調節ユニットに付加的なプログラムコードを送り込み、もしくは既存のプログラムコードをウィルス感染コードに置き換えることを試したであろう。さらに、センサからのデータをもはや受信することができないように、および/又はアクチュエータをもはや応答させもしくは制御することができないように、構成を変更することを試したであろう。
今や認識されているように、この種の設備において使用される制御および調節ユニットのシステム内部の処理手続を監視し、即ち、換言するならば、制御および調節ユニットの動作状態および/又はハードウェア拡張状態および/又はプログラム状態を監視し、そして変化を通報することによって、要求される高い安全性基準が実現される。
通報の発生によって、変化がどの種類であるか、変化が場合によっては不正に行われたかどうかをチェックすることができる。しかもこの変化に直接的に反応することが可能にされる。この出願において、制御および調節ユニットとは、開ループ制御処理のみ、又は閉ループ制御処理のみ、又はその両方の種類の処理を実行することのできるあらゆるユニットのことである。
制御および調節ユニットが、データを保存する少なくとも1つの書込み可能なメモリを有し、そのメモリ内に保存されたデータが変化した際に監視モジュールが通報を発生するとよい。プログラマブルロジックコントローラの如き書込み可能なメモリを有する制御および調節ユニットの動作状態および/又はハードウェア拡張状態および/又はプログラム状態は、ほとんどそれのメモリ内容によって決定される。そのメモリ内容は、一般にプログラムコード、ハードウェア構成およびソフトウェア構成、動的に設定されるデータフィールド、変数等を含む。マルウェアによる外部からの敵意のあるアクセスによって、メモリの変化においてはっきりした影響が現れるので、メモリ内容の変化は不正操作を示唆することができる。
前記データがプログラムコード又はそれから生成されるプログラム変数を含むと有利である。プログラムコード、特にロード可能な使用者プログラムは、ランタイム動作中に実行され、実行される命令を含んでいる。プログラムコードの変化は操作を意味する。しかし、この種の操作を識別するために、必ずしもコードの変化を直接的に監視する必要はない。それから導き出されるか、又はプログラムコード(使用者コード、ファームウェア、動作システム等)の助けにより生成される、いわば二次的なプログラム変数の変化を監視するならば、コード変化時にこれらのプログラム変数の変化も十分に大きい確率で発生するかぎり、その監視は、より効果的であり、かつより経済的である。例えば、そのコードもしくはコード部分又はコード構成要素から生成されたチェックサム又は長さが、そのような二次的なプログラム変数に当たる。CPUが、内部の機能として、ソフトウェアコンポーネントもしくはモジュールのチェックサムに関する排他的論理和を有すると有利である。その結果(例えば、32ビット値)が監視モジュールによって読み出され、その変化が監視される。「SIMATIC S7−300」および「SIMATIC S7−400」(シーメンス社の商品名)のようなプログラマブルロジックコントローラは、自ら自動的にチェックサム、特に数字和を発生する。これらのチェックサムを監視モジュールから読み出し、読み出したチェックサムの変化を監視するだけでよい。従って、旧値/新値比較によってあらゆるプログラム変化を認識することができる。
前記データがシステムデータ、特にハードウェア構成、および/又はそれから生成されるシステム変数を含むと有利である。ハードウェア構成は、モジュールシステム内に使用部品に対するデータを含む。ハードウェア構成の計画は、例えばSIMATICの場合、プログラミングソフトウェアSTEP7/PCS7に含まれるHWKonfigを介して行われる。モジュール構造のS7−300又はS7−400に差し込まれなければならない各部品は、実行可能であるためには、HWKonfigでパラメータ設定され、しかる後にCPU上の所望の送り先にロードされなければならない。HWKonfigでは各部品の部品アドレス、診断設定、測定範囲設定等のような全ての設定がパラメータ化される。それによって、例えばブリッジスイッチ等を介する設定が省略できる。部品交換の場合に更なる設定はもはや必要でない。
上述の計画は、いわゆるシステムデータの中にファイルされる。これらのシステムデータの変化のチェックが起こり得る攻撃の検出を可能にする。上述のように、制御および調節ユニットのチェックサムに関する排他的論理和も提供され、監視モジュールによって読み出され、旧値/新値比較によって変化が監視される。
好ましい実施形態では、監視モジュールが制御および調節ユニットのCPUの動作モードスイッチの位置を監視する。この種の動作モードスイッチは複数の位置を有する。これらは、例えば次のとおりである。
MRES(可変メモリのリセット)
STOP(プログラム実行なし、通信のみ可能)
RUN(プログラム変更可能性を阻止してプログラム実行)
RUN−P(プログラム変更可能性有りでプログラム実行)
キースイッチなしの多くの実際のCPUの場合、わずかに「START」および「STOP」なるスイッチ位置だけが存在し、「STOP」の位置ではプログラム実行ができないので、この場合にはCPUにおけるプログラム技術的評価が変更をもたらされない。
さらに、監視モジュールが制御および調節ユニットの安全性レベルの変化を監視する。安全性レベルは、例えば、それぞれパスワード保護と組み合わされて「読出しのみ」又は「読出しおよび書込み」の位置を有し得る。
監視中に動作状態、ハードウェア拡張状態又はプログラムの変化が確認された際には、通報が発生され、これは種々の方法で行うことができる。その通報は評価のために遅れた時点で使用可能であるため、その通報はメモリ、特に制御および調節ユニットのCPUの診断バッファおよび/又は監視モジュールの監視バッファに書き込まれると有利である。診断バッファは、例えば、CPU内に組み込まれてリングバッファとして診断記録を収容できるメモリ領域として実施されているとよい。これらの記録はデータ/タイムスタンプ付きであるとよい。監視モジュールが、好ましくはデータおよび時刻のためのスタンプを有する通報を書き込み得る監視メモリを有するとよい。この監視メモリは、例えばリングバッファとして実施されているとよい。通報の記録は、存在するかぎり、両メモリのうち一方のみに、又は冗長性を作り出すために両メモリに書き込まれるとよい。
それの代わりに又は好ましくはそれに加えて、通報が、不正操作を識別する装置の特に監視モジュールの出力、特に2進出力に供給される。それによって、プロジェクトエンジニアはその通報を設備特有の通報出力のために使用することができる。この場合に、複数の出力が設けられ、これらの出力が、検出される変化の個々の種類(プログラムメモリ、システムデータメモリ、安全性レベル等)に割り当てられていると有利である。
制御および調節ユニットの安全性レベルを必要に応じて、特にキースイッチの操作時に切り換える安全性モジュールが設けられていると好ましい。安全性レベルは、特に、「読出しおよび書込み」、「読出しのみ」、「書込み保護および読出し保護」なる位置を有し、これらの位置は選択的にパスワード認証と結合されているとよい。この切換を行うことを可能にするキースイッチは、例えば制御キャビネット内に組み込まれている。従って、権限を付与された者によってのみプログラム変更が行われることを保証することができる。キースイッチの切り換えもしくは操作なしにはプログラム変更は殆どロックされ、従って排除されている。キースイッチは、1つの任意のディジタル入力に接続される。制御プログラムにおいて、この信号が1つのモジュール(SecLev 2)に接続され、このモジュールがシステム機能を介して安全性レベル(Security Level)を設定する。
不正操作を識別する装置の好ましい実施形態においては、監視モジュールの動作を監視する制御モジュールが設けられていて、監視モジュールも制御モジュールの動作を監視する。この実施形態の基礎をなす考えは次のとおりである。攻撃者が制御および調節ユニットにおいて悟られずにプログラム変更を行い得るためには、攻撃者が先ず、安全性レベルを「読出しおよび書込み」にセットすることにより書込みアクセス権限を得なければならない。それに加えて、攻撃者は監視モジュールの活性を阻止しなければならない。即ち、攻撃者は、ソフトウェアモジュールもしくはソフトウェアコンポーネントによって監視モジュールを実現する際に、そのモジュールもしくはコンポーネントの実行もしくはそれのプログラム命令の実行をCPUの側で阻止しなければならない。後者を識別するために、もしくは阻むために、制御モジュールが設けられている。
監視モジュールと制御モジュールとは相互に相手方の動作を監視する。従って、この場合、制御および調節ユニットの簡単な冗長的な監視が存在するというわけではない。監視モジュールと制御モジュールとがソフトウェアコンポーネントとして実現された好ましいケースでは、むしろ両モジュールが相互に相手方の処理を監視する。これは、予め与えられた時間間隔、例えば1秒の期間中に、それぞれ監視されるモジュールの正しい処理が行われているどうかがチェックされることによって行われると有利である。これがそうでない場合には誤った処理が通報され、このことは、安全性侵害のテスト又は既に行われた安全性侵害を示唆する。
攻撃者による外部からのソフトウェアコンポーネントの消去は逐次的にしか起こり得ない。即ち、仮に攻撃者が両モジュールの存在およびそれらの機能の知識を得ることができた場合に、攻撃者はこれらのソフトウェアコンポーネントを逐次的に消去又は無効化しなければならない。しかし、両モジュールのうち一方の消去又は無効化の際に、これが、それぞれ他方のモジュールによって識別されて適切な通報が発生されるので、両モジュールの一方の異常が確実に識別される。
制御モジュールが監視モジュールの動作時に変則性を確認した場合に、監視モジュールの欠陥のある動作もしくは欠陥のある処理を、制御モジュールが2進出力にて表示すると有利である。監視モジュールは、上述の手段の少なくとも1つの方法で制御モジュールの動作の変則性を表示する。通報は、CPU又は監視モジュールの1つのメモリ又はバッファに、好ましくはデータ/タイムスタンプと一緒に書き込まれるか、もしくは1つの(2進)出力において他の設備特有の通報出力のために使用することができる。好ましくは、全部で3つの方法がとられる。
プログラマブルロジックコントローラに関しては、前記課題が、本発明によれば、ソフトウェアモジュールによって構成された上述の装置により解決される。即ち、上述のモジュール(監視モジュール、制御モジュール、安全性モジュール)は、それぞれソフトウェアモジュールもしくはソフトウェアコンポーネントとして実現されており、制御および調節ユニットの動作状態においてそのユニット内にある。
核技術設備用のディジタル監視装置に関しては、前記課題は、本発明によれば、上述のプログラマブルロジックコントローラにより解決される。
核技術設備に関しては、前記課題は、本発明によれば、この種のディジタル監視装置により解決される。
方法に関しては、前記課題は、制御および調節ユニットの動作状態および/又はハードウェア拡張状態および/又はプログラム状態が監視され、かつ該状態の変化時に通報が出力されることによって解決される。方法の有利な実施形態は、装置との関連で説明した機能がもたらされる。
本発明の利点は、特に、制御および調節ユニットの動作状態、ハードウェア拡張状態およびプログラム状態の監視によって、発見されない操作がほとんど阻止されて確実に通報されるので、設備損傷を回避するための措置を直接的に意図的に導入することができる。プログラマブルロジックコントローラの使用が、安全性を最重視するべきネットワーク化された環境において、このようにしてはじめて可能にされる。監視モジュールおよび制御モジュールの相互監視のおかげで、監視の遮断によって操作が可能になることを確実に阻止することができる。
本発明の実施例を図面に基づいてさらに詳細に説明する。
図1は監視モジュールと安全性モジュールと制御モジュールとを組み込まれた装置を有する制御および調節ユニットを有するディジタル監視ユニットを有する核技術設備を有利な実施形態にて示す概略図である。 図2は図1による装置の安全性モジュールの機能を概略的に示すフローチャートである。 図3は図1による装置の監視モジュールの機能を概略的に示すフローチャートである。 図4は図1による装置の制御モジュールの機能を概略的に示すフローチャートである。
全ての図において同じ部分には同一符号が付されている。
図1に示された核技術設備2は、モジュール式のプログラマブルロジックコントローラ(PLC)10として実施された制御および調節ユニット8を有するディジタル監視装置4を含む。このPLC10は、例えばシーメンス社製の「SIMATIC S7−300」又は「SIMATIC S7−400」である。これは、CPU20と、複数のメモリ領域を含むメモリ26とを有する。プログラムメモリ領域32には、PLC10の動作中に実行される1つ以上のプログラムが格納されている。これに加えて、コードのチェックサムおよびコードの長さが記憶されており、これらは、CPU20によって、それらのプログラムのCPUへの伝送時に計算され、変化時に即座に更新される。同様にこれらのチェックサムに関する排他的論理和が計算され、システムデータメモリ38に記憶され、変化時に更新される。プログラムコードによって導き出されたこれらの量が専用のメモリ領域に記憶されてもよい。
さらに、システムデータメモリ領域38内に、CPU20によって、構成データ、特にハードウェアの構成データが保存される。モジュール構成されたPLC10においてこの例におけるように1つのモジュールを動作可能にするためには、そのモジュールのハードウェア構成をパラメータ化して、CPU20へアップロードしなければならない。ハードウェア構成では、各モジュールのモジュールアドレス、診断設定、測定領域設定等々の全ての設定がパラメータ化されている。モジュール交換の場合には、更なる設定は必要でない。メモリ26は、さらに別のメモリ領域40を含む。
PLC10は、入力側を複数のセンサを含むセンサグループ44に接続され、出力側を複数のアクチュエータを含むアクチュエータモジュール50に接続されている。データ線56は、外部から核技術設備内に引き込まれ、インターフェース62を介してPLC10をローカルエリアネットワーク(LAN)に接続し、あるいはインターネットにも接続する。この接続が原因で、潜在的な攻撃者が、CPU20内に保存されたデータ情報を得る目的で(産業スパイ)、あるいはPLC10の機能を変更、妨害又は破壊する目的で、CPU20内にウィルスを送り込もうとし、又はその他の種類のマルウェアを組み込もうとする可能性が存在する。この種の成功した攻撃は、PLC10が安全を最重視すべきプロセスの制御を行う場合に、大きな人的損害を招き、また、経済的損害も招き得る。
これらの損害を防いで、攻撃を、つまりPLC10の動作状態、ハードウェア拡張状態およびプログラム状態の不正操作を、確実かつ迅速に識別することを可能にするために、本発明によれば、不正操作識別装置70が設けられ、この装置70は本例ではPLC10に組み込まれている。その装置70は、以下において説明する3つのモジュール76,82,116を含む。これらのモジュールは、ソフトウェアコンポーネントとして実現され、プログラムメモリ領域に格納されている。
安全性モジュール76は、矢印78によって示されているように、CPU20の安全性レベルへのアクセスを有する。安全性レベルを「読出しおよび書込み」、「読出しのみ」および「書込みおよび読出しの保護」との間で切り換えるように、又はその逆順に切り換えるように設計されている。この機能は、制御キャビネット(図示されていない)内に組み込まれたキースイッチ80に結合されている。即ち、安全性モジュール76は、キースイッチの第1の位置において安全性レベル「読出しおよび書込み」を作動させ、キースイッチの第2の位置において安全性レベル「読出しのみ」又はその代わりに「書込みおよび読出しの保護」を作動させる。連続動作中には、この第2の位置が正常位置であるので、権限のない者によってメモリ内のプログラム変更又はその他の変更を行うことはできない。キースイッチが第1の位置にあるときにのみ、変更が可能である。それゆえ、攻撃者はキースイッチにアクセスすること、つまりその設備に立ち入ることが必要であり、このことは普通の防護措置によってほとんど防止することができる。場合によっては、攻撃者も、キースイッチが第1の位置にあるときには、マルウェアの送り込みによって、CPU内で安全性レベルを消去し、又はプログラム技術的にも直接に安全性レベルを変更することができるであろう。
どんな形のマルウェアの送り込みも確実に発見し、もしくはPLC10の動作状態、ハードウェア拡張状態およびプログラム状態の権限なしの変更を確実に発見するために、監視モジュール82が設けられている。矢印90によって示されているように、監視モジュール82はメモリ32のプログラムメモリ領域における変更を監視する。これは次のようにして行われる。CPU20が、プログラムメモリ領域32に格納されたプログラムコードから、モジュールごとにチェックサムおよびプログラム長を発生する。これらの個々のチェックサムおよびプログラム長に関する排他的論理和によって総合チェックサム(32ビット数値)が形成され、システムデータメモリ38内に保存される。これらの論理結合の結果(総合チェックサム)の変化が監視される。そのために予め与えられた時間間隔において新旧の値の比較が行われる。
矢印90で表しているように、監視モジュール82はシステムデータメモリ領域38の変化も監視する。これは、CPU20によって生成されて供給されるシステムデータの長さおよびチェックサムに関する排他的論理和の変化を監視することにより行われる。さらに監視モジュール82は、同様にシステムデータメモリ内に保存されているCPU20の安全性レベルの変化を監視する。
監視結果の変化時に監視モジュール82は3つの異なる種類の通報を発生する。一方では通報がPLC10の診断バッファ88に書き込まれる。この診断バッファ88は、CPU20内においてリングバッファとして実施された内のメモリ領域であり、これは500個までの診断記録を収容することができる。「全体リセット」後に(全体リセットはCPUの全部のメモリが診断バッファ88を除いて消去される機能であり、即ち全体リセットされたCPUは(もはや)動作しないという機能である)、又はバッテリと系統電源との同時停電後にも、このメモリはなおも読出し可能である。従って、診断バッファ88への通報の書込みによって、通報は電源喪失後も失われない。この診断バッファの内容は、一方では、プログラミングソフトウェア「STEP7/PCS7」により読み出して表示することができる。他方では、例えば「WinCC」又は「PCS7 OS」のような特定のHMI装置/ソフトウェアシステムが、これらの診断バッファ記録を同様にデータ/タイムスタンプ付きのクリアテキストで表示する。
監視モジュール82は、通報を、監視モジュール82内で実現されリングバッファとして実施された監視バッファ94にも書き込む。この監視バッファはこの例では50個の記録を収容することができる。各記録は、発生した変化ごとに、1つのデータ/タイムスタンプと1つのビットとからなる。監視バッファ94は「STEP7/PCS7」により読み出されて評価される。
さらに、通報は、監視モジュールのそれぞれ1つの2進出力100,102,104に供給もしくは表示され、従って後続処理に使用可能である。操作者は、通報後に必要ならば診断バッファ又は監視バッファを介して、より深く掘り下げた情報を読み出すことができる。上述の3つの監視(プログラムコード、システムデータ、安全性レベル)の各々に、それぞれ1つの専用の2進出力100,102,104が割り当てられているので、1つの通報を出力するのに1ビットをセットすることで十分である。プログラムコードの変化時の通報は2進出力100において、システムデータの変化時の通報は2進出力102において、安全性レベルの変化時の通報は2進出力104において、それぞれ1ビットをセットすることによって出力することができる。
上述の監視モジュール82によって、発生した通報に基づいて、システムデータおよび/又はプログラムコードにおける変更の企てを識別することができ、これは、例えばPLC10の機能に影響を及ぼそうとするウィルス攻撃の結果であり得る。しかし、監視モジュール82が侵入に気づいて通報を発生することができる前に、攻撃者が監視モジュール82を部分的又は完全に消去又は無効することによって、通報の発生を妨害することができるであろう。このようなシナリオを阻止するために、制御モジュール116が設けられている。二重矢印112によって示されているように、監視モジュール82および制御モジュール116が互いに監視し合う。これは、ここでは、それぞれプログラム命令の実行が監視されるように行われる。そのために、それぞれ、予め与えられた時間間隔内に、ここでは1秒内に(一般にプロセス制御技術のプログラムは10〜100ミリ秒のタイムスライスで動作する。)、プログラムコードの命令の処理が続行されたかどうかがチェックされる。両モジュール82,116のうちの一方が、それぞれ相手方のモジュール82,116において処理が続行されないことを検出する場合に相応の通報を発生するので、起こり得る攻撃に反応することができる。
制御モジュール116は、2進出力110において、監視モジュール82の欠陥のある又は誤った処理を表示する。監視モジュール82の欠陥のある又は誤った処理は、メモリ26の監視と関連して上述したように、データ/タイムスタンプと一緒に診断バッファ88および監視バッファ94に書き込まれ、2進出力110において他の設備特有の通報出力のために使用できる。
このメカニズムは極めて信頼性が高い。というのは、攻撃者は、先ずそもそも外部から、互いに制御もしくは監視し合う2つのモジュール82,116の存在を知ることが必要であるからである。そのうえ、攻撃者には両モジュール82および116を同時に消去できないので、両モジュールのうち少なくとも1つ82又は116が通報を発生し、それによって攻撃の識別が可能となる。しかし、攻撃がない場合にも、両モジュール82,116のうちの一方の故障又は誤動作を検出することができる。
安全性モジュール76の動作状態において発生する処理ステップのフローチャートが図2に示されている。安全性モジュール76においてソフトウェア的に実現された処理が、スタート120において始まる。判定126において、キースイッチ80が書込み/読出しアクセスを可能にする有効信号を発生しているかどうか、かつ同時にこの信号のステータスが有効であるか又はシミュレーションが存在するかどうかがチェックされる。これらの全ての条件が満たされている場合に、処理はブロック132へ分岐し、このブロック132においてCPU20の安全性レベルが書込み/読出しアクセスに接続され、これは安全性段階1に相当する。
そうでない場合に、処理は判定134へ分岐し、この判定134において、パスワード認証なしで書込みおよび読出しアクセスを阻止すべきかどうかがチェックされる。これに該当する場合に処理はブロック136へ分岐し、このブロック136においては、CPU20の安全性レベルもしくは安全性段階がパスワード認証なしで書込み/読出しアクセスに接続される。ブロック138においては、上記の両判定126,134が否定の結果を出した場合に安全性レベルがパスワード認証付きで書込み保護に接続され、これは安全性段階2に相当する。ブロック140では現在の安全性レベルが読み出されて表示される。処理はエンド142において終了する。
監視モジュール82においてソフトウェア的に実現された処理がフローチャートにより図3に示されており、スタート150において始まる。ブロック152においては、ハードウェア構成HDWKonfigおよびプログラムコードならびに安全性レベルについてチェックサム、ここでは数字和が読み出される。判定154においては、旧値/新値比較により、HDWKonfigのチェックサムの値が最後の照会からの値と一致しているかどうかがチェックされる。これがそうでないならば、処理はブロック156へ分岐する。そこでは監視バッファ94と診断バッファ88とにそれぞれデータ/タイムスタンプ付きで通報記録「HDWKonfig変化」が登録もしくは書込みされ、2進出力102が設備特有の後続処理のためにセットされ、即ち、そのビットが1つの通報に相当する値にセットされる(例えば、通報は1、通報なしは0)。旧値/新値比較による数字和の変化がなかったならば、ブロック158において出力102はリセットされ、それによって、間違って通報が表示されないことが保証される。
判定160においては、プログラムコードの読み出された数字和の値が最後の照会からのその数字和の直前値に対して変化したどうかがチェックされる。その変化が起きている場合には、処理はブロック162へ分岐する。そこでは監視バッファ94と診断バッファ88とに、データ/タイムスタンプを含めた通報記録「プログラム変化」が書き込まれ、出力100がセットされる。そうでない場合にはブロック164において出力100がリセットされる。
判定166においては、CPU20の安全性レベルが最後の照会以来変化したかどうかがチェックされる。これがそうであるならば、ブロック168において通報記録「安全性レベルの変化」がタイムスタンプと一緒に監視バッファ94と診断バッファ88とに書き込まれる。さらに出力104がセットされる。そうでない場合には、ブロック170において、この出力がリセットされる。
判定172においては、上述の処理ステップの呼出しが1秒よりも古いかどうかがチェックされる。これがそうである場合には、ブロック174においてパラメータエラーが出力される(上述の3つのモジュール76,82,116は他のモジュールと一緒にライブラリにおいて自由に使用可能である。使用者は、プログラミングの際もしくは始動の際におけるモジュールのパラメータ指定によって、種々の動作を選択/設定することができる。使用者が許されていない動作をパラメータ指定/選択した際には、使用者はパラメータエラーを受けてパラメータ指定を訂正することができる。)。そうでない場合には処理がブロック176へ分岐し、このブロックにおいてパラメータエラーがリセットされる。
本発明においては、監視モジュール82および制御モジュール116の相互監視が、各モジュールがそれぞれ自身でカウントアップするカウンタと、それぞれ相手方のモジュールによってカウントアップされるカウンタとを有することによって達成される。両モジュール82および116が規則正しく動作する場合には、両カウンタはそれぞれ等しい値を持つ。一方のモジュールが故障し場合には、そのモジュールによってカウントアップされる相手方のモジュール内のカウンタがもはやカウントアップされないので、モジュール故障が識別できる。
処理は、今やさらに判定178へ進み、この判定では、監視モジュール82によってカウントアップされる監視カウンタの値が、制御モジュール116によってカウントアップされる制御カウンタと比較される。これらの値が一致する場合には、ブロック180において監視カウンタがカウントアップされる。両値が一致しない場合には、判定182において、制御カウンタの最後のカウントアップが1秒よりも古くてかつ監視バッファ94および診断バッファ88への記録がまだ行われていないかどうかチェックされる。これがそうである場合、これは、制御モジュール106が規則正しく動作していないことを表す。従って、この場合にはブロック184において、通報記録「消去監視エラー」もしくは「制御モジュールエラー」が監視バッファ94および診断バッファ88にそれぞれタイムスタンプ付きで記録され、制御モジュール116のエラーが表示される2進出力108において1ビットがセットされる。その際に処理はエンド186において終了する。そうでない場合には、判定188において、CPUの診断バッファ88に、ブロック184で登録された記録「監視モジュールが再動作」が既に存在するかどうかがチェックされる。これがそうである場合には、ブロック190において出力108がリセットされる。そうでない場合には、ブロック192において監視バッファ94および診断バッファにタイムスタンプ付きで通報登録「制御モジュール動作OK」もしくは「消去監視OK」が行われる。
制御モジュール116においてソフトウェアにより実現された処理が図4のフローチャートとして示されており、スタート194において開始される。判定196において、監視モジュール82への接続が正常もしくは正しいかどうかがチェックされる。即ち、この実施例では使用者が計画/プログラミングの際にCFCエディタ(CFC=Continuous Function Chart)においてマウスを用いて両モジュール間でクリックによって接続/線を作り出さなければならない。この接続によって、制御モジュール116が監視モジュール82のインスタンスデータブロックへ読み出されて書き込まれる。制御モジュール自体は専用のデータメモリを持たない。前記接続が正常でないかもしくは正しくない場合には、ブロック198においてパラメータエラーが出力される。そうでない場合には、判定200において、この機能の最後の呼出しが1秒よりも古いかどうかがチェックされる。そうでない場合にはブロック202においてパラメータエラーが出力される。そうである場合には処理はさらにブロック204へ移行し、このブロックでパラメータエラーがリセットされる。
制御モジュール116において、監視モジュール82がカウントアップするカウンタが制御モジュール116のカウンタよりも大きい場合には、その制御カウンタがカウントアップされる。判定206において、監視カウンタおよび制御カウンタが互いに比較される。監視カウンタが制御カウンタよりも大きい場合には、制御カウンタがブロック208においてカウントアップされる。ゆえに、判定210において、記録「監視モジュールが再動作」が診断バッファ88に登録されているかどうかがチェックされる。そうでなければ、ブロック212においてそれの取り戻しが行われる。それからブロック214において対応する2進出力がリセットされる。
一致が存在する場合には、判定216において、監視カウンタの最後のカウンタアップが1秒よりも古くてかつまだ診断バッファ88への登録が行われていないどうかがチェックされる。まだ登録が行われていない場合には、ブロック218において、記録「監視モジュールがもはや動作しない」が登録される。それからブロック220において出力110がセットされる。
最後のカウンタアップが1秒よりも古くかつ登録が存在しなかった場合には、処理は判定216から直接にブロック220へ分岐する。処理はエンド222において終了する。
全部で3個のモジュールの場合には、上述の機能が保たれたままであるかぎり、処理ステップの順序は異なった順序で又は並行に進行してもよい。それぞれスタートとエンドとの間で説明した処理ステップのシーケンスは、規則正しい時間間隔で繰り返される。それぞれスタートとエンドとの間で、各モジュールは当該モジュールによって更新されるカウンタを1だけカウントアップする。
2 核技術設備
4 ディジタル監視装置
8 制御および調節ユニット
10 プログラマブルロジックコントローラ(PLC)
20 CPU
26 メモリ
32 プログラムメモリ領域
38 システムデータメモリ領域
40 他のメモリ領域
44 センサモジュール
50 アクチュエータモジュール
56 データ線
62 インターフェース
70 装置
76 安全性モジュール
78 矢印
80 キースイッチ
82 監視モジュール
88 診断バッファ
90 矢印
92 矢印
94 監視バッファ
100 2進出力
102 2進出力
104 2進出力
108 2進出力
110 2進出力
112 二重矢印
116 制御モジュール
120 スタート
126 判定
132 ブロック
134 判定
136 ブロック
138 ブロック
140 ブロック
142 エンド
150 スタート
152 ブロック
154 判定
156 ブロック
158 ブロック
160 判定
162 ブロック
164 ブロック
166 判定
168 ブロック
170 ブロック
172 判定
174 ブロック
176 ブロック
178 判定
180 ブロック
182 判定
184 ブロック
186 エンド
188 判定
190 ブロック
192 ブロック
194 スタート
196 判定
198 ブロック
200 判定
202 ブロック
204 ブロック
206 判定
208 ブロック
210 判定
212 ブロック
214 ブロック
216 判定
218 ブロック
220 ブロック
222 エンド

Claims (10)

  1. 御および調節ユニット(8)のシステム状態の不正操作を識別する装置(70)であって、
    ・前記制御および調節ユニット(8)の動作状態,ハードウェア拡張状態,プログラム状態の内の少なくとも1つの状態を監視し該状態の変化に応じて通報を発生する監視モジュール(82)が設けられ、
    ・前記監視モジュール(82)の動作を監視する制御モジュール(116)が設けられ
    前記制御および調節ユニット(8)が、プログラマブルロジックコントローラ(10)を有し、前記監視モジュール(82)および前記制御モジュール(116)がプログラマブルロジックコントローラ(10)のソフトウェア構成要素であり、前記両モジュールが相互に、それぞれ相手方のモジュールが予め与えられた時間間隔内でプログラム命令を予定どおりに処理したかどうかをチェックすることを特徴とする装置。
  2. 前記制御および調節ユニット(8)が、データを保存する少なくとも1つの書込み可能なメモリ(26)を有し、前記監視モジュール(82)が前記メモリ(26)に保存されたデータの変化に応じて通報を発生する、請求項1記載の装置。
  3. 前記データがプログラムコード又はそれから生成されるプログラム変数を含む、請求項2記載の装置。
  4. 前記データがシステムデータを含む、請求項2又は3記載の装置。
  5. 前記監視モジュール(82)が前記制御および調節ユニット(8)のCPUの動作モードスイッチの位置を監視する、請求項1乃至4のいずれか1つに記載の装置。
  6. 前記監視モジュール(82)が前記制御および調節ユニット(8)の安全性レベルの変化を監視する、請求項1乃至5のいずれか1つに記載の装置。
  7. 前記通報が、前記制御および調節ユニットのCPUのメモリに書き込まれる、請求項1乃至6のいずれか1つに記載の装置。
  8. 前記通報が、前記装置(70)の前記監視モジュール(82)の出力(100,102,104,108)に供給される、請求項1乃至7のいずれか1つに記載の装置。
  9. 前記制御および調節ユニット(8)の安全性レベルを、キースイッチ(80)の操作時に切り換える安全性モジュール(76)が設けられている、請求項1乃至8のいずれか1つに記載の装置。
  10. 請求項1乃至9のいずれか1つに記載の装置(70)を有する核技術設備。
JP2015555708A 2013-02-06 2014-01-30 制御および調節ユニットのシステム状態の不正操作を識別する装置および該装置を含む核技術設備 Active JP6437457B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102013201937.8 2013-02-06
DE102013201937.8A DE102013201937A1 (de) 2013-02-06 2013-02-06 Vorrichtung und Verfahren zur Erkennung von unbefugten Manipulationen des Systemzustandes einer Steuer- und Regeleinheit einer kerntechnischen Anlage
PCT/EP2014/051837 WO2014122063A1 (de) 2013-02-06 2014-01-30 Vorrichtung und verfahren zur erkennung von unbefugten manipulationen des systemzustandes einer steuer- und regeleinheit einer kerntechnischen anlage

Publications (3)

Publication Number Publication Date
JP2016505183A JP2016505183A (ja) 2016-02-18
JP2016505183A5 JP2016505183A5 (ja) 2017-03-09
JP6437457B2 true JP6437457B2 (ja) 2018-12-12

Family

ID=50115822

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015555708A Active JP6437457B2 (ja) 2013-02-06 2014-01-30 制御および調節ユニットのシステム状態の不正操作を識別する装置および該装置を含む核技術設備

Country Status (10)

Country Link
US (1) US20150340111A1 (ja)
EP (1) EP2954534B1 (ja)
JP (1) JP6437457B2 (ja)
CN (1) CN105074833B (ja)
BR (1) BR112015018466B1 (ja)
DE (1) DE102013201937A1 (ja)
ES (1) ES2629499T3 (ja)
PL (1) PL2954534T3 (ja)
RU (1) RU2647684C2 (ja)
WO (1) WO2014122063A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3067768B1 (de) * 2015-03-11 2018-04-25 Siemens Aktiengesellschaft Automatisierungseinrichtung und Operator-System
EP3088976B1 (de) * 2015-04-28 2017-11-29 Siemens Aktiengesellschaft Verfahren zum betreiben einer automatisierungseinrichtung und automatisierungseinrichtung
EP3401831B1 (de) * 2017-05-11 2021-06-30 Siemens Aktiengesellschaft Vorrichtung und verfahren zum erkennen einer physikalischen manipulation an einem elektronischen sicherheitsmodul
WO2020164994A1 (en) * 2019-02-13 2020-08-20 Syngenta Crop Protection Ag Pesticidally active pyrazole derivatives

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6413643A (en) * 1987-07-07 1989-01-18 Fujitsu Ltd Monitor device for program malfunction
JPH01223581A (ja) * 1988-03-02 1989-09-06 Nec Corp ユニット構成情報収集システム
JPH02197901A (ja) * 1989-01-27 1990-08-06 Sharp Corp プログラマブルコントローラにおけるi/oユニットの活線脱着装置
US5388156A (en) * 1992-02-26 1995-02-07 International Business Machines Corp. Personal computer system with security features and method
JP3556368B2 (ja) * 1996-02-02 2004-08-18 株式会社東芝 発生警報データ収集装置
US5984504A (en) * 1997-06-11 1999-11-16 Westinghouse Electric Company Llc Safety or protection system employing reflective memory and/or diverse processors and communications
US7080249B1 (en) * 2000-04-25 2006-07-18 Microsoft Corporation Code integrity verification that includes one or more cycles
US7085934B1 (en) * 2000-07-27 2006-08-01 Mcafee, Inc. Method and system for limiting processor utilization by a virus scanner
US20030009687A1 (en) * 2001-07-05 2003-01-09 Ferchau Joerg U. Method and apparatus for validating integrity of software
ATE263391T1 (de) * 2002-03-26 2004-04-15 Soteres Gmbh Verfahren zum schutz der integrität von programmen
US7478431B1 (en) * 2002-08-02 2009-01-13 Symantec Corporation Heuristic detection of computer viruses
KR100568228B1 (ko) * 2003-05-20 2006-04-07 삼성전자주식회사 고유번호를 이용한 프로그램 탬퍼 방지 방법과 난독처리된 프로그램 업그레이드 방법, 상기 방법을 위한 장치
US20050071668A1 (en) * 2003-09-30 2005-03-31 Yoon Jeonghee M. Method, apparatus and system for monitoring and verifying software during runtime
RU2265240C2 (ru) * 2003-11-27 2005-11-27 Общество с ограниченной ответственностью Научно-производственная фирма "КРУГ" (ООО НПФ "КРУГ") Модуль системного контроля
JP4619231B2 (ja) * 2005-07-29 2011-01-26 株式会社ジェイテクト 安全plc
US20070067643A1 (en) * 2005-09-21 2007-03-22 Widevine Technologies, Inc. System and method for software tamper detection
US9177153B1 (en) * 2005-10-07 2015-11-03 Carnegie Mellon University Verifying integrity and guaranteeing execution of code on untrusted computer platform
RU2305313C1 (ru) * 2005-12-27 2007-08-27 Яков Аркадьевич Горбадей Способ я.а. горбадея обеспечения надежной работы программного вычислительного средства
US20070168680A1 (en) * 2006-01-13 2007-07-19 Lockheed Martin Corporation Anti-tamper system
CN100507775C (zh) * 2006-03-13 2009-07-01 富士电机系统株式会社 可编程控制器的编程设备
US20080034350A1 (en) * 2006-04-05 2008-02-07 Conti Gregory R System and Method for Checking the Integrity of Computer Program Code
US8117512B2 (en) * 2008-02-06 2012-02-14 Westinghouse Electric Company Llc Failure detection and mitigation in logic circuits
US8595831B2 (en) * 2008-04-17 2013-11-26 Siemens Industry, Inc. Method and system for cyber security management of industrial control systems
JP5297858B2 (ja) * 2009-03-27 2013-09-25 株式会社日立製作所 監視制御システム
JP5422448B2 (ja) * 2010-03-10 2014-02-19 株式会社東芝 制御装置
US9392017B2 (en) * 2010-04-22 2016-07-12 The Trustees Of Columbia University In The City Of New York Methods, systems, and media for inhibiting attacks on embedded devices
US20110313580A1 (en) * 2010-06-17 2011-12-22 Levgenii Bakhmach Method and platform to implement safety critical systems
JP2012013581A (ja) * 2010-07-01 2012-01-19 Mitsubishi Heavy Ind Ltd 原子力プラントの運転監視装置
US20120297461A1 (en) * 2010-12-02 2012-11-22 Stephen Pineau System and method for reducing cyber crime in industrial control systems
RU2470349C1 (ru) * 2011-05-31 2012-12-20 Закрытое акционерное общество "Особое Конструкторское Бюро Систем Автоматизированного Проектирования" Способ защиты от несанкционированного доступа к информации, хранимой в компьютерных системах
US9405283B1 (en) * 2011-09-22 2016-08-02 Joseph P. Damico Sensor sentinel computing device
US8522091B1 (en) * 2011-11-18 2013-08-27 Xilinx, Inc. Prioritized detection of memory corruption

Also Published As

Publication number Publication date
EP2954534A1 (de) 2015-12-16
CN105074833A (zh) 2015-11-18
US20150340111A1 (en) 2015-11-26
RU2015136871A (ru) 2017-03-14
RU2647684C2 (ru) 2018-03-16
CN105074833B (zh) 2018-01-02
PL2954534T3 (pl) 2017-09-29
JP2016505183A (ja) 2016-02-18
BR112015018466B1 (pt) 2022-03-22
EP2954534B1 (de) 2017-03-29
DE102013201937A1 (de) 2014-08-07
ES2629499T3 (es) 2017-08-10
BR112015018466A2 (pt) 2017-07-18
WO2014122063A1 (de) 2014-08-14

Similar Documents

Publication Publication Date Title
EP3101586B1 (en) Active response security system for industrial control infrastructure
CN107950002B (zh) 用于工业设备的防护密码管理的系统和方法
EP3101581B1 (en) Security system for industrial control infrastructure using dynamic signatures
CN106249704B (zh) 基于完整性控制工业企业系统中端点的通信的方法和装置
US9197652B2 (en) Method for detecting anomalies in a control network
US10007783B2 (en) Method for protecting an automation component against program manipulations by signature reconciliation
CN104991528B (zh) Dcs信息安全控制方法及控制站
CN104570822A (zh) 自动化流程控制系统的保护系统、方法及安全复合装置
US7130703B2 (en) Voter logic block including operational and maintenance overrides in a process control system
EP2907102B1 (en) Field device having tamper attempt reporting
Serhane et al. PLC code-level vulnerabilities
JP6437457B2 (ja) 制御および調節ユニットのシステム状態の不正操作を識別する装置および該装置を含む核技術設備
CN101369141B (zh) 用于可编程数据处理设备的保护单元
Serhane et al. Programmable logic controllers based systems (PLC-BS): Vulnerabilities and threats
JP2016505183A5 (ja)
WO2020166329A1 (ja) 制御システム
JP4511861B2 (ja) オーバライドおよびバイパスを利用したプロセス制御・安全システム内におけるフィールドデバイスの動作調整
Negi et al. Intrusion Detection & Prevention in Programmable Logic Controllers: A Model-driven Approach
EP3661149A1 (en) Test system and method for data analytics
Serhane et al. Applied methods to detect and prevent vulnerabilities within PLC alarms code
Serhane PLC Code Vulnerabilities and Attacks: Detection and Prevention
Parekh et al. Opansec-security integrity monitoring for controllers
JP2016201603A (ja) 不正通信検査装置および通信システム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170118

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170118

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171121

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171122

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20180220

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20180419

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180515

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: 20181016

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181114

R150 Certificate of patent or registration of utility model

Ref document number: 6437457

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250