JP6650343B2 - 不正通信検知システム及び不正通信検知方法 - Google Patents

不正通信検知システム及び不正通信検知方法 Download PDF

Info

Publication number
JP6650343B2
JP6650343B2 JP2016097743A JP2016097743A JP6650343B2 JP 6650343 B2 JP6650343 B2 JP 6650343B2 JP 2016097743 A JP2016097743 A JP 2016097743A JP 2016097743 A JP2016097743 A JP 2016097743A JP 6650343 B2 JP6650343 B2 JP 6650343B2
Authority
JP
Japan
Prior art keywords
communication
determination
communication packet
packet
list
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
JP2016097743A
Other languages
English (en)
Other versions
JP2017208598A (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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2016097743A priority Critical patent/JP6650343B2/ja
Priority to US15/592,250 priority patent/US10341294B2/en
Publication of JP2017208598A publication Critical patent/JP2017208598A/ja
Application granted granted Critical
Publication of JP6650343B2 publication Critical patent/JP6650343B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0245Filtering by information in the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は,制御システム内を流れる通信パケットの正当性を検証し、不正な通信を検知する不正通信検知システム及び不正通信検知方法に関する。
電力、鉄道、水道、ガスといった社会インフラおよび自動車で利用される制御システムは、センサの情報をもとにバルブ及びアクチュエータといった装置を動作させ、あらかじめ設定されている圧力や温度を保つことが要求される。この動作を実現するためには、コントローラ等の組込み装置において、定期的にセンサからの情報を取得し、状態を確認し、他のコントローラやサーバ等に通知し、必要に応じて制御を行うことが必要となる。このため、制御システムでは周期的に大量の通信が発生し、その通信データをもとに処理を行うことが通例である。
一方、制御システムはこれまで専用OSおよび専用プロトコルを利用しており、インターネット等の外部ネットワークからアクセスできない領域に孤立した状態で設置されている。このため、いわゆるコンピュータウィルスやDoS攻撃といったサイバー攻撃からは無縁であると考えられてきた。しかしながら、コスト削減のために汎用OSおよび汎用プロトコルを利用するケースが増加しており、効率向上のために情報系システムとの接続も進んできている。また、近年では、制御システムをターゲットとしたコンピュータウィルスが発見されており、制御システムにおいても情報システムと同様にマルウェア等の感染や外部からの不正アクセスを検知する技術が必要となっている。
このような課題に対し、制御システム内のネットワークで発生しうるトラフィックパターンのリストを用いて、通信パケットがリストに適合しない場合は、不正な通信として検知する技術が知られている(たとえば、特許文献1参照)。また、通信パケットと制御システムの物理的な測定値を監視し、測定値と通信パケットを相関させることで、不正な通信パケットを検知する技術が知られている(たとえば、特許文献2参照)。
特開2012−34273号公報 特開2014−179074号公報
しかし、制御システムで利用される組み込み機器は使用可能なリソースに制約があり、制御システム内を流れるすべての正当なパケットパターンを網羅した判定リストを作成するのは困難である。このため、通信パケットに対して、判定リストを用いて通信パケットの検知を行う場合には、誤検知や検知もれが多発する可能性がある。また、すべての通信パケットに対して、制御システムの測定値と相関させる場合には、不正通信検知装置の負荷が高まる可能性がある。
本発明は、上記事情に鑑みてなされたものであり、処理性能に制約がある組込み装置であっても、効果的に制御システム内を流れる通信パケットの誤検知及び検知漏れの低減が可能となる不正通信検知システム及び不正通信検知方法を提供する。
上記目的を達成するため本発明の一実施形態である不正通信検知システムは、 制御システム内で行われる不正な通信を検知する検知装置を備える不正通信検知システムであって、前記検知装置は、不正通信の有無を判定するための判定リストを格納し、前記制御システム内を流れる通信パケットを受信し、前記判定リスト中の参照データと、前記通信パケットに関する受信データとが一致するか否かを判定し、前記判定リスト中の前記参照データと、前記通信パケットに関する前記受信データとが一致しない場合、前記判定リスト中の参照データと前記通信パケットに関する前記受信データとの類似度を算出し、類似度が所定の条件を満たすか否かを判定し、前記類似度が前記所定の条件を満たさないと判定した場合、前記通信パケットが不正な通信パケットであると判断する。
また、本発明の一実施形態である不正通信検知方法は、制御システム内で行われる不正な通信を検知する不正通信検知方法であって、前記制御システム内を流れる通信パケットを受信し、不正通信の有無を判定するための判定リスト中の参照データと、前記通信パケットに関する受信データとが一致するか否かを判定し、前記判定リスト中の前記参照データと、前記通信パケットに関する前記受信データとが一致しない場合、前記判定リスト中の参照データと前記通信パケットに関する前記受信データとの類似度を算出し、類似度が所定の条件を満たすか否かを判定し、前記類似度が前記所定の条件を満たさないと判定した場合、前記通信パケットが不正な通信パケットであると判断する。
本発明によれば、処理性能に制約がある組込み装置であっても、制御システム内を流れる通信パケットの誤検知や検知もれの低減が可能となる。
本発明の第一の実施形態に係る制御システム向け不正通信検知システムの構成を例示する図である。 図1に示す制御装置のハードウェア構成を例示する図である。 図1に示すネットワーク装置のハードウェア構成を例示する図である。 図1に示す検知装置及び監視装置のハードウェア構成を例示する図である。 本発明の第一の実施形態に係る制御システム向け不正通信検知システムにおいて、通信パケットの検知を行う処理フローを例示する図である。 本発明の第一の実施形態に係る制御システム向け不正通信検知システムにおいて、検知装置を用いて制御装置の間で試運転時等に行われる制御業務の通信パケットを収集する処理フローを例示する図である。 本発明の第一の実施形態に係る制御システム向け不正通信検知システムにおいて、監視装置を用いて制御装置で観測した観測データを収集し、格納する処理フローを例示する図である。 本発明の第一の実施形態に係る制御システム向け不正通信検知システムにおいて、観測値を取得した後に実行する判定パターン生成処理の処理フローを例示する図である。 本発明の第一の実施形態に係る制御システム向け不正通信検知システムにおいて、検知装置を用いて制御装置間で送受信される通信パケットの正当性を検証する処理フローを例示する図である。 本発明の第一の実施形態に係る制御システム向け不正通信検知システムにおいて、検知装置を用いて制御装置間で送受信される通信パケットの正当性を検証する処理フローにおける、通信パケットの類似度を算出する処理フローを例示する図である。 本発明の第一の実施形態に係る制御システム向け不正通信検知システムにおいて、検知装置を用いて制御装置間で送受信される通信パケットの正当性を検証する処理フローにおける、通信パケットの有害判定及び判定リスト更新を行う処理の処理フローを例示する図である。 本発明の第一の実施形態に係る制御システム向け不正通信検知システムにおいて、検知装置の観測値格納部や監視装置の観測値格納部に格納される制御システムの観測値の構成を例示する図である。 本発明の第一の実施形態に係る制御システム向け不正通信検知システムにおいて、制御装置と監視装置で送受信される観測値収集コマンドの構成を例示する図である。 本発明の第一の実施形態に係る制御システム向け不正通信検知システムにおいて、検知装置の判定パターン格納部に格納される制御システムの判定パターンの構成を例示する図である。 本発明の第一の実施形態に係る制御システム向け不正通信検知システムにおいて、検知装置の通信パケット格納部に格納される通信パケットの構成を例示する図である。 本発明の第一の実施形態に係る制御システム向け不正通信検知システムにおいて、検知装置の判定リスト格納部に格納される判定リストの構成を例示する図である。 本発明の第一の実施形態に係る制御システム向け不正通信検知システムにおいて、検知装置の類似パケット格納部に格納される類似パケットの構成を例示する図である。 本発明の第二の実施形態に係る制御システム向け不正通信検知システムの構成を例示する図である。 本発明の第二の実施形態に係る制御システム向け不正通信検知システムにおいて、検知装置を用いて制御装置間で送受信される通信パケットの正当性を検証する処理フローにおける、類似パケットを格納する処理フローを例示する図である。 本発明の第二の実施形態に係る制御システム向け不正通信検知システムにおいて、検知装置を用いて制御装置間で送受信される通信パケットの正当性を検証する処理フローにおける、通信パケットの有害判定及び判定リスト更新を行う処理の処理フローを例示する図である。 本発明の第二の実施形態に係る制御システム向け不正通信検知システムにおいて、検知装置の類似パケット格納部に格納される類似パケットの構成を例示する図である。 本発明の第三の実施形態に係る制御システム向け不正通信検知システムの構成を例示する図である。 本発明の第三の実施形態に係る制御システム向け不正通信検知システムにおいて、通信パケットの検知を行う処理フローを例示する図である。 本発明の第三の実施形態に係る制御システム向け不正通信検知システムにおいて、検知装置を用いて制御装置間で送受信される通信パケットの正当性を検証する処理フローにおける、通信パケットの判定リスト更新を行う処理の処理フローを例示する図である。
本発明の一実施形態に係る制御システム向け不正通信検知システム1及び不正通信検知方法について説明する。なお、これにより本発明が限定されるものではない。
図1は、本発明の第一の実施形態に係る制御システム向け不正通信検知システム1の構成図である。
本実施形態の制御システム向け不正通信検知システム1は、図1に例示するように、制御装置10〜10と、ネットワーク装置20と、検知装置30と、監視装置40と、ネットワーク50と、から構成されている。ここで、制御システムとは、例えば、電力、鉄道、水道、ガス等の社会インフラおよび自動車で利用される制御システムであり、センサの情報をもとにバルブ及びアクチュエータといったデバイスを動作させ、あらかじめ設定されている圧力や温度を保つように構成されている。なお、制御装置10〜10、ネットワーク装置20、監視装置40、及びネットワーク50は、制御システムの一部としても機能している。
制御装置10〜10は、制御処理を行う制御処理部101〜101と、ネットワーク50やネットワーク装置20等と通信を行う通信部102〜102と、を含む。
ネットワーク装置20は、ネットワーク装置20に入力される通信パケットを複製するパケット複製部201と、ネットワーク50と通信を行う第一通信部202と、検知装置30と通信を行う第二通信部203と、制御装置10と通信を行う第三通信部204と、を含む。なお、ネットワーク装置20は、4つ以上の通信部を保有しても良い。
検知装置30は、観測値通信部301と、観測値取得部302と、判定パターン生成部303と、判定パターン更新部304と、パケット通信部305と、通信パケット取得部306と、判定リスト生成部307と、リスト判定部308と、類似性判定部309と、有害性判定部310と、判定リスト更新部311と、アラート生成部312と、観測値格納部313と、判定パターン格納部314と、通信パケット格納部315と、判定リスト格納部316と、類似度閾値格納部317と、類似パケット格納部318と、アラート格納部319と、動作モード管理部320と、受信時間格納部321と、通信識別部322と、通信識別情報格納部323と、を備える。
観測値通信部301は、ネットワーク50と通信を行う。観測値取得部302は、検知装置30に入力される観測値を取得する。判定パターン生成部303は、取得した観測値から判定パターンを生成する。判定パターン更新部304は、生成した判定パターンを更新する。パケット通信部305は、ネットワーク装置20と通信を行う。通信パケット取得部306は、検知装置30に入力される通信パケットを取得する。判定リスト生成部307は、取得した通信パケットから判定リストを生成する。リスト判定部308は、取得した通信パケットの正当性を検証する。類似性判定部309は、取得した通信パケットが判定リストに該当しない場合、取得した通信パケットと判定リストとの類似性を判定する。有害性判定部310は、類似性判定の結果、類似性があると判断した場合に、生成した判定パターンと取得した観測値を用いて、通信パケットの有害性を判定する。判定リスト更新部311は、通信パケットに有害性がないと判断した場合に、通信パケットを判定リストに追加する。アラート生成部312は、通信パケットに有害性があると判断した場合と類似性がないと判断した場合にアラートを生成する。
観測値格納部313は、観測値取得部302で取得した観測値を格納する。判定パターン格納部314は、取得した観測値から生成した判定パターンを格納する。通信パケット格納部315は、通信パケット取得部305で取得した通信パケットを格納する。判定リスト格納部316は、通信パケットの正当性を検証するために必要な情報を格納する。類似度閾値格納部317は、通信パケットと判定リストの類似性を判定する際に利用する情報を格納する。類似パケット格納部318は、類似性判定部309による類似性判定の結果、類似性があると判断した通信パケットを格納する。アラート格納部319は、アラート生成部312で生成したアラートを格納する。動作モード管理部320は、検知装置30の動作モードの管理を行う。受信時間格納部321は、通信パケットを受信した受信時間に関する情報を格納する。通信識別部322は、ネットワーク50やネットワーク装置20との通信で使用する通信プロトコルを識別する。通信識別情報格納部323は、通信プロトコルを識別するために必要な情報を格納する。
監視装置40は、ネットワーク50と通信を行う通信部401と、監視装置40に入力される観測値を取得する観測値取得部402と、観測値取得部で取得した観測値を格納する観測値格納部403と、を含む。
図2は、制御装置10〜10のハードウェア構成を例示する図である。
各制御装置10〜10は、通信装置11と、入出力装置12と、記憶装置13と、CPU14と、メモリ15と、を備え、各構成要素は、バスなどの内部通信線16で連結されている。また、各制御装置10〜10には、センサ、バルブ及びアクチュエータ等のデバイスが接続されている。
図3は、ネットワーク装置20のハードウェア構成を例示する図である。
ネットワーク装置20は、第一通信装置21と、第二通信装置21と、第三通信装置21と、記憶装置22と、入出力装置23と、CPU24と、メモリ25と、を備え、各構成要素がバスなどの内部通信線26で連結されている。なお、ネットワーク装置20は、4つ以上の通信装置を保有しても良い。
図4は検知装置30や監視装置40のハードウェア構成を例示する図である。
検知装置30および監視装置40は、それぞれ、通信装置31と、入出力装置32と、記憶装置33と、CPU34と、メモリ35と、記憶媒体37を読み込み可能な読取装置36と、を備え、各構成要素がバスなどの内部通信線38で連結されている。
次に、本実施形態の制御システム向け不正通信検知システム1における処理フローについて説明する。以下に述べる処理フローは、制御装置10〜10、ネットワーク装置20、検知装置30、および監視装置40の記憶装置に格納されたプログラムがメモリにロードされ、CPUにより実行されることにより、制御システム向け侵入検知システムを構築する装置上に具現化される各処理部により実行されるものである。また、各プログラムは予め記憶装置に格納されても良いし、他の記憶媒体または通信媒体(ネットワークまたはネットワークを伝搬する伝送波)を介して、必要なときに導入されても良い。
図5は、本発明の第一の実施形態に係る制御システム向け不正通信検知システム1において、監視装置40を用いて、検知装置30で通信パケットの検知に利用する判定リスト及び判定パターンを生成する処理と、通信パケットの検知を行う処理と、判定リスト及び判定パターンを更新する処理と、の処理フローを示した図である。
はじめに、検知装置30は、検知装置30の動作モードを試運転モードに設定する(S501(S501と表現する。以下同様))。ここで、動作モードを試運転モードに設定できない、もしくは、以降の処理が試運転モードに設定されないまま実行されようとする場合には、以降の処理を中止してもよい。
次に、検知装置30は、試運転モードにおける通信パケットの収集業務を行う(S502)。なお、収集業務の処理フローは図6において詳細に説明する。
次に、検知装置30は、S502で収集した通信パケット(通信パケット格納部315に格納された通信パケット)に基づき、判定リスト生成処理を行う(S503)。判定リストとは、制御システムを正常に動作させる通信パケットに基づき生成されるデータパターンのリストである。ここで、判定リスト生成処理の例として、まず、S502で収集した通信パケットに格納された通信プロトコル番号、サイズ、及び通信パケットの受信周期などの情報と、通信識別情報格納部323に格納された情報とを用いて、通信に使用しているDNP3.0又はEthernet/IP及びModbusなどの通信プロトコルを識別する。これにより、判定リスト生成に使用するデータパターンが格納された通信パケットの領域を識別することを想定しているが、これに限定されるものではない。
また、通信パケットから判定リスト格納部316に格納するエントリの生成方法の例として、通信パケットの識別した領域に格納されているバイナリデータのパターンを抽出し、データパターンが格納されていたパケット内の領域を表す情報と、データパターンを組み合わせて生成する方法、又は、データパターンと通信周期を表す情報を組み合わせて生成する方法を想定しているが、これに限定されるものではない。
次に、検知装置30は、生成したエントリを判定リスト格納部316に格納する(S504)。ここで、判定リスト(A1601、図16)へ格納する方法の例として、生成したエントリに、エントリ番号に相当するリストIDを付与し、リストIDとエントリの組を判定リスト格納部316へ格納することを想定しているが、これに限定されるものではない。なお、判定リスト(A1601)の構成は、図16において詳細に説明する。
一方、監視装置40は、観測値の観測業務を行う(S505)。なお、観測値の構成は図12において詳細に説明する。また、観測業務の処理フローは図7において詳細に記載する。
次に、検知装置30は、観測値を収集するための観測値収集コマンド(A501)を監視装置40に送信する。なお、観測値収集コマンドの構成は図13において詳細に説明する。
次に、監視装置40は、観測値格納部403に格納されている観測値を取得する(S506)。
次に、監視装置40は、取得した観測値を検知装置30に送信する(A502)。
次に、検知装置30は、取得した観測値を観測値格納部313に格納し、判定パターン(A1401、図14)を生成する(S507)。判定パターンとは、正当な制御コマンドにより、制御システムを制御した時の、センサおよびアクチュエータなどのデバイスごとの、温度および圧力等の個々の観測項目の変化量及び周期に関する情報を想定しているが、これに限定されるものではない。なお、判定パターンの構成は図14において詳細に説明する。また、判定パターン生成処理の処理フローは図8において詳細に説明する。また、S507の処理ステップはS506の処理ステップに含めてもよい。
次に、検知装置30の動作モードを実運転モードに設定する(S508)。
次に、通信パケット取得部306で取得した通信パケットの検知業務を行う(S509)。当該検知業務では、判定リストのデータパターンに類似するデータパターンを有する通信パケットを、取得した通信パケットから抽出する処理等を行う。なお、通信パケットの構成は、図15において詳細に説明する。また、検知業務の処理フローは、図9において詳細に詳細な記載する。
一方、監視装置40は、S505と同様の観測値の観測業務を行う(S510)。
次に、検知装置30は、S509で取得した通信パケットの中で、判定リスト格納部316に格納された判定リストと類似したパケットが有るか無いかを判定する(S511)。すなわち、類似パケット格納部318に、通信パケットが格納されているか否かを判定する。その結果、無いと判定された場合には処理を終了する(S512)。
一方で、有ると判定された場合には、検知装置30は観測値収集コマンド(A503)を監視装置40に送信する。
次に、監視装置40は、観測値格納部403に格納されている観測値を取得する(S513)。
次に、監視装置40は取得した観測値を検知装置30に送信する(A504)。
次に、検知装置30は、取得した観測値を観測値格納部313に格納し、通信パケットの有害判定及び判定リスト更新処理を行う(S514)。なお、有害判定及び判定リスト更新処理の処理フローは、図11において詳細に説明する。
次に、検知装置30は、観測値格納部313に空き容量があるかどうか判定する(S515)。
判断の結果、空き容量がないと判定された場合は、検知装置30は、判定パターンの生成処理を行う(S516)。上記と同様に、判定パターンの構成は図14において詳細に説明し、判定パターン生成処理の処理フローは図8において詳細に説明する。当該処理により、S507で生成した判定パターンに代えて新たな判定パターンが生成され、制御システムの経年変化に応じて判定パターンを生成することができる。一方で、空き容量があると判定された場合は、S516の処理は行わない。
S516の処理の後、S509、S511、及びS514〜S516の処理が繰り返し実行される。
図6は、本発明の第一の実施形態に係る制御システム向け不正通信検知システム1において、検知装置30が行う収集業務S502の処理フローを示した図である。
はじめに、制御装置10は、検知装置30が試運転モードに設定されたことに基づき、試運転用の制御コマンドを生成する(S601)。当該試運転用の制御コマンドは、制御装置10に予め記憶されている。
次に、制御装置10は生成した制御コマンド(A601)を、ネットワーク装置20を介して制御装置10に送信する。
次に、ネットワーク装置20は、制御措置10から受信した制御コマンドを複製する(S602)。
次に、ネットワーク装置20は、複製した制御コマンド(A601)を検知装置30と制御装置10に送信する。
次に、検知装置30は、受信した通信パケットを通信パケット格納部315に格納する(S603)。
次に、制御装置10は、制御装置10から受信した制御コマンド(A601)を用いて、制御装置10に接続されているデバイスの制御業務を行う(S604)。
次、各デバイスを処理した結果を示すレスポンス(A602)を制御装置10に送信する。
次に、ネットワーク装置20は、受信したレスポンス(A602)を複製する(S605)。
次に、ネットワーク装置20は、複製したレスポンスを制御装置10および検知装置30に送信する。
次に、検知装置30は、受信したレスポンス(A602)を通信パケット格納部315に格納する(S606)。
図7は、本発明の第一の実施形態に係る制御システム向け不正通信検知システム1において、監視装置40が行う観測業務S505及びS510の処理フローを示した図である。
はじめに、制御装置10は、収集可能な観測値を収集する(S701)。ここで観測値には、センサ及びアクチュエータなどのデバイスの、圧力、温度、及びタイミングなどの物理的なパラメータを含むことができるが、これらに限定されるものではない。次に、制御装置10は、収集した観測値(A701)を、ネットワーク装置20を介して監視装置40に送信する。
次に、ネットワーク装置20は、受信した観測値(A701)を複製する(S702)。
次に、複製した観測値(A701)を監視装置40および検知装置30に送信する。
次に、監視装置40は、受信した観測値(A701)を観測値格納部403に格納する(S703)。なお、検知装置30は、受信した観測値(A701)を通信パケット格納部315に格納する。格納された通信パケットは、判定リスト生成処理(S503)及び検知業務(S509)に用いられる。
図8は、本発明の第一の実施形態に係る制御システム向け不正通信検知システム1において、検知装置30が行う判定パターン生成処理S507及びS516の処理フローを示した図である。
はじめに、検知装置30は、判定パターン生成処理を開始する(S801)。
次に、検知装置30は、観測値格納部313に格納されている観測値を取得する(S802)。
次に、検知装置30は、観測値が有する観測項目および観測された値を示す観測データを用いて、判定パターンを生成する(S803)。上記のように、判定パターンとは、センサ及びアクチュエータなどのデバイスごとに、温度や圧力といった個々の観測項目の変化量や周期に関する情報を想定しているが、これに限定されるものではない。また、判定パターンの生成方法の例として、取得した観測値を、観測値に含まれる装置IDごとに分類し、各装置IDにおいて観測項目ごとにさらに分類し、各観測項目において最大値、最小値、及び周期などを抽出し、抽出情報から変化量などを算出し、算出した情報(正当観測パターン)と観測項目と装置IDとを組み合わせて生成することを想定しているが、これに限定されるものではない。
次に、S802で取得した観測値における装置ID及び観測項目の中で、判定パターンが生成されていない装置ID及び観測項目の有無を検証する(S804)。検証の結果、判定パターンが生成されていない装置ID及び観測項目があると判断された場合には、ステップS803に戻って、別の装置ID及び観測項目に対する判定パターンの生成を行う。
一方、全ての装置ID及び観測項目において判定パターンが生成されていると判断された場合には、生成した判定パターンを判定パターン格納部314に格納する(S805)。
次に、観測値格納部313に格納された観測値を消去する(S806)。次に、処理を終了する(S807)。
図9は、本発明の第一の実施形態に係る制御システム向け不正通信検知システム1において、検知装置30が行う検知業務(S509)の処理フローを示した図である。検知業務では、制御装置間で送受信される通信パケットの正当性が検証される。
はじめに、制御装置10は、検知装置30が実運転モードに設定されたことに基づき、実運転用の制御コマンドを生成する(S901)。
次に、制御装置10は、生成した制御コマンド(A901)を、ネットワーク装置20を介して制御装置10に送信する。
次に、ネットワーク装置20は、制御措置10から受信した制御コマンドを複製する(S902)。
次に、ネットワーク装置20は、複製した制御コマンド(A901)を検知装置30と制御装置10に送信する。
次に、検知装置30は、ネットワーク装置20から受信した制御コマンドである通信パケット(A901)の受信時刻を取得する(S903)。また、受信した通信パケット(A901)は、通信パケット格納部315に格納される。
次に、受信した通信パケット(A901)に対して、判定リスト格納部316に格納されている判定リストを用いて、判定処理を行う(S904)。すなわち、通信パケットのパケットデータに該当するデータパターン(受信データ)が、判定リストの正当通信パターンの正当なデータパターン(参照データ)に一致するか否かが判定される。ここで、通信パケットの周期情報を用いて判定する場合は、過去に受信した通信パケットを通信パケット格納部315から読み出し判定を行うことを想定しているがこれに限定されるものではない。この場合、通信パケットのデータパターン及び受信周期に関する情報が、受信パターンに相当する。また、通信パケットに関する受信データは、データパターンと、それが格納されている領域に関する情報とを組み合わせて構成されてもよく、さらに受信周期に関する情報を組み合わせて構成してもよい。
この結果、通信パケットのパケットデータに該当するデータパターンが、判定リストの正当通信パターンの正当なデータパターンに一致する(該当)と判断された場合には、処理を終了する(S905)。
一方で、一致しない(非該当)と判断された場合には、検知装置30は、判定リスト格納部316に格納された判定リストを用いて類似度を算出する(S906)。なお、類似度算出処理の処理フローは図10において詳細に説明する。
次に、検知装置30は、S906で算出した類似度と、類似度判定閾値格納部317に格納された類似性を判定する際に利用する情報と、を用いて、受信した通信パケットのデータパターンと判定リストのデータパターンの類似判定処理を行う(S907)。ここで、S907では、類似度閾値格納部317に格納された閾値を読み出し、S906で算出された全ての類似度のうち、一つでも閾値の範囲内にあるか(所定の条件を満たすか)否かを判断する。この結果、全ての類似度が閾値の範囲外と判断された場合には、検知装置30は、アラートを生成する(S908)。
次に、検知装置30は、生成したアラートをアラート格納部319に格納する(S909)。一方で、全ての類似度のうち、一つでも閾値の範囲内と判断された場合には、通信パケットを類似パケットとして類似パケット格納部318に格納する(S910)。ここで、類似パケットの構成は図17で詳細説明する。また、類似パケット格納部318に既に同じデータパターンが格納されている場合には、格納済みである同じデータパターンの類似パケット領域に含まれるパターン数の更新を行い、類似パケットの新たな格納は行わない。
次に、制御装置10は、制御装置10から受信した制御コマンド(A601)を用いて、制御装置10に接続されているデバイスの制御業務を行う(S911)。
次に、各デバイスを処理した結果を示すレスポンス(A902)を制御装置10に送信する。
次に、ネットワーク装置20は、受信したレスポンス(A902)を複製する(S912)。
次に、ネットワーク装置20は、複製したレスポンス(A902)を検知装置30及び制御装置10に送信する。
次に、検知装置30は、ネットワーク装置20から受信したレスポンスである通信パケット(A902)の受信時刻を取得する(S913)。
次に、受信した通信パケット(A902)に対して、判定リスト格納部316に格納されている判定リストを用いて、判定処理を行う(S914)。この結果、通信パケットのパケットデータに該当するデータパターンが、判定リストの正当通信パターンの正当なデータパターンに合致する(該当)と判断された場合には、処理を終了する(S915)。
一方で、合致しない(非該当)と判断された場合には、検知装置30は、判定リスト格納部316に格納された判定リストを用いて類似度を算出する(S916)。
次に、検知装置30は、S916で算出した類似度と類似度判定閾値格納部317に格納された類似性を判定する際に利用する情報を用いて、受信パケットのデータパターンと判定リストのデータパターンの類似判定処理を行う(S917)。ここで、S917では、類似度閾値格納部317に格納された閾値を読み出し、S916で算出された全ての類似度が閾値の範囲内か否かを判断する。
この結果、閾値の範囲外と判断された場合には、アラートを生成する(S918)。
次に、生成したアラートをアラート格納部319に格納する(S919)。
一方で、閾値の範囲内と判断された場合には、通信パケットを類似パケット格納部318に格納する(S920)。ここで、類似パケット格納部318に既に同じデータパターンが格納されている場合には、格納済みである同じデータパターンの類似パケット領域に含まれるパターン数の更新を行い、類似パケットの新たな格納は行わない。
図10は、本発明の第一の実施形態に係る制御システム向け不正通信検知システム1において、検知装置30が行う類似度算出処理S906およびS916の処理フローを示した図である。
はじめに、検知装置30は、類似度算出処理を開始する(S1001)。
次に、検知装置30は、通信パケット格納部315に格納されている通信パケット(A901)を取得する(S1002)。
次に、検知装置30は、判定リスト格納部316に格納されている判定リストを取得する(S1003)。
次に、検知装置30は、通信パケットに格納されているパケットデータと、判定リストに格納されているリストIDに紐づいた正当データパターンを用いて類似度を算出する(S1004)。ここで、類似度とは、例えば、パケットデータと正当データパターンを1バイトなどのデータブロックに分割し、データブロック毎に一致しているか否かを判定し、一致している数を算出し、ブロック数で除算することで算出する方法や、ファジーハッシュなどを用いるが、これらに限定されるものではない。
次に、検知装置30は、判定リスト格納部316に格納されているリストIDの中で、類似度を算出していないリストIDの有無を検証する(S1005)。検証の結果、類似度を算出していないリストIDがあると判断された場合には、ステップS1003に戻り、別のリストIDに紐づいた正当データパターンを用いて類似度を算出する。一方で、検知装置30は、すべてのリストIDに対して類似度を算出済みであると判断された場合には、処理を終了する(S1006)。
図11は、本発明の第一の実施形態に係る制御システム向け不正通信検知システム1において、検知装置30が行う有害判定及び判定リスト更新処理S514の処理フローを示した図である。
はじめに、検知装置30は、有害判定及び判定リスト更新処理を開始する(S1101)。
次に、検知装置30は、類似パケット格納部318から一つの類似パケットを取得する(S1102)。
次に、検知装置30は、受信時間格納部321から類似パケットの受信時刻情報を収集する(S1103)。
次に、検知装置30は、類似パケットの受信時刻近辺の観測値を観測値格納部313から取得する(S1104)。ここで、観測値の取得方法の例として、受信時刻及び類似パケット内のデバイスのアドレス情報と、観測値の観測時刻及び装置IDとに基づき、観測値を取得することを想定しているが、これに限定されるものではない。
次に、検知装置30は、判定パターン格納部314から判定パターンを取得する(S1105)。
次に、検知装置30は、観測項目ごとに取得した観測値が観測項目の判定パターンに一致するか否かを判定する(S1106)。例えば、温度および圧力等の個々の観測項目の観測データが、判定パターンの観測項目の変化量の範囲内に収まっており、又は、バルブの開閉の周期が、判定パターンのバルブの周期と等しい場合に、判定パターンに一致していると判断される。その結果、観測項目ごとに取得した観測値が観測項目の判定パターンに一致しないと判断された場合には、当該観測値を削除して、アラートを生成する(S1107)。このように、不正な通信パケットを検知することができ、アラートを作業者に対し通知することができる。
次に、検知装置30は、生成したアラートをアラート格納部319に格納する(S1108)。
一方で、観測値が判定パターンに一致すると判断された場合には、検知装置30は、類似パケットから判定リストに追加するエントリを生成する(S1109)。ここで、エントリの生成方法の例として、類似パケットに格納されているデータパターンを抽出することを想定しているがこれに限定されるものではない。
次に、検知装置30は、生成したエントリを判定リスト格納部316に格納する(S1110)。ここで、エントリを格納する方法の例として、生成したエントリに、エントリ番号に相当するリストIDを付与し、リストIDとエントリの組を判定リスト316へ格納することを想定しているが、これに限定されるものではない。これにより、観測結果に基づいて、正当なデータパターンを有する通信パケットに関する新たなエントリを判定リストに対し追加することができる。
次に、検知装置30は、類似パケット格納部318から当該類似パケットを削除する(S1111)。
次に、検知装置30は、類似パケット格納部318に格納されている類似パケットのレコード数を取得する(S1112)。
次に、検知装置30は、類似パケット格納部318に格納されている類似パケットの有無を判定する(S1113)。判定の結果、レコード数が0でないと判断された場合には、検知装置30は、ステップS1102に戻って、別の類似パケットを類似パケット格納部318から取得する。一方で、レコード数が0と判断された場合には、処理を終了する(S1114)。
図12は、本発明の第一の実施形態に係る制御システム向け不正通信検知システム1において、監視装置40の観測値格納部403に格納される観測値の構成を例示する図である。
観測値(A1201)は、観測した時刻を示す観測時刻(A1202)と、装置を識別する情報を示す装置ID(A1203)と、観測された値を識別する情報を示す観測項目(A1204)と、観測された値を示す観測データ(A1205)と、から構成される。ここで、装置IDに使用する情報の例として、装置のIPアドレスを使用する方法があるが、これに限定されるものではない。また、観測値(A1201)の構成要素は上記に限定されるものではなく、少なくとも上記の要素が含まれていればよい。また、観測値(A1201)の構成要素の順序は上記に限定されるものではない。
図13は、本発明の第一の実施形態に係る制御システム向け不正通信検知システム1において、検知装置30が監視装置40に送信する観測値収集コマンドの構成を例示する図である。
観測値収集コマンド(A1301)は、観測値を収集する指示であるコマンド(A1302)と、装置を識別する情報を示す装置ID(A1303)と、観測値の収集時刻を指定する時刻データ(A1304)と、から構成される。ここで、時刻データ(A1304)には、観測値の収集開始時刻と収集終了時刻が含まれていてもよいし、観測値の収集開始時刻と収集期間が含まれていてもよいし、複数の収集時刻が含まれていてもよい。また、装置IDに使用する情報の例として、装置のIPアドレスを使用する方法があるが、これに限定されるものではない。また、観測値収集コマンド(A1301)の構成要素は上記に限定されるものではなく、少なくとも上記の要素が含まれていればよい。また、観測値収集コマンド(A1301)の構成要素の順序は上記に限定されるものではない。
図14は、本発明の第一の実施形態に係る制御システム向け不正通信検知システム1において、検知装置30の判定パターン格納部314に格納される判定パターンの構成を例示する図である。
判定パターン(A1401)は、装置を識別する情報を示す装置ID(A1402)と、観測された値を識別する情報を示す観測項目(A1403)と、観測された値の正当な挙動を示す正当観測パターン(A1404)から構成される。ここで、装置IDに使用する情報の例として、装置のIPアドレスを使用する方法があるが、これに限定されるものではない。また、判定パターン(A1401)の構成要素は上記に限定されるものではなく、少なくとも上記の要素が含まれていればよい。また、判定パターン(A1401)の構成要素の順序は上記に限定されるものではない。また、観測項目(A1403)には、一つ又は複数の観測項目を含んでいてもよいし、正当観測パターン(A1404)には、一つ又は複数の観測項目に対応する正当観測パターンを含んでいてもよい。
図15は、本発明の第一の実施形態に係る制御システム向け不正通信検知システム1において、検知装置30の通信パケット格納部315に格納される通信パケットの構成を例示する図である。
通信パケット(A1501)は、パケットを受信した日時を示す受信日時(A1502)と、パケットのサイズを示すサイズ(A1503)と、パケットのバイナリデータを示すパケットデータ(A1504)から構成される。また、パケットデータ(A1504)は、ペイロードに含まれるデータのパターンを示すパケットデータである。ここで、通信パケット(A1501)の構成要素は上記に限定されるものではなく、少なくとも上記の構成が含まれていればよい。また、通信パケット(A1501)の構成要素の順序は上記に限定されるものではない。パケットデータには、制御コマンド、レスポンス、または、観測値等が含まれる。
図16は、本発明の第一の実施形態に係る制御システム向け不正通信検知システム1において、検知装置30の判定リスト格納部316に格納される判定リストの構成を例示する図である。
判定リスト(A1601)は、正当データパターンを識別する情報を示すリストID(A1602)と、正当通信パターン(A1603)から構成される。ここで、正当通信パターン(A1603、参照データ)は、通信パケットの中で検知処理を行う領域を示す情報と、検知領域に含まれる正当なデータパターンとの組み合わせで構成されてもよいし、通信パケットに含まれる正当なデータパターンと、次に受信するまでの時間情報や受信パケット数などの受信周期情報との組み合わせで構成されてもよいし、これらに限定されるものではない。正当通信パターンを正当なデータパターンのみで構成することにより、処理速度を速くすることができ、正当通信パターンを、正当なデータパターンと、データパターンが格納されている通信パケット内の領域に関する情報及び/又はデータパターンの受信周期に関する情報と、を組み合わせて構成することにより、精度よく判定処理を行うことができる。また、判定リスト(A1601)の構成要素は上記に限定されるものではなく、少なくとも上記の要素を含んでいればよい。また、判定リスト(A1601)の構成要素の順序は上記に限定されるものではない。
図17は、本発明の第一の実施形態に係る制御システム向け不正通信検知システム1において、検知装置30の類似パケット格納部318に格納される類似パケットの構成を例示する図である。
類似パケット(A1701)は、パケットを受信した日時を示す受信日時(A1702)と、パケットのサイズを示すサイズ(A1703)と、ペイロードに含まれるデータのパターンを示すパケットデータ(A1704)と、パケットデータの受信回数を示すパターン数(A1705)から構成される。ここで、受信日時(A1702)には、例えば、パケットデータ(A1705)を含む通信パケットを初めて取得した受信日時を指定する方法が考えられるが、これに限定されるものではない。また、類似パケット(A1701)の構成要素は上記に限定されるものではなく、少なくとも上記の要素を含んでいればよい。また、類似パケット(A1701)の構成要素の順序は上記に限定されるものではない。
以上のように、本実施形態に係る不正通信検知システム1によれば、低負荷で不正通信検知システム1を構築できるので、処理性能に制約がある組込み装置であっても、効果的に制御システム内を流れる通信パケットの誤検知及び検知漏れの低減が可能となる不正通信検知システム1及び不正通信検知方法を提供することができる。
次に、本発明の第二の実施形態に係る制御システム向け不正通信検知システム2001について説明する。
図18は、本発明の第二の実施形態に係る制御システム向け不正通信検知システム2001の構成図である。
本実施形態の制御システム向け不正通信検知システムは、図18に例示するように、制御装置10〜10と、ネットワーク装置20と、検知装置30と、監視装置40と、ネットワーク50と、から構成されている。
制御装置10〜10と、ネットワーク装置20と、監視装置40の構成要素は図1と同様である。
検知装置30の構成要素は、図1で示した構成要素に加えて、類似パケット判定順序決定部324と、判定リスト追加箇所決定部325と、を備える。類似パケット判定順序決定部324は、類似パケット格納部318に格納された類似パケットの判定順序を決定する。判定リスト追加箇所決定部325は、有害性処理部310で無害と判断された類似パケットを、判定リスト格納部317に格納された判定リストへ追加する位置を決定する。
本実施形態の制御システム向け不正通信検知システム2001における処理フローについて説明する。以下に述べる処理フローは、制御装置10〜10やネットワーク装置20や検知装置30や監視装置40の記憶装置に格納されたプログラムがメモリにロードされ、CPUにより実行されることにより、制御システム向け侵入検知システムを構築する装置上に具現化される各処理部により実行されるものである。また、各プログラムは予め記憶装置に格納されても良いし、他の記憶媒体または通信媒体(ネットワークまたはネットワークを伝搬する伝送波)を介して、必要なときに導入されても良い。なお、本実施形態に係る不正通信検知システム2001では、第一の実施形態に係る不正通信検知システム1で実行される処理と基本的に同様の処理が実行されるが、以下の説明では、第一の実施形態に係る不正通信検知システム1で実行される処理とは異なる処理について説明する。
本実施形態に係る不正通信検知システム2001において実行される処理は、第一の実施の形態の不正通信検知システム1とほぼ同様であるが、検知装置30が行う類似パケット格納処理S910およびS920の処理と、有害判定及び判定リスト更新処理S514の処理とが異なるので、以下においてそれらの処理について説明する。
まず、本実施形態における類似パケット格納処理S910およびS920の処理フローについて説明する。
図19は、本発明の第二の実施形態が適用された制御システム向け不正通信検知システム2001において、検知装置30が行う類似パケット格納処理S910およびS920の処理フローを示した図である。
はじめに、検知装置30は、類似パケット格納処理を開始する(S1901)。
次に、類似パケットごとに、算出した類似度の中から、最大値を取得する(S1902)。
次に、類似度が最大値となった判定リストのレコードの正当データパターンに紐づいたリストIDを取得する(S1903)。
次に、類似パケットに含まれるデータパターンと、取得した類似度の最大値と、取得したリストIDなどを類似パケット格納部318に格納する(S1904)。ここで、類似パケットの構成は図21において詳細に説明する。
次に、処理を終了する(S1905)。
本実施形態における有害判定及び判定リスト更新処理S514の処理フローについて説明する。
図20は、本発明の第二の実施形態に係る制御システム向け不正通信検知システム2001において、検知装置30が行う図5に示した有害判定及び判定リスト更新処理S514の処理フローを示した図である。
なお、図20に示した処理フローにおいて、S2001、S2002、S2004〜S2010、S2013〜S2017については、第一実施形態における、図11の有害判定及び判定リスト更新処理S514の処理フローのS1101〜S1114とほぼ同様であるので説明を省略し、残りのステップについて主に説明をする。
S2002で一つの類似パケットを取得した後、検知装置30は、取得した類似パケットに含まれる類似度は、類似パケット格納部318に格納された残りの類似パケットに含まれる類似度と比較して、最小か否かを判断する(S2003)。ここで、類似度の比較方法には、最小か否かを用いているが、これに限定されるものではない。
判断の結果、最小ではないと判断された場合には、検知装置30は、ステップS2002に戻り、別の類似パケットを類似パケット格納部318から取得する。一方で、最小であると判断された場合には、類似パケットから類似パケットの受信時刻情報を取得する(S2004)。
類似パケットから判定リストに追加するエントリを生成した(S2010)後、検知装置30は、判定リスト格納部316から判定リスト内の正当通信パターンに含まれる正当データパターンを取得する(S2011)。
次に、検知装置30は、類似パケットに含まれるリストIDと、取得した正当データパターンに紐づいたリストIDとが一致するか否かを判定する(S2012)。判定の結果、一致しないと判断された場合には、検知装置30は、ステップS2011に戻り、別の正当データパターンを判定リスト格納部316から取得する。
一方で、一致すると判断された場合には、検知装置30は、生成したエントリを判定リスト格納部316に追加する(S2013)。ここで、エントリを格納する方法の例として、生成したエントリに、エントリ番号に相当するリストIDを付与し、リストIDとエントリの組を判定リスト316へ格納することを想定しているが、これに限定されるものではない。また、エントリを追加する位置は、リストIDが一致した判定リストの直上、直下など(隣接する位置)を用いるが、これに限定されるものではない。このように、類似するエントリを隣接させることにより、S2007において観測項目ごとに取得した観測値が観測項目の判定パターンに一致するか否かを判定する際の処理速度を速くすることができる。また、検知装置30が試運転モードにあるときに、判定リスト及び判定パターンを生成し、検知装置30が実運転モードにあるときに、判定リスト及び判定パターンを更新し、通信パケットが不正な通信パケットであるか否かと判断するので、制御システム内を流れる通信パケットの誤検知及び検知漏れの低減が可能となる。
図21は、本発明の第二の実施形態に係る制御システム向け不正通信検知システム2001において、検知装置30の類似パケット格納部318に格納される類似パケットの構成を例示する図である。
類似パケット(A2101)は、受信日時(A2102)と、サイズ(A2103)と、パケットデータ(A2104)と、パターン数(A2105)と、類似度(A2106)と、リストID(A2107)と、から構成される。
受信日時(A2102)、サイズ(A2103)、パケットデータ(A2104)、およびパターン数(A2105)は、第一の実施形態において説明した類似パケット(A1701)の受信日時(A1702)、サイズ(A1703)、パケットデータ(A1704)、およびパターン数(A1705)と同じである。類似度(A2106)は、判定リスト格納部316に格納された正当データパターンとの類似度の最大値を示す。リストID(A2107)は、判定リスト格納部316に格納された正当データパターンに紐づいたリストIDの中で、類似度が最大となったリストIDである。
次に、本発明の第三の実施形態に係る制御システム向け不正通信検知システム3001について説明する。
図22は、本発明の第三の実施形態が適用された制御システム向け不正通信検知システム3001の構成図である。
本実施形態の制御システム向け不正通信検知システムは、図22に例示するように、制御装置10〜10と、ネットワーク装置20と、検知装置30と、ネットワーク50と、から構成されている。
制御装置10〜10と、ネットワーク装置20の構成要素は図1と同様である。
本実施形態に係る検知装置30の構成要素は、図1で示した第一の実施形態の検知装置30の構成要素から、観測値通信部301と、観測値取得部302と、判定パターン生成部303と、判定パターン更新部304と、有害性判定部310と、観測値格納部313と、判定パターン格納部314と、観測時間格納部321とを除いたものである。また、本実施形態において類似パケット格納部318に格納する類似パケットのフォーマットは図17に記載した通りである。
本実施形態の制御システム向け不正通信検知システム3001における処理フローについて説明する。以下に述べる処理フローは、制御装置10〜10やネットワーク装置20や検知装置30の記憶装置に格納されたプログラムがメモリにロードされ、CPUにより実行されることにより、制御システム向け侵入検知システムを構築する装置上に具現化される各処理部により実行されるものである。また、各プログラムは予め記憶装置に格納されても良いし、他の記憶媒体または通信媒体(ネットワークまたはネットワークを伝搬する伝送波)を介して、必要なときに導入されても良い。なお、本実施形態に係る不正通信検知システム3001では、第一の実施形態に係る不正通信検知システム1で実行される処理と基本的に同様の処理が実行されるが、以下の説明では、第一の実施形態に係る不正通信検知システム1で実行される処理とは異なる処理について説明する。
本実施形態における検知装置30で通信パケットの検知に利用する判定リストを生成する処理、通信パケットの検知を行う処理、及び判定リストを更新する処理について説明する。
図23は、本発明の第三の実施形態に係る制御システム向け不正通信検知システム3001において、検知装置30で通信パケットの検知に利用する判定リストを生成する処理と、通信パケットの検知を行う処理と、判定リストを更新する処理と、の処理フローを示した図である。
本実施形態における、判定リストを生成する処理、通信パケットの検知を行う処理、及びリストを更新する処理は、第一の実施の形態において図5に基づき説明した処理と同様である。すなわち、検知装置30は、図5におけるS501〜S504、S508、S509、S511、S512、S514と同様の処理である、試運転モード設定処理(S2301)、収集業務処理(S2302)、判定リスト作成処理(S2303)、判定リスト格納処理(S2304)、実運転モード設定処理(S2305)、検知業務処理(S2306)、判定処理(S2307)、終了処理(S2308)、及び、判定リスト更新処理(S2309)を実行する。これにより、実運転における正当なデータパターンを有する通信パケットに基いて、新たなエントリを判定リストに対し追加することができる。
このように、本実施形態における検知装置30は、観測装置40から観測値を取得せず、通信パケット(制御コマンド及びリクエスト等)による判定リストのみに基づいて、不正な通信パケットの検知を行う。
次に、本実施形態における検知装置30が行う判定リスト更新処理S2309の処理について説明する。
図24は、本発明の第三の実施形態に係る制御システム向け不正通信検知システム3001において、検知装置30が行う判定リスト更新処理S2309の処理フローを示した図である。
本実施形態における、判定リスト更新処理は、第一の実施の形態において図11に基づき説明した判定リスト更新処理と同様である。すなわち、検知装置30は、図11におけるS1101、S1102、S1109〜1114と同様の処理である、判定リスト開始処理(S2401)、類似パケット取得処理(S2402)、エントリ生成処理(S2403)、判定リスト追加処理(S2404)、類似パケット削除処理(S2405)、レコード数取得処理(S2406)、レコード数判定処理(S2307)、及び、終了処理(S2308)を実行する。
なお、本発明は、上記の実施形態に限定されるものではなく、その要旨の範囲内で様々な変形が可能である。
たとえば、検知装置30内に監視装置40の機能が含まれている場合や、検知装置30内にネットワーク装置20の機能が含まれている場合や、制御装置10〜10、検知装置30、及び監視装置40にネットワーク50との通信機能が含まれておらず、別の装置を経由してネットワーク50と通信を行う場合や、監視装置40内に検知装置30の機能が含まれている場合や、検知装置30に有害判定処理機能、判定リスト更新機能、判定パターン生成機能、判定パターン更新機能などが含まれておらず、別の装置にこれら機能が含まれており、ネットワーク50を経由して通信を行う場合などである。
該実施形態の場合においてもシステム全体において行う処理に本質的な変化はない。
また、上記実施形態の各構成等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
1、2001、3001:不正通信検知システム、10〜10:制御装置、20:ネットワーク装置、30:検知装置、40:監視装置、401:通信部、402:観測値取得部、403:観測値格納部、50:ネットワーク、A502、A504、A701、A1201:観測値、A601、A901:制御コマンド、A602、A902:レスポンス、A1401:判定パターン、A1404:正当観測パターン、A1501:通信パケット、A1504:パケットデータ、A1601:判定リスト、A1603:正当通信パターン

Claims (9)

  1. 制御システム内で行われる不正な通信を検知する検知装置を備える不正通信検知システムであって、
    前記検知装置は、
    不正通信の有無を判定するための判定リストを格納し、
    前記制御システム内を流れる通信パケットを受信し、
    前記判定リスト中の参照データと、前記通信パケットに関する受信データとが一致するか否かを判定し、
    前記判定リスト中の前記参照データと、前記通信パケットに関する前記受信データとが一致しない場合、前記判定リスト中の参照データと前記通信パケットに関する前記受信データとの類似度を算出し、類似度が所定の条件を満たすか否かを判定し、
    前記類似度が前記所定の条件を満たさないと判定した場合、前記通信パケットが不正な通信パケットであると判断する、ことを特徴とする不正通信検知システム。
  2. 前記検知装置は、
    前記類似度が前記所定の条件を満たすと判定した場合、前記通信パケットに関し、前記判定リストに追加するための前記通信パケットに関する前記受信データを、新たな参照データとして前記判定リストに追加する、ことを特徴とする請求項1に記載の不正通信検知システム。
  3. 前記検知装置は、
    前記制御システムの制御装置により制御されるデバイスの挙動が正当な挙動であるか否かを判定するための判定パターンを格納し、
    前記類似度が前記所定の条件を満たすと判定した場合、前記通信パケットに基づき前記デバイスを動作させた際に得られる観測値が、前記判定パターン中の前記デバイスの正当な挙動を示す正当観測パターンを満たすか否かを判定し、
    前記観測値が前記正当観測パターンを満たすと判定した場合、前記通信パケットに関し、前記判定リストに追加するための前記通信パケットに関するレスポンスデータを、新たな参照データとして前記判定リストに追加し、
    前記観測値が前記正当観測パターンを満たさないと判定した場合、前記通信パケットに関し、アラートを生成する、ことを特徴とする請求項1又は請求項2に記載の不正通信検知システム。
  4. 前記検知装置は、
    前記観測値が前記正当観測パターンを満たすと判定された場合、前記観測値に基づき、前記正当観測パターンを更新する、ことを特徴とする請求項3に記載の不正通信検知システム。
  5. 前記検知装置は、
    前記観測値が前記正当観測パターンを満たすと判定された場合、前記通信パケットに関し、前記判定リストに追加するための前記通信パケットに関する前記レスポンスデータを、前記判定リスト中の複数のエントリのうち、前記通信パケットの前記レスポンスデータに最も類似する前記参照データのエントリに隣接させて、新たなエントリとして前記判定リストに追加する、ことを特徴とする請求項に記載の不正通信検知システム。
  6. 前記検知装置は、
    前記通信パケットに格納されたデータパターンを前記受信データとして前記判定リストを生成する、ことを特徴とする請求項1〜請求項3のいずれか一項に記載の不正通信検知システム。
  7. 前記検知装置は、
    前記通信パケットに格納されたデータパターンと、前記データパターンが格納されている前記通信パケット内の領域に関する情報及び/又は前記データパターンの受信周期に関する情報と、を組み合わせて、前記受信データを作成し前記判定リストを生成する、ことを特徴とする請求項1〜請求項3のいずれか一項に記載の不正通信検知システム。
  8. 前記検知装置は、
    前記検知装置が試運転モードにあるときに、前記判定リスト及び前記判定パターンを生成し、
    前記検知装置が実運転モードにあるときに、前記判定リスト及び前記判定パターンを更新し、前記通信パケットが不正な通信パケットであるか否かを判断する、ことを特徴とする請求項4に記載の不正通信検知システム。
  9. 制御システム内で行われる不正な通信を検知する不正通信検知方法であって、
    前記制御システム内を流れる通信パケットを受信し、
    不正通信の有無を判定するための判定リスト中の参照データと、前記通信パケットに関する受信データとが一致するか否かを判定し、
    前記判定リスト中の前記参照データと、前記通信パケットに関する前記受信データとが一致しない場合、前記判定リスト中の参照データと前記通信パケットに関する前記受信データとの類似度を算出し、類似度が所定の条件を満たすか否かを判定し、
    前記類似度が前記所定の条件を満たさないと判定した場合、前記通信パケットが不正な通信パケットであると判断する、ことを特徴とする不正通信検知方法。
JP2016097743A 2016-05-16 2016-05-16 不正通信検知システム及び不正通信検知方法 Active JP6650343B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016097743A JP6650343B2 (ja) 2016-05-16 2016-05-16 不正通信検知システム及び不正通信検知方法
US15/592,250 US10341294B2 (en) 2016-05-16 2017-05-11 Unauthorized communication detection system and unauthorized communication detection method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016097743A JP6650343B2 (ja) 2016-05-16 2016-05-16 不正通信検知システム及び不正通信検知方法

Publications (2)

Publication Number Publication Date
JP2017208598A JP2017208598A (ja) 2017-11-24
JP6650343B2 true JP6650343B2 (ja) 2020-02-19

Family

ID=60294906

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016097743A Active JP6650343B2 (ja) 2016-05-16 2016-05-16 不正通信検知システム及び不正通信検知方法

Country Status (2)

Country Link
US (1) US10341294B2 (ja)
JP (1) JP6650343B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019142602A1 (ja) * 2018-01-17 2019-07-25 日本電信電話株式会社 検知装置、その方法、及びプログラム
JP2019165301A (ja) * 2018-03-19 2019-09-26 富士通株式会社 パケット検出プログラム、パケット検出装置及びパケット検出方法
JP7200496B2 (ja) * 2018-03-30 2023-01-10 日本電気株式会社 情報処理装置、制御方法、及びプログラム
JP7125317B2 (ja) * 2018-09-28 2022-08-24 アズビル株式会社 不正アクセス監視装置および方法
US11463264B2 (en) * 2019-05-08 2022-10-04 Commvault Systems, Inc. Use of data block signatures for monitoring in an information management system
US11687424B2 (en) 2020-05-28 2023-06-27 Commvault Systems, Inc. Automated media agent state management
US11765188B2 (en) * 2020-12-28 2023-09-19 Mellanox Technologies, Ltd. Real-time detection of network attacks

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4509904B2 (ja) * 2005-09-29 2010-07-21 富士通株式会社 ネットワークセキュリティ装置
JP5088403B2 (ja) 2010-08-02 2012-12-05 横河電機株式会社 不正通信検出システム
JP5792654B2 (ja) * 2012-02-15 2015-10-14 株式会社日立製作所 セキュリティ監視システムおよびセキュリティ監視方法
US9405900B2 (en) 2013-03-13 2016-08-02 General Electric Company Intelligent cyberphysical intrusion detection and prevention systems and methods for industrial control systems

Also Published As

Publication number Publication date
US10341294B2 (en) 2019-07-02
US20170331787A1 (en) 2017-11-16
JP2017208598A (ja) 2017-11-24

Similar Documents

Publication Publication Date Title
JP6650343B2 (ja) 不正通信検知システム及び不正通信検知方法
US20220086177A1 (en) Secured Automated or Semi-automated System
JP6983992B2 (ja) 自動化システムにおけるインテグリティ監視
Elhabashy et al. Cyber-physical security research efforts in manufacturing–a literature review
JP5839967B2 (ja) マルウェア解析システム
Ahmed et al. Challenges and opportunities in cyberphysical systems security: a physics-based perspective
WO2015102730A2 (en) Secured automated or semi-automated systems
JP6310874B2 (ja) インシデント検知システム
Rahman et al. Physics-based detection of cyber-attacks in manufacturing systems: A machining case study
JP6391891B2 (ja) 侵入検知装置、侵入検知方法及び侵入検知プログラム
JP6174003B2 (ja) 制御装置状態検証システムおよび制御装置状態検証方法
US10051004B2 (en) Evaluation system
JP6890073B2 (ja) 情報収集装置、情報収集システム
JP6507075B2 (ja) 不正通信検知装置、不正通信検知システム、及び不正通信を検知する方法
JP6966522B2 (ja) 脆弱性分析装置
JP6541903B2 (ja) 攻撃・異常検知装置、攻撃・異常検知方法、および攻撃・異常検知プログラム
EP3506145B1 (en) Data integrity protection method and device
KR101645412B1 (ko) 악성파일진단장치 및 악성파일진단장치의 진단 방법
Rott et al. Power-based intrusion detection for additive manufacturing: A deep learning approach
JP6869869B2 (ja) 制御システムのための対策立案システムおよび監視装置
JP7074739B2 (ja) 脆弱性評価装置
Han et al. Actuator deception attack detection and estimation for a class of nonlinear systems
EP4160452A1 (en) Computer-implemented method and surveillance arrangement for identifying manipulations of cyber-physical-systems as well as computer-implemented-tool and cyber-physical-system
WO2018138862A1 (ja) 状態判定システム
JPWO2019229969A1 (ja) データ通信制御装置、データ通信制御プログラムおよび車両制御システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180829

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190621

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190702

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190826

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200120

R150 Certificate of patent or registration of utility model

Ref document number: 6650343

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150