IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ パナソニックIPマネジメント株式会社の特許一覧

特許7378089不正通信検知装置、不正通信検知方法及び製造システム
<>
  • 特許-不正通信検知装置、不正通信検知方法及び製造システム 図1
  • 特許-不正通信検知装置、不正通信検知方法及び製造システム 図2
  • 特許-不正通信検知装置、不正通信検知方法及び製造システム 図3
  • 特許-不正通信検知装置、不正通信検知方法及び製造システム 図4
  • 特許-不正通信検知装置、不正通信検知方法及び製造システム 図5
  • 特許-不正通信検知装置、不正通信検知方法及び製造システム 図6
  • 特許-不正通信検知装置、不正通信検知方法及び製造システム 図7
  • 特許-不正通信検知装置、不正通信検知方法及び製造システム 図8
  • 特許-不正通信検知装置、不正通信検知方法及び製造システム 図9
  • 特許-不正通信検知装置、不正通信検知方法及び製造システム 図10
  • 特許-不正通信検知装置、不正通信検知方法及び製造システム 図11
  • 特許-不正通信検知装置、不正通信検知方法及び製造システム 図12
  • 特許-不正通信検知装置、不正通信検知方法及び製造システム 図13
  • 特許-不正通信検知装置、不正通信検知方法及び製造システム 図14
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-02
(45)【発行日】2023-11-13
(54)【発明の名称】不正通信検知装置、不正通信検知方法及び製造システム
(51)【国際特許分類】
   H04L 43/00 20220101AFI20231106BHJP
   H04L 12/22 20060101ALI20231106BHJP
【FI】
H04L43/00
H04L12/22
【請求項の数】 14
(21)【出願番号】P 2020525514
(86)(22)【出願日】2019-06-07
(86)【国際出願番号】 JP2019022669
(87)【国際公開番号】W WO2019240020
(87)【国際公開日】2019-12-19
【審査請求日】2022-05-31
(31)【優先権主張番号】P 2018113112
(32)【優先日】2018-06-13
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】314012076
【氏名又は名称】パナソニックIPマネジメント株式会社
(74)【代理人】
【識別番号】100109210
【弁理士】
【氏名又は名称】新居 広守
(74)【代理人】
【識別番号】100137235
【弁理士】
【氏名又は名称】寺谷 英作
(74)【代理人】
【識別番号】100131417
【弁理士】
【氏名又は名称】道坂 伸一
(72)【発明者】
【氏名】天野 博史
(72)【発明者】
【氏名】厚田 鳴海
(72)【発明者】
【氏名】浜田 規照
(72)【発明者】
【氏名】多鹿 陽介
(72)【発明者】
【氏名】川口 信貴
(72)【発明者】
【氏名】樋口 裕一
(72)【発明者】
【氏名】清水 太一
【審査官】安藤 一道
(56)【参考文献】
【文献】特開2012-034273(JP,A)
【文献】特開2017-216569(JP,A)
【文献】特開2017-126978(JP,A)
【文献】国際公開第2014/155650(WO,A1)
【文献】特開2007-164313(JP,A)
【文献】韓国登録特許第10-1538709(KR,B1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 43/00
H04L 12/22
(57)【特許請求の範囲】
【請求項1】
製造物を製造する製造システムの不正通信を検知する不正通信検知装置であって、
前記製造システムの動作情報を取得する取得部と、
前記製造物の製造に関わる複数の要素のうちの1以上の対象要素を示すホワイトリストを記憶する記憶部と、
前記製造システム内で行われた複数の通信の各々に対応する要素を前記動作情報に基づいて特定する特定部と、
前記複数の通信のうち、前記特定部によって特定された要素が、前記ホワイトリストが示す1以上の対象要素に含まれることを満たす1以上の通信の各々の異常度を算出する算出部と、
前記算出部によって算出された異常度が閾値より大きい場合に、当該異常度に対応する通信を不正通信であると判定する判定部とを備える
不正通信検知装置。
【請求項2】
前記ホワイトリストは、許可された1以上の通信を前記1以上の対象要素として示す許可通信情報を含み、
前記特定部は、前記動作情報に基づいて、前記複数の通信の各々を前記要素として特定し、
前記算出部は、前記複数の通信のうち、前記特定部によって特定された通信が、前記許可通信情報が示す1以上の通信に含まれることを満たす1以上の通信の各々の異常度を算出する
請求項1に記載の不正通信検知装置。
【請求項3】
前記判定部は、さらに、前記複数の通信のうち、前記特定部によって特定された通信が、前記許可通信情報が示す1以上の通信に含まれないことを満たす1以上の通信を不正通信であると判定する
請求項2に記載の不正通信検知装置。
【請求項4】
前記ホワイトリストは、さらに、前記製造システムが取りうる複数の設備状態のうちの1以上の設備状態を前記1以上の対象要素として示す設備状態情報を含み、
前記特定部は、さらに、前記動作情報に基づいて、前記複数の通信の各々が行われた際の設備状態を前記要素として特定し、
前記算出部は、前記複数の通信のうち、前記特定部によって特定された設備状態が、前記設備状態情報が示す1以上の設備状態に含まれることをさらに満たす1以上の通信の各々の異常度を算出する
請求項2又は3に記載の不正通信検知装置。
【請求項5】
前記製造システムは、種類の異なる複数の製造物を製造し、
前記ホワイトリストは、さらに、前記複数の製造物の1以上の種類を前記1以上の対象要素として示す種類情報を含み、
前記特定部は、さらに、前記動作情報に基づいて、前記複数の通信の各々が行われた際に製造された製造物の種類を前記要素として特定し、
前記算出部は、前記複数の通信のうち、前記特定部によって特定された種類が、前記種類情報が示す1以上の種類に含まれることをさらに満たす1以上の通信の各々の異常度を算出する
請求項2~4のいずれか1項に記載の不正通信検知装置。
【請求項6】
前記ホワイトリストは、さらに、前記製造システムの複数の設備構成のうちの1以上の設備構成を前記1以上の対象要素として示す構成情報を含み、
前記特定部は、さらに、前記動作情報に基づいて、前記複数の通信の各々が行われた際の設備構成を前記要素として特定し、
前記算出部は、前記複数の通信のうち、前記特定部によって特定された設備構成が、前記構成情報が示す1以上の設備構成に含まれることをさらに満たす1以上の通信の各々の異常度を算出する
請求項2~5のいずれか1項に記載の不正通信検知装置。
【請求項7】
前記算出部は、前記製造システムで行われる通信の正常モデルからの外れ値を、前記異常度として算出する
請求項1~6のいずれか1項に記載の不正通信検知装置。
【請求項8】
さらに、予め取得された動作情報を用いた機械学習を行うことで、前記正常モデルを作成する学習部と、
前記機械学習の対象となった動作情報に含まれる複数の通信の各々に対応する1以上の要素を前記1以上の対象要素として示す情報を、前記ホワイトリストとして生成する情報生成部とを備える
請求項7に記載の不正通信検知装置。
【請求項9】
前記ホワイトリストは、前記製造システムが取りうる複数の設備状態のうちの1以上の設備状態を前記1以上の対象要素として示す設備状態情報を含み、
前記特定部は、前記動作情報に基づいて、前記複数の通信の各々が行われた際の設備状態を前記要素として特定し、
前記算出部は、前記複数の通信のうち、前記特定部によって特定された設備状態が、前記設備状態情報が示す1以上の設備状態に含まれることを満たす1以上の通信の各々の異常度を算出する
請求項1に記載の不正通信検知装置。
【請求項10】
前記製造システムは、種類の異なる複数の製造物を製造し、
前記ホワイトリストは、前記複数の製造物の1以上の種類を前記1以上の対象要素として示す種類情報を含み、
前記特定部は、前記動作情報に基づいて、前記複数の通信の各々が行われた際に製造された製造物の種類を前記要素として特定し、
前記算出部は、前記複数の通信のうち、前記特定部によって特定された種類が、前記種類情報が示す1以上の種類に含まれることを満たす1以上の通信の各々の異常度を算出する
請求項1に記載の不正通信検知装置。
【請求項11】
前記ホワイトリストは、前記製造システムの複数の設備構成のうちの1以上の設備構成を前記1以上の対象要素として示す構成情報を含み、
前記特定部は、前記動作情報に基づいて、前記複数の通信の各々が行われた際の設備構成を前記要素として特定し、
前記算出部は、前記複数の通信のうち、前記特定部によって特定された設備構成が、前記構成情報が示す1以上の設備構成に含まれることを満たす1以上の通信の各々の異常度を算出する
請求項1に記載の不正通信検知装置。
【請求項12】
製造物を製造する製造システムであって、
請求項1~11のいずれか1項に記載の不正通信検知装置を備える
製造システム。
【請求項13】
製造物を製造する製造システムの不正通信を検知する不正通信検知方法であって、
前記製造システムの動作情報を取得し、
前記製造物の製造に関わる複数の要素のうちの1以上の対象要素を示すホワイトリストを記憶部から読み出し、
前記製造システム内で行われた複数の通信の各々に対応する要素を前記動作情報に基づいて特定し、
前記複数の通信のうち、特定された要素が、前記ホワイトリストが示す1以上の対象要素に含まれることを満たす1以上の通信の各々の異常度を算出し、
算出された異常度が閾値を超えている場合に、当該異常度に対応する通信を不正通信であると判定する
不正通信検知方法。
【請求項14】
請求項13に記載の不正通信検知方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、不正通信検知装置、不正通信検知方法及び製造システムに関する。
【背景技術】
【0002】
近年、工場などの製造現場において、複数の製造装置間での通信が行われている。このため、通信のセキュリティを高めることが求められている。
【0003】
例えば、特許文献1には、通信のセッション成立の成否を判定し、セッション不成立のパケットのトラフィックパターンを示すトラフィックパターン情報をトラフィックパターンホワイトリストと比較することで、不正な通信を検出する不正通信検出システムが開示されている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2012-34273号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記従来の不正通信検出システムでは、不正通信を精度良く検出する事ができない場合がある。例えば、上記従来の不正通信検出システムでは、セッションが成立した通信が不正の場合に検出することができない。
【0006】
そこで、本開示は、製造システムの不正通信を精度良く検知することができる不正通信検知装置、不正通信検知方法及び製造システムを提供する。
【課題を解決するための手段】
【0007】
上記課題を解決するため、本開示の一態様に係る不正通信検知装置は、製造物を製造する製造システムの不正通信を検知する不正通信検知装置であって、前記製造システムの動作情報を取得する取得部と、前記製造物の製造に関わる複数の要素のうちの1以上の対象要素を示す要素情報を記憶する記憶部と、前記製造システム内で行われた複数の通信の各々に対応する要素を前記動作情報に基づいて特定する特定部と、前記複数の通信のうち、前記特定部によって特定された要素が、前記要素情報が示す1以上の対象要素に含まれることを満たす1以上の通信の各々の異常度を算出する算出部と、前記算出部によって算出された異常度が閾値より大きい場合に、当該異常度に対応する通信を不正通信であると判定する判定部とを備える。
【0008】
また、本開示の一態様に係る製造システムは、製造物を製造する製造システムであって、上記不正通信検知装置を備える。
【0009】
また、本開示の一態様に係る不正通信検知方法は、製造物を製造する製造システムの不正通信を検知する不正通信検知方法であって、前記製造システムの動作情報を取得し、前記製造物の製造に関わる複数の要素のうちの1以上の対象要素を示す要素情報を記憶部から読み出し、前記製造システム内で行われた複数の通信の各々に対応する要素を前記動作情報に基づいて特定し、前記複数の通信のうち、特定された要素が、前記要素情報が示す1以上の対象要素に含まれることを満たす1以上の通信の各々の異常度を算出し、算出された異常度が閾値を超えている場合に、当該異常度に対応する通信を不正通信であると判定する。
【0010】
また、本開示の一態様は、上記不正通信検知方法をコンピュータに実行させるプログラムとして実現することができる。あるいは、当該プログラムを格納したコンピュータ読み取り可能な記録媒体として実現することもできる。
【発明の効果】
【0011】
本開示によれば、製造システムの不正通信を精度良く検知することができる。
【図面の簡単な説明】
【0012】
図1図1は、実施の形態1に係る製造システムの構成を示すブロック図である。
図2図2は、実施の形態1に係る不正通信検知装置の構成を示すブロック図である。
図3図3は、複数の通信情報と通信ホワイトリストに対する照合結果とを示す図である。
図4図4は、実施の形態1に係る不正通信検知装置による振る舞い検知の対象となる通信情報を示す図である。
図5図5は、実施の形態1に係る不正通信検知装置の動作を示すフローチャートである。
図6図6は、実施の形態1に係る不正通信検知装置の動作のうち、通信ホワイトリストとの照合処理を示すフローチャートである。
図7図7は、実施の形態1に係る不正通信検知装置の動作のうち、不正通信の判定処理を示すフローチャートである。
図8図8は、実施の形態2に係る不正通信検知装置の構成を示すブロック図である。
図9図9は、設備状態毎の設備状態ホワイトリストに対する照合結果の一例を示す図である。
図10図10は、実施の形態3に係る不正通信検知装置の構成を示すブロック図である。
図11図11は、製造物毎の種類ホワイトリストに対する照合結果の一例を示す図である。
図12図12は、実施の形態4に係る不正通信検知装置の構成を示すブロック図である。
図13図13は、設備構成毎の構成ホワイトリストに対する照合結果の一例を示す図である。
図14図14は、設備状態ホワイトリストと種類ホワイトリストとの各々に対する照合結果の一例を示す図である。
【発明を実施するための形態】
【0013】
(本開示の概要)
上述したように、工場などの製造現場において、複数の製造装置が互いに通信を行うことで、互いに協働して製造物を製造している。このため、当該通信に対して外部から悪意のある攻撃などを受けた場合には、各製造装置への負荷の増加、又は、製造装置の故障などが起こり得るので、製造物の生産性が低下する恐れがある。したがって、製造システムの内部ネットワークを介した通信のセキュリティを高めることが求められる。例えば、内部ネットワークに対する不正アクセスの防止などの対策を行うことが求められる。
【0014】
具体的には、内部ネットワークへの入り口にファイヤーウォールを導入する対策が考えられる。これにより、外部からの悪意のある接続を抑制することができる。しかしながら、例えばファイヤーウォールにセキュリティ上の脅威、すなわち、脆弱性が発見された場合に、当該脆弱性への対応を行う前の攻撃(いわゆる、ゼロデイ攻撃)に対して対応することができない。
【0015】
また、ファイヤーウォールが正常に機能している場合であっても、製造装置の操作者又は管理者などの人的要因による内部からの不正な操作を防ぐことができない。例えば、ウイルスに感染済みのコンピュータ機器又はメモリデバイスが内部ネットワークに接続された場合には、操作者の悪意の有無によらず、各製造装置に感染が拡大する。
【0016】
このように、内部ネットワークへの入り口での不正アクセスへの対処は、万全ではない。
【0017】
また、複数の製造装置の各々に対してセキュリティソフトを導入することにより、製造装置毎に不正な処理を検知する対策が考えられる。しかしながら、製造装置は多種多様であるので、必ずしも全ての製造装置に対してセキュリティソフトを導入することができるとは限らない。1台でも対策が行われていない製造装置が存在する場合には、当該製造装置を介した不正アクセスなどが行われる可能性がある。
【0018】
そこで、上記課題を解決するために、本開示の一態様に係る不正通信検知装置は、製造物を製造する製造システムの不正通信を検知する不正通信検知装置であって、前記製造システムの動作情報を取得する取得部と、前記製造物の製造に関わる複数の要素のうちの1以上の対象要素を示す要素情報を記憶する記憶部と、前記製造システム内で行われた複数の通信の各々に対応する要素を前記動作情報に基づいて特定する特定部と、前記複数の通信のうち、前記特定部によって特定された要素が、前記要素情報が示す1以上の対象要素に含まれることを満たす1以上の通信の各々の異常度を算出する算出部と、前記算出部によって算出された異常度が閾値より大きい場合に、当該異常度に対応する通信を不正通信であると判定する判定部とを備える。
【0019】
これにより、記憶部には要素情報として、例えば製造システムの正常動作時の要素を対象要素として示す情報を記憶させておいた場合に、要素情報が示す対象要素に含まれない要素に対応する通信は不正通信であると判定することができる。また、要素情報が示す対象要素に対応する通信であっても当該通信の異常度が算出されるので、当該通信が不正通信であるか否かを判定することができる。このように、要素情報による判定と異常度に基づく判定とを用いた2段階の判定を行うことができるので、製造システムの不正通信を精度良く検知することができる。
【0020】
また、例えば、前記要素情報は、許可された1以上の通信を前記1以上の対象要素として示す許可通信情報を含み、前記特定部は、前記動作情報に基づいて、前記複数の通信の各々を前記要素として特定し、前記算出部は、前記複数の通信のうち、前記特定部によって特定された通信が、前記許可通信情報が示す1以上の通信に含まれることを満たす1以上の通信の各々の異常度を算出してもよい。
【0021】
これにより、許可された通信であっても異常度が高い通信を不正な通信として検知することができる。例えば、製造システムの内部に侵入したウイルスなどによって行われた不正な通信を検知することができる。
【0022】
また、例えば、前記判定部は、さらに、前記複数の通信のうち、前記特定部によって特定された通信が、前記許可通信情報が示す1以上の通信に含まれないことを満たす1以上の通信を不正通信であると判定してもよい。
【0023】
これにより、許可されていない通信だけでなく、許可された通信であっても異常度が高い通信を検知することができる。
【0024】
また、例えば、前記要素情報は、さらに、前記製造システムが取りうる複数の設備状態のうちの1以上の設備状態を前記1以上の対象要素として示す設備状態情報を含み、前記特定部は、さらに、前記動作情報に基づいて、前記複数の通信の各々が行われた際の設備状態を前記要素として特定し、前記算出部は、前記複数の通信のうち、前記特定部によって特定された設備状態が、前記設備状態情報が示す1以上の設備状態に含まれることをさらに満たす1以上の通信の各々の異常度を算出してもよい。
【0025】
これにより、製造システムの状態が、設備状態情報が示す設備状態である際に行われた通信が不正通信であるか否かを判定することができる。例えば、設備状態情報が、製造物を製造するのに通常取りうる設備状態を示す場合に、通常発生しない設備状態で行われた通信を不正通信の検知対象から除外することができる。このため、不正通信の誤判定を抑制することができ、不正通信の判定精度を高めることができる。
【0026】
また、例えば、前記製造システムは、種類の異なる複数の製造物を製造し、前記要素情報は、さらに、前記複数の製造物の1以上の種類を前記1以上の対象要素として示す種類情報を含み、前記特定部は、さらに、前記動作情報に基づいて、前記複数の通信の各々が行われた際に製造された製造物の種類を前記要素として特定し、前記算出部は、前記複数の通信のうち、前記特定部によって特定された種類が、前記種類情報が示す1以上の種類に含まれることをさらに満たす1以上の通信の各々の異常度を算出してもよい。
【0027】
これにより、種類情報が示す種類の製造物を製造する際に行われた通信が不正通信であるか否かを判定することができる。例えば、種類情報が、製造する予定の製造物の種類を示す場合に、当該製造物以外の製造物を製造する際に発生する通信を不正通信の検知対象から除外することができる。このため、不正通信の誤判定を抑制することができ、不正通信の判定精度を高めることができる。
【0028】
また、例えば、前記要素情報は、さらに、前記製造システムの複数の設備構成のうちの1以上の設備構成を前記1以上の対象要素として示す構成情報を含み、前記特定部は、さらに、前記動作情報に基づいて、前記複数の通信の各々が行われた際の設備構成を前記要素として特定し、前記算出部は、前記複数の通信のうち、前記特定部によって特定された設備構成が、前記構成情報が示す1以上の設備構成に含まれることをさらに満たす1以上の通信の各々の異常度を算出してもよい。
【0029】
これにより、構成情報が示す設備構成で製造物を製造する際に行われた通信が不正通信であるか否かを判定することができる。例えば、構成情報が、予定された設備構成を示す場合に、当該設備構成以外の設備構成で製造物が製造される際に発生する通信を不正通信の検知対象から除外することができる。このため、不正通信の誤判定を抑制することができ、不正通信の判定精度を高めることができる。
【0030】
また、例えば、前記算出部は、前記製造システムで行われる通信の正常モデルからの外れ値を、前記異常度として算出してもよい。
【0031】
これにより、例えば統計処理に基づいて生成された正常モデルを利用することで、算出される異常度の信頼性が高くなるので、不正通信の検知精度を高めることができる。
【0032】
また、例えば、本開示の一態様に係る不正通信検知装置は、さらに、予め取得された動作情報を用いた機械学習を行うことで、前記正常モデルを作成する学習部と、前記機械学習の対象となった動作情報に含まれる複数の通信の各々に対応する1以上の要素を前記1以上の対象要素として示す情報を、前記要素情報として生成する情報生成部とを備えてもよい。
【0033】
これにより、機械学習の対象となった動作情報に含まれる通信に対応する要素を要素情報に含めることができるので、機械学習の対象とならなかった要素に対応する通信を、異常度の算出対象(すなわち、不正通信の検知対象)から除外することができる。
【0034】
例えば、機械学習の対象となった通信に対応する設備状態とは異なる設備状態であるときの通信を対象に異常度の算出を行った場合、当該通信が不正通信ではないときであっても、不正通信であると誤判定される可能性が高くなる。製造システムが取りうる全ての設備状態を網羅的に機械学習の対象とすることで、誤判定を抑制することはできる。しかしながら、製造システムでは、想定外の設備状態(イベント)を含む様々な設備状態が起こりうるので、全ての設備状態を網羅的に機械学習の対象とすることは困難である。これに対して、本態様によれば、機械学習の対象とならなかった要素を不正通信の検知対象から除外することができるので、誤判定を抑制することができ、不正通信の判定精度を高めることができる。
【0035】
また、例えば、前記要素情報は、前記製造システムが取りうる複数の設備状態のうちの1以上の設備状態を前記1以上の対象要素として示す設備状態情報を含み、前記特定部は、前記動作情報に基づいて、前記複数の通信の各々が行われた際の設備状態を前記要素として特定し、前記算出部は、前記複数の通信のうち、前記特定部によって特定された設備状態が、前記設備状態情報が示す1以上の設備状態に含まれることを満たす1以上の通信の各々の異常度を算出してもよい。
【0036】
これにより、製造システムの状態が、設備状態情報が示す設備状態である際に行われた通信が不正通信であるか否かを判定することができる。例えば、設備状態情報が、製造物を製造するのに通常取りうる設備状態を示す場合に、通常発生しない設備状態で行われた通信を不正通信の検知対象から除外することができる。このため、不正通信の誤判定を抑制することができ、不正通信の判定精度を高めることができる。
【0037】
また、例えば、前記製造システムは、種類の異なる複数の製造物を製造し、前記要素情報は、前記複数の製造物の1以上の種類を前記1以上の対象要素として示す種類情報を含み、前記特定部は、前記動作情報に基づいて、前記複数の通信の各々が行われた際に製造された製造物の種類を前記要素として特定し、前記算出部は、前記複数の通信のうち、前記特定部によって特定された種類が、前記種類情報が示す1以上の種類に含まれることを満たす1以上の通信の各々の異常度を算出してもよい。
【0038】
これにより、種類情報が示す種類の製造物を製造する際に行われた通信が不正通信であるか否かを判定することができる。例えば、種類情報が、製造する予定の製造物の種類を示す場合に、当該製造物以外の製造物を製造する際に発生する通信を不正通信の検知対象から除外することができる。このため、不正通信の誤判定を抑制することができ、不正通信の判定精度を高めることができる。
【0039】
また、例えば、前記要素情報は、前記製造システムの複数の設備構成のうちの1以上の設備構成を前記1以上の対象要素として示す構成情報を含み、前記特定部は、前記動作情報に基づいて、前記複数の通信の各々が行われた際の設備構成を前記要素として特定し、前記算出部は、前記複数の通信のうち、前記特定部によって特定された設備構成が、前記構成情報が示す1以上の設備構成に含まれることを満たす1以上の通信の各々の異常度を算出してもよい。
【0040】
これにより、構成情報が示す設備構成で製造物を製造する際に行われた通信が不正通信であるか否かを判定することができる。例えば、構成情報が、予定された設備構成を示す場合に、当該設備構成以外の設備構成で製造物が製造される際に発生する通信を不正通信の検知対象から除外することができる。このため、不正通信の誤判定を抑制することができ、不正通信の判定精度を高めることができる。
【0041】
また、例えば、本開示の一態様に係る製造システムは、製造物を製造する製造システムであって、上記不正通信検知装置を備える。
【0042】
これにより、上記不正通信検知装置と同様に、不正通信を精度良く検知することができるので、検知された不正通信に対する対処を速やかに行うことができる。したがって、生産性の高い製造システムを実現することができる。
【0043】
また、例えば、本開示の一態様に係る不正通信検知方法は、製造物を製造する製造システムの不正通信を検知する不正通信検知方法であって、前記製造システムの動作情報を取得し、前記製造物の製造に関わる複数の要素のうちの1以上の対象要素を示す要素情報を記憶部から読み出し、前記製造システム内で行われた複数の通信の各々に対応する要素を前記動作情報に基づいて特定し、前記複数の通信のうち、特定された要素が、前記要素情報が示す1以上の対象要素に含まれることを満たす1以上の通信の各々の異常度を算出し、算出された異常度が閾値を超えている場合に、当該異常度に対応する通信を不正通信であると判定する。
【0044】
これにより、上記不正通信検知装置と同様に、製造システムの不正通信を精度良く検知することができる。
【0045】
以下では、実施の形態について、図面を参照しながら具体的に説明する。
【0046】
なお、以下で説明する実施の形態は、いずれも包括的又は具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
【0047】
また、各図は、模式図であり、必ずしも厳密に図示されたものではない。したがって、例えば、各図において縮尺などは必ずしも一致しない。また、各図において、実質的に同一の構成については同一の符号を付しており、重複する説明は省略又は簡略化する。
【0048】
(実施の形態1)
まず、実施の形態1に係る製造システムの概要について、図1を用いて説明する。図1は、本実施の形態に係る製造システム10の構成を示すブロック図である。
【0049】
図1に示されるように、製造システム10は、製造物を製造するシステムであり、制御装置20と、製造装置30、32及び34と、不正通信検知装置100とを備える。制御装置20と、製造装置30、32及び34の各々とは、ネットワークを介して通信可能に接続されている。
【0050】
制御装置20は、製造装置30、32及び34を制御する。制御装置20は、例えば、コンピュータ機器などで実現される。制御装置20は、プログラムが格納された不揮発性メモリ、プログラムを実行するための一時的な記憶領域である揮発性メモリ、入出力ポート、プログラムを実行するプロセッサなどで実現される。制御装置20が有する各機能はそれぞれ、プロセッサによって実行されるソフトウェアで実現されてもよく、複数の回路素子を含む電子回路などのハードウェアで実現されてもよい。
【0051】
製造装置30、32及び34は、製造物を製造する。例えば、製造装置30、32及び34は、製造ラインに沿って並んで配置されている。製造装置30、32及び34は、例えば1つの製造物を製造するための互いに異なる工程を実行する。製造装置30、32及び34はそれぞれ、例えば部品実装機である。あるいは、製造装置30、32及び34の少なくとも1つは、基板搬送装置又は部品供給装置などであってもよい。
【0052】
なお、製造システム10の構成は、図1に示した例に限らない。例えば、製造システム10が備える製造装置の個数が3台である例を図1では示しているが、1台のみでもよく、2台でもよく、4台以上であってもよい。また、製造システム10は、制御装置20を備えていなくてもよく、複数の製造装置30、32及び34が互いに通信することで、協働して製造物を製造してもよい。
【0053】
不正通信検知装置100は、製造システム10の異常を検知する異常検知装置の一例である。不正通信検知装置100は、製造システム10の不正通信を検知する。不正通信検知装置100は、例えば、コンピュータ機器などで実現される。不正通信検知装置100は、プログラムが格納された不揮発性メモリ、プログラムを実行するための一時的な記憶領域である揮発性メモリ、入出力ポート、プログラムを実行するプロセッサなどで実現される。不正通信検知装置100が有する各機能はそれぞれ、プロセッサによって実行されるソフトウェアで実現されてもよく、複数の回路素子を含む電子回路などのハードウェアで実現されてもよい。
【0054】
図2は、本実施の形態に係る不正通信検知装置100の構成を示すブロック図である。図2に示されるように、不正通信検知装置100は、取得部110と、記憶部120と、特定部130と、算出部140と、判定部150と、出力部160とを備える。
【0055】
取得部110は、製造システム10の動作情報を取得する。具体的には、取得部110は、複数の通信情報を取得する。複数の通信情報は、動作情報に含まれ、製造システム10内で行われた通信に関する情報である。
【0056】
図3は、複数の通信情報と通信ホワイトリストに対する照合結果とを示す図である。図3に示されるように、複数の通信情報はそれぞれ、例えば、1つの通信の送信元と送信先とを含んでいる。送信元及び送信先はそれぞれ、IPアドレスなどで示される。また、複数の通信情報にはそれぞれ、通信に関する特徴量を含んでいる。通信に関する特徴量は、不正通信が発生した場合に正常時とは異なる値になる物理量である。特徴量は、例えば、当該通信のパケット数、パケットの最大サイズ、及び、パケットの到着間隔の最大値又は平均値の少なくとも1つである。特徴量は、異常度の算出のための統計処理に用いられる。取得部110は、例えば各装置間の通信をミラーリングさせて受信することで、パケット数などの特徴量を含む通信情報を取得する。
【0057】
記憶部120は、製造物に関わる複数の要素のうちの1以上の対象要素を示す要素情報を記憶するためのメモリである。記憶部120は、例えばHDD(Hard Disk Drive)又は半導体メモリなどの不揮発性記憶素子で実現される。
【0058】
要素情報は、製造物の製造に関わる複数の要素のうち、許可された要素を示すホワイトリストに相当する。本実施の形態では、要素は、装置間の通信である。記憶部120は、要素情報の一例である通信ホワイトリスト122を記憶している。通信ホワイトリスト122は、許可された1以上の通信を1以上の対象要素として示す許可通信情報の一例である。通信ホワイトリスト122は、製造システム10の管理者などによって、許可された通信を登録させることで生成されて記憶部120に記憶される。なお、通信ホワイトリスト122は、実施の形態2などで後述するように機械学習の結果に基づいて生成されてもよい。
【0059】
特定部130は、製造システム10内で行われた複数の通信の各々に対応する要素を動作情報に基づいて特定する。本実施の形態では、特定部130は、取得部110によって取得された動作情報に基づいて、複数の通信の各々を要素として特定する。つまり、本実施の形態では、通信に対応する要素は、通信そのものである。具体的には、特定部130は、通信毎に、通信情報に含まれる送信元及び送信先を抽出することで、通信を特定する。
【0060】
算出部140は、製造システム10内で行われた複数の通信のうち、特定部130によって特定された要素が、記憶部120に記憶された要素情報が示す1以上の対象要素に含まれることを満たす1以上の通信の各々の異常度を算出する。本実施の形態では、算出部140は、特定部130によって特定された通信が、記憶部120に記憶された通信ホワイトリスト122が示す1以上の通信に含まれることを満たす1以上の通信の各々の異常度を算出する。
【0061】
例えば、図3に示される例では、製造システム10内で通信1~8が行われたことを示している。通信1~8のうち、通信1、通信2、通信5及び通信6が、通信ホワイトリスト122が示す通信に含まれていると判定されている。このため、図4に示されるように、算出部140は、通信1、通信2、通信5及び通信6に対応する4つの通信の異常度を算出する。具体的には、算出部140は、通信1、通信2、通信5及び通信6を対象として振る舞い検知を行う。なお、図4は、本実施の形態に係る不正通信検知装置100による振る舞い検知の対象となる通信情報を示す図である。
【0062】
具体的には、算出部140は、記憶部120から通信ホワイトリスト122を読み出し、特定部130によって特定された通信を、通信ホワイトリスト122に対して照合することで、特定された通信が通信ホワイトリスト122に含まれるか否かを判定する。算出部140は、対象となる1以上の通信に対して振る舞い検知を行うことにより、各通信の異常度を算出する。異常度は、製造システム10で行われる通信の正常モデル、すなわち、正常な振る舞いからの外れ値である。なお、異常度の算出のアルゴリズムは、振る舞い検知に限らず、局所外れ値因子(LOF:Local Outlier Factor)法、サポートベクターマシン(SVM:Support Vector Machine)法、又は、k近傍(kNN:k-Nearest Neighbor)法などであってもよい。
【0063】
判定部150は、算出部140によって算出された異常度が閾値より大きい場合に、閾値より大きい異常度に対応する通信を不正通信であると判定する。閾値は、例えば、正常な振る舞い(正常モデル)の作成の際に決定された固定値である。
【0064】
本実施の形態では、判定部150は、さらに、製造システム10内で行われた複数の通信のうち、特定部130によって特定された通信が、通信ホワイトリスト122が示す1以上の通信に含まれないことを満たす1以上の通信を不正通信であると判定する。例えば、図3に示される例では、通信1~8のうち、通信3、通信4、通信7及び通信8が、通信ホワイトリスト122が示す通信に含まれていないと判定されている。このため、判定部150は、通信3、通信4、通信7及び通信8の4つの通信を不正通信であると判定する。
【0065】
出力部160は、不正通信を特定するための情報を出力する。出力部160は、例えば、画像を表示する表示部、音声を出力する音声出力部、及び、データを出力するデータ出力部の少なくとも1つを含む。表示部は、例えば液晶表示装置などで実現される。音声出力部は、例えばスピーカーなどで実現される。データ出力部は、例えば無線通信を行うことで、製造システム10の管理者又はメンテナンスを行う者の管理サーバなどの外部のサーバ装置に、不正通信を特定するための情報を出力する。
【0066】
不正通信を特定するための情報は、例えば、不正通信を行っている2つの装置の名称又は設置位置などである。不正通信を特定するための情報は、不正通信を行っている2つの装置のIPアドレスであってもよい。
【0067】
続いて、本実施の形態に係る不正通信検知装置100による不正通信の検知処理について、図5図7を用いて説明する。
【0068】
図5は、本実施の形態に係る不正通信検知装置100の動作を示すフローチャートである。図5に示される不正通信の検知処理は、例えば、所定の製造単位毎に実行される。製造単位は、例えば、ロット、又は、1時間若しくは1日などの時間である。あるいは、不正通信の検知処理は、製造システム10の製造動作に合わせて実質的にリアルタイムで実行されてもよい。
【0069】
図5に示されるように、まず、取得部110が動作情報を取得する(S10)。具体的には、取得部110は、所定の製造単位内で行われた全ての通信に関する通信情報を取得する。取得部110によって取得された複数の通信情報は、例えば記憶部120に一時的に記憶される。
【0070】
次に、特定部130は、取得部110によって取得された動作情報に基づいて、複数の通信の各々の要素を特定する(S20)。具体的には、特定部130は、複数の通信の各々を要素として特定する。より具体的には、特定部130は、複数の通信の各々の送信元と送信先とを特定する。
【0071】
次に、算出部140は、ホワイトリストとの照合処理を行う(S30)。図6は、本実施の形態に係る不正通信検知装置100の動作のうち、通信ホワイトリスト122との照合処理(S30)を示すフローチャートである。図6に示されるように、照合処理は、通信毎に行われる。
【0072】
具体的には、算出部140は、取得部110によって取得された複数の通信情報から1つの通信情報を選択し、選択した通信情報が示す通信が通信ホワイトリスト122に含まれるか否かを判定する(S32)。選択された通信が通信ホワイトリスト122に含まれない場合(S32でNo)、算出部140は、当該通信を削除対象で、かつ、不正通信と判定する(S34)。選択された通信が通信ホワイトリスト122に含まれる場合(S32でYes)、ステップS32に戻り、未選択の通信情報から1つの通信情報を選択し、選択した通信情報が示す通信を対象として通信ホワイトリスト122との照合が繰り返される。
【0073】
これにより、取得部110によって取得された動作情報に基づいて、対象となる全ての通信の中から削除対象となる通信が決定される。また、削除対象となる通信は、不正通信であると判定される。
【0074】
図5に示されるように、照合処理(S30)が行われた後、算出部140は、取得部110によって取得された動作情報に含まれる全ての通信から、ホワイトリスト(具体的には、通信ホワイトリスト122)に含まれない通信を削除する(S40)。つまり、算出部140は、ステップS34において削除対象とされた通信を削除する。
【0075】
次に、算出部140は、削除されなかった残りの通信、すなわち、ホワイトリストに含まれていた通信の異常度を算出する(S50)。例えば、算出部140は、通信ホワイトリスト122に含まれていた通信の特徴量に基づいて、通信毎に振る舞い検知を行う。これにより、算出部140は、正常な振る舞いからの外れ値を異常度として算出する。
【0076】
次に、判定部150は、算出された異常度に基づいて不正通信の判定処理を行う(S60)。図7は、本実施の形態に係る不正通信検知装置100の動作のうち、不正通信の判定処理を示すフローチャートである。図7に示されるように、不正処理の判定処理は、通信毎に行われる。
【0077】
具体的には、判定部150は、算出された異常度と閾値とを比較する(S62)。異常度が閾値以下である場合(S62でNo)、判定部150は、当該異常度に対応する通信を正常な通信であると判定する(S64)。異常度が閾値より大きい場合(S62でYes)、判定部150は、当該異常度に対応する通信を不正通信であると判定する(S66)。
【0078】
以上の処理により、通信ホワイトリスト122に含まれる通信であっても、振る舞い検知などの統計処理によって不正通信を判定することができる。このため、不正通信検知装置100によれば、許可された通信であっても、ウイルスによる感染、乗っ取り、悪意のある不正な操作などに基づく不正な通信を検出することができる。また、通信ホワイトリスト122に含まれない通信は、通信ホワイトリスト122との照合によって不正通信と判定することができる。
【0079】
(実施の形態2)
続いて、実施の形態2について説明する。以下の説明では、実施の形態1との相違点を中心に説明し、共通点の説明を省略又は簡略化する。
【0080】
図8は、本実施の形態に係る不正通信検知装置200の構成を示すブロック図である。図8に示されるように、不正通信検知装置200は、実施の形態1に係る不正通信検知装置100と比較して、特定部130及び算出部140の代わりに、特定部230及び算出部240を備える。また、不正通信検知装置200は、さらに、学習部270と、リスト生成部280とを備える。記憶部120には、さらに、設備状態ホワイトリスト224が記憶されている。
【0081】
設備状態ホワイトリスト224は、製造システム10が取りうる複数の設備状態のうちの1以上の設備状態を1以上の対象要素として示す設備状態情報の一例である。本実施の形態では、設備状態ホワイトリスト224は、リスト生成部280によって生成される。あるいは、設備状態ホワイトリスト224は、製造システム10の管理者などによって、不正通信の対象となる1以上の設備状態を登録させることによって生成されてもよい。
【0082】
複数の設備状態は、製造システム10が備える製造装置30などで行われる製造の各工程に相当する。複数の設備状態は、例えば、図9に示されるように、一枚生産開始、基板搬入、基板搬出、一枚生産終了、段取り替え開始、段取り替え終了などである。なお、図9は、設備状態毎の設備状態ホワイトリストに対する照合結果の一例を示す図である。
【0083】
特定部230は、特定部130の動作に加えて、取得部110によって取得された動作情報に基づいて、複数の通信の各々が行われた際の設備状態を要素として特定する。例えば、特定部230は、通信のパケットのペイロードに含まれる動作コマンドを解析することによって、当該通信に対応する設備状態を特定する。動作コマンドは、例えば、制御装置20から製造装置30、32若しくは34に送信されるコマンド、又は、製造装置30、32及び34の少なくとも2つの装置間で送信されるコマンドである。
【0084】
算出部240は、記憶部120から通信ホワイトリスト122及び設備状態ホワイトリスト224を読み出す。算出部240は、製造システム10内で行われた複数の通信のうち、特定部230によって特定された通信が、通信ホワイトリスト122が示す1以上の通信に含まれ、かつ、特定部230によって特定された設備状態が、設備状態ホワイトリスト224が示す1以上の設備状態に含まれることを満たす1以上の通信の各々の異常度を算出する。つまり、異常度の算出対象となる1以上の通信は、通信ホワイトリスト122に含まれる通信であり、かつ、製造システム10が、設備状態ホワイトリスト224が示す設備状態になっている期間に行われた通信である。算出部240による異常度の具体的な算出方法は、実施の形態1と同様である。本実施の形態では、算出部240は、学習部270によって作成された正常モデルからの外れ値を異常度として算出する。
【0085】
図9に示される例では、一枚生産開始、基板搬入、基板搬出及び一枚生産終了の4つの設備状態が設備状態ホワイトリスト224に含まれる。このため、製造システム10が、これらの4つの設備状態になっている期間に行われた通信を対象に異常度の算出、及び、不正通信の判定が行われる。また、段取り替え開始及び段取り替え終了の2つの設備状態が設備状態ホワイトリスト224に含まれない。このため、製造システム10が、これらの2つの設備状態になっている期間に行われた通信に対して、異常度の算出が行われない。
【0086】
学習部270は、予め取得された動作情報を用いた機械学習を行うことで、異常度の算出に用いられる正常モデルを作成する。機械学習の手法は、特に限定されない。例えば、学習部270は、製造システム10を実際に動作させたときの動作情報、又は、製造システム10を模したシミュレーションに基づく動作情報を用いて機械学習を行う。これにより、学習部270は、製造システム10の正常モデルを作成する。
【0087】
機械学習の対象となった動作情報に含まれる複数の通信には、例えば、不正通信が含まれていない。つまり、学習部270は、不正通信が起きていないことを確認できた期間の動作情報を用いて機械学習を行う。
【0088】
リスト生成部280は、機械学習の対象となった動作情報に含まれる複数の通信の各々に対応する1以上の要素を1以上の対象要素として示す情報を、要素情報として生成する情報生成部の一例である。具体的には、リスト生成部280は、学習部270による機械学習の対象となった動作情報に含まれる複数の通信の各々が行われた際の1以上の設備状態を特定し、特定した1以上の設備状態をリスト化することで設備状態ホワイトリスト224を生成する。あるいは、リスト生成部280は、学習部270による機械学習の対象となった動作情報に含まれる複数の通信が行われた際の1以上の設備状態と、その時に発生した1以上のイベントとを特定してもよい。リスト生成部280は、特定した1以上の設備状態と、イベントの発生に伴って遷移した後の1以上の設備状態とをリスト化することで、設備状態ホワイトリスト224を生成してもよい。リスト生成部280は、生成した設備状態ホワイトリスト224を記憶部120に保存する。また、リスト生成部280は、学習部270による機械学習の対象となった動作情報に含まれる複数の通信をリスト化することで、通信ホワイトリスト122を生成してもよい。
【0089】
このように、本実施の形態に係る不正通信検知装置200では、機械学習の結果に基づいて設備状態ホワイトリスト224が生成される。つまり、機械学習の対象とならなかった設備状態を不正通信の検知対象から除外することができるので、誤判定を抑制することができ、不正通信の判定精度を高めることができる。
【0090】
なお、記憶部120には、通信ホワイトリスト122が記憶されていなくてもよい。この場合、特定部230は、取得部110によって取得された動作情報に基づいて、複数の通信の各々が行われた際の設備状態のみを要素として特定し、通信を特定しなくてもよい。算出部240は、製造システム10内で行われた複数の通信のうち、特定部230によって特定された設備状態が、設備状態ホワイトリスト224が示す1以上の設備状態に含まれることを満たす1以上の通信の各々の異常度を算出してもよい。つまり、算出部240は、設備状態ホワイトリスト224に対する照合のみを行ってもよい。
【0091】
(実施の形態3)
続いて、実施の形態3について説明する。以下の説明では、実施の形態2との相違点を中心に説明し、共通点の説明を省略又は簡略化する。
【0092】
図10は、本実施の形態に係る不正通信検知装置300の構成を示すブロック図である。図10に示されるように、不正通信検知装置300は、実施の形態2に係る不正通信検知装置200と比較して、特定部230、算出部240及びリスト生成部280の代わりに、特定部330、算出部340及びリスト生成部380を備える。記憶部120には、設備状態ホワイトリスト224の代わりに、種類ホワイトリスト326が記憶されている。なお、本実施の形態に係る製造システム10は、種類の異なる複数の製造物を製造する。
【0093】
種類ホワイトリスト326は、複数の製造物の1以上の種類を1以上の対象要素として示す種類情報の一例である。本実施の形態では、種類ホワイトリスト326は、リスト生成部380によって生成される。あるいは、種類ホワイトリスト326は、製造システム10の管理者などによって、不正通信の検知対象となる1以上の種類を登録させることによって生成されてもよい。
【0094】
製造物の種類は、例えば、製造物の型番又は名称などに相当する。例えば、図11に示される例では、製造物の種類は、製造物A及び製造物Bなどの名称で示される。なお、図11は、種類毎の種類ホワイトリストに対する照合結果の一例を示す図である。
【0095】
特定部330は、実施の形態1に係る特定部130の動作に加えて、取得部110によって取得された動作情報に基づいて、複数の通信の各々が行われた際に製造された製造物の種類を要素として特定する。例えば、特定部330は、通信のパケットの送信時刻又は受信時刻を通信時刻として取得し、取得した通信時刻を含む期間中に製造された製造物の種類を特定する。
【0096】
算出部340は、記憶部120から通信ホワイトリスト122及び種類ホワイトリスト326を読み出す。算出部340は、製造システム10内で行われた複数の通信のうち、特定部330によって特定された通信が、通信ホワイトリスト122が示す1以上の通信に含まれ、かつ、特定部330によって特定された種類が、種類ホワイトリスト326が示す1以上の種類に含まれることを満たす1以上の通信の各々の異常度を算出する。つまり、異常度の算出対象となる1以上の通信は、通信ホワイトリスト122に含まれる通信であり、かつ、種類ホワイトリスト326が示す種類の製造物が製造された期間に行われた通信である。算出部340による異常度の具体的な算出方法は、実施の形態1と同様である。本実施の形態では、算出部340は、学習部270によって生成された正常モデルからの外れ値を異常度として算出する。
【0097】
図11に示される例では、製造物Aが種類ホワイトリスト326に含まれる。このため、製造物Aの製造期間に行われた通信を対象に異常度の算出、及び、不正通信の判定が行われる。また、製造物Bは、種類ホワイトリスト326に含まれない。このため、製造物Bの製造期間に行われた通信に対して、異常度の算出が行われない。
【0098】
リスト生成部380は、機械学習の対象となった動作情報に含まれる複数の通信の各々に対応する1以上の要素を1以上の対象要素として示す情報を、要素情報として生成する情報生成部の一例である。具体的には、リスト生成部380は、学習部270による機械学習の対象となった動作情報に含まれる複数の通信の各々が行われた際に製造された製造物の1以上の種類を特定し、特定した1以上の種類をリスト化することで種類ホワイトリスト326を生成する。リスト生成部380は、生成した種類ホワイトリスト326を記憶部120に保存する。また、リスト生成部380は、学習部270による機械学習の対象となった動作情報に含まれる複数の通信をリスト化することで、通信ホワイトリスト122を生成してもよい。
【0099】
このように、本実施の形態に係る不正通信検知装置300では、機械学習の結果に基づいて種類ホワイトリスト326が生成される。つまり、機械学習の対象とならなかった種類の製造物を製造した際に行われた通信を不正通信の検知対象から除外することができるので、誤判定を抑制することができ、不正通信の判定精度を高めることができる。
【0100】
なお、記憶部120には、通信ホワイトリスト122が記憶されていなくてもよい。この場合、特定部330は、取得部110によって取得された動作情報に基づいて、複数の通信の各々が行われた際に製造された製造物の種類のみを要素として特定し、通信を特定しなくてもよい。算出部340は、製造システム10内で行われた複数の通信のうち、特定部330によって特定された種類が、種類ホワイトリスト326が示す1以上の種類に含まれることを満たす1以上の通信の各々の異常度を算出してもよい。つまり、算出部340は、種類ホワイトリスト326に対する照合のみを行ってもよい。
【0101】
(実施の形態4)
続いて、実施の形態4について説明する。以下の説明では、実施の形態2との相違点を中心に説明し、共通点の説明を省略又は簡略化する。
【0102】
図12は、本実施の形態に係る不正通信検知装置400の構成を示すブロック図である。図12に示されるように、不正通信検知装置400は、実施の形態2に係る不正通信検知装置200と比較して、特定部230、算出部240及びリスト生成部280の代わりに、特定部430、算出部440及びリスト生成部480を備える。記憶部120には、設備状態ホワイトリスト224の代わりに、構成ホワイトリスト428が記憶されている。
【0103】
構成ホワイトリスト428は、製造システム10の複数の設備構成のうちの1以上の設備構成を1以上の対象要素として示す構成情報の一例である。本実施の形態では、構成ホワイトリスト428は、リスト生成部480によって生成される。あるいは、構成ホワイトリスト428は、製造システム10の管理者などによって、不正通信の検知対象となる1以上の設備構成を登録させることによって生成されてもよい。
【0104】
製造システム10の設備構成は、例えば、製造システム10を構成する複数の製造装置の種類及び配置位置の組み合わせで表される。例えば、図13に示されるように、製造システム10の設備構成Aと設備構成Bとでは、製造装置の種類又は配置が互いに異なっている。なお、図13は、設備構成毎の構成ホワイトリストに対する照合結果の一例を示す図である。
【0105】
本実施の形態では、製造システム10が複数の設備構成を取りうる。例えば、製造システム10に含まれる製造装置30、32及び34の少なくとも1つが異なる種類の製造装置に置換されうる。あるいは、製造ライン内での製造装置30、32及び34の配置を変更可能である。
【0106】
特定部430は、実施の形態1に係る特定部130の動作に加えて、取得部110によって取得された動作情報に基づいて、複数の通信が行われた際の設備構成を要素として特定する。例えば、特定部430は、通信のパケットの送信時刻又は受信時刻を通信時刻として取得し、取得した通信時刻を含む期間中の製造システム10の設備構成を特定する。
【0107】
算出部440は、記憶部120から通信ホワイトリスト122及び構成ホワイトリスト428を読み出す。算出部440は、製造システム10内で行われた複数の通信のうち、特定部430によって特定された通信が、通信ホワイトリスト122が示す1以上の通信に含まれ、かつ、特定部430によって特定された設備構成が、構成ホワイトリスト428が示す1以上の設備構成に含まれることを満たす1以上の通信の各々の異常度を算出する。つまり、異常度の算出対象となる1以上の通信は、通信ホワイトリスト122に含まれる通信であり、かつ、構成ホワイトリスト428が示す設備構成で製造物が製造された際に行われた通信である。算出部440による異常度の具体的な算出方法は、実施の形態1と同様である。本実施の形態では、算出部440は、学習部270によって生成された正常モデルからの外れ値を異常度として算出する。
【0108】
図14に示される例では、設備構成Aが構成ホワイトリスト428に含まれる。このため、製造システム10が設備構成Aで動作中に行われた通信を対象に異常度の算出、及び、不正通信の判定が行われる。また、設備構成Bは、構成ホワイトリスト428に含まれない。このため、製造システム10が設備構成Bで動作中に行われた通信に対して、異常度の算出が行われない。
【0109】
リスト生成部480は、機械学習の対象となった動作情報に含まれる複数の通信の各々に対応する1以上の要素を1以上の対象要素として示す情報を、要素情報として生成する情報生成部の一例である。具体的には、リスト生成部480は、学習部270による機械学習の対象となった動作情報に含まれる複数の通信の各々が行われた際の1以上の設備構成を特定し、特定した1以上の設備構成をリスト化することで構成ホワイトリスト428を生成する。リスト生成部480は、生成した構成ホワイトリスト428を記憶部120に保存する。また、リスト生成部480は、学習部270による機械学習の対象となった動作情報に含まれる複数の通信をリスト化することで、通信ホワイトリスト122を生成してもよい。
【0110】
このように、本実施の形態に係る不正通信検知装置400では、機械学習の結果に基づいて構成ホワイトリスト428が生成される。つまり、機械学習の対象とならなかった設備構成で製造システム10が動作中に行われた通信を不正通信の検知対象から除外することができるので、誤判定を抑制することができ、不正通信の判定精度を高めることができる。
【0111】
なお、記憶部120には、通信ホワイトリスト122が記憶されていなくてもよい。この場合、特定部430は、取得部110によって取得された動作情報に基づいて、複数の通信の各々が行われた際の設備構成のみを要素として特定し、通信を特定しなくてもよい。算出部440は、製造システム10内で行われた複数の通信のうち、特定部430によって特定された設備構成が、構成ホワイトリスト428が示す1以上の設備構成に含まれることを満たす1以上の通信の各々の異常度を算出してもよい。つまり、算出部440は、構成ホワイトリスト428に対する照合のみを行ってもよい。
【0112】
(変形例)
ここで、上述した実施の形態の変形例について説明する。
【0113】
実施の形態2~4では、記憶部120に、通信ホワイトリスト122と、設備状態ホワイトリスト224、種類ホワイトリスト326及び構成ホワイトリスト428のいずれか1つとの2つのホワイトリストが記憶されている例を示したが、これに限らない。例えば、記憶部120には、通信ホワイトリスト122と、設備状態ホワイトリスト224と、種類ホワイトリスト326と、構成ホワイトリスト428とから選択された3つ又は4つ(全て)が記憶されていてもよい。
【0114】
この場合、特定部230は、記憶部120に記憶されたホワイトリストが示す対象要素に対応する要素を特定する。算出部240は、複数の通信のうち、特定部230によって特定された要素が、記憶部120に記憶された全てのホワイトリストが示す対象要素に含まれることを満たす1以上の通信の各々の異常度を算出する。
【0115】
例えば、記憶部120に通信ホワイトリスト122と、設備状態ホワイトリスト224と、種類ホワイトリスト326とが記憶されている場合、特定部230は、取得部110によって取得された動作情報に基づいて、複数の通信の各々と、当該通信が行われた際の設備状態と、当該通信が行われた際に製造している製造物の種類とを要素として特定する。
【0116】
図14は、設備状態ホワイトリスト224と種類ホワイトリスト326との各々に対する照合結果の一例を示す図である。図14に示されるように、設備状態ホワイトリスト224に含まれる設備状態であり、かつ、種類ホワイトリスト326に含まれる種類の製造物が製造されている期間の通信のみを対象として、算出部240は、異常度の算出を行う。具体的には、算出部240は、種類ホワイトリスト326に含まれる製造物Aの製造期間内において、設備状態ホワイトリスト224に含まれる一枚生産開始、基板搬入、基板搬出及び一枚生産終了の設備状態である期間の通信の異常度を算出する。製造物Aの製造期間内であっても、設備状態ホワイトリスト224に含まれない段取り替え開始及び段取り替え終了の設備状態である期間の通信は、異常度の算出及び不正通信の検知の対象とならない。また、設備状態ホワイトリスト224に含まれる一枚生産開始、基板搬入、基板搬出及び一枚生産終了の設備状態である期間の通信であっても、種類ホワイトリスト326に含まれない製造物Bの製造期間中の通信は、異常度の算出及び不正通信の検知の対象とならない。
【0117】
(他の実施の形態)
以上、1つ又は複数の態様に係る不正通信検知装置、不正通信検知方法及び製造システムなどについて、実施の形態に基づいて説明したが、本開示は、これらの実施の形態に限定されるものではない。本開示の主旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したもの、及び、異なる実施の形態における構成要素を組み合わせて構築される形態も、本開示の範囲内に含まれる。
【0118】
例えば、上記の実施の形態では、製造システムの異常の一例である不正通信を検知する例を示したが、これに限らない。例えば、本開示は、製造システムの異常を検知する異常検知装置、異常検知方法、又は、異常検知装置を備える製造システムなどとして実現されてもよい。
【0119】
例えば、算出部は、製造物の製造に関わる複数の要素のうち、特定部によって特定された要素が、要素情報が示す1以上の対象要素に含まれることを満たす1以上の要素の異常度を算出する。例えば、算出部は、異常度の算出の対象となる1以上の要素の特徴量を動作情報から抽出する。特徴量は、例えば製造装置のエラーの発生回数、1つの製造物を製造するのに要する時間、1つの製造物を製造するのに要する消費電力などである。算出部は、これらの特徴量を統計処理することにより、要素毎の異常度を算出してもよい。例えば、算出部は、設備状態毎の異常度、製造物の種類毎の異常度、及び、設備構成毎の異常度を算出してもよい。判定部は、算出部によって算出された異常度と閾値とを比較することで、異常度が閾値より大きい場合に、当該異常度に対応する要素が異常であると判定する。
【0120】
また、例えば、上記実施の形態で説明した装置間の通信方法については特に限定されるものではない。装置間で無線通信が行われる場合、無線通信の方式(通信規格)は、例えば、ZigBee(登録商標)、Bluetooth(登録商標)、又は、無線LAN(Local Area Network)などの近距離無線通信である。あるいは、無線通信の方式(通信規格)は、インターネットなどの広域通信ネットワークを介した通信でもよい。また、装置間においては、無線通信に代えて、有線通信が行われてもよい。有線通信は、具体的には、電力線搬送通信(PLC:Power Line Communication)又は有線LANを用いた通信などである。
【0121】
また、上記実施の形態において、特定の処理部が実行する処理を別の処理部が実行してもよい。また、複数の処理の順序が変更されてもよく、あるいは、複数の処理が並行して実行されてもよい。また、製造システムが備える構成要素の複数の装置への振り分けは、一例である。例えば、一の装置が備える構成要素を他の装置が備えてもよい。また、製造システムは、単一の装置として実現されてもよい。
【0122】
例えば、上記実施の形態において説明した処理は、単一の装置(システム)を用いて集中処理することによって実現してもよく、又は、複数の装置を用いて分散処理することによって実現してもよい。また、上記プログラムを実行するプロセッサは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、又は分散処理を行ってもよい。
【0123】
また、上記実施の形態において、制御部などの構成要素の全部又は一部は、専用のハードウェアで構成されてもよく、あるいは、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPU(Central Processing Unit)又はプロセッサなどのプログラム実行部が、HDD(Hard Disk Drive)又は半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
【0124】
また、制御部などの構成要素は、1つ又は複数の電子回路で構成されてもよい。1つ又は複数の電子回路は、それぞれ、汎用的な回路でもよいし、専用の回路でもよい。
【0125】
1つ又は複数の電子回路には、例えば、半導体装置、IC(Integrated Circuit)又はLSI(Large Scale Integration)などが含まれてもよい。IC又はLSIは、1つのチップに集積されてもよく、複数のチップに集積されてもよい。ここでは、IC又はLSIと呼んでいるが、集積の度合いによって呼び方が変わり、システムLSI、VLSI(Very Large Scale Integration)、又は、ULSI(Ultra Large Scale Integration)と呼ばれるかもしれない。また、LSIの製造後にプログラムされるFPGA(Field Programmable Gate Array)も同じ目的で使うことができる。
【0126】
また、本開示の全般的又は具体的な態様は、システム、装置、方法、集積回路又はコンピュータプログラムで実現されてもよい。あるいは、当該コンピュータプログラムが記憶された光学ディスク、HDD若しくは半導体メモリなどのコンピュータ読み取り可能な非一時的記録媒体で実現されてもよい。また、システム、装置、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
【0127】
また、上記の各実施の形態は、請求の範囲又はその均等の範囲において種々の変更、置き換え、付加、省略などを行うことができる。
【産業上の利用可能性】
【0128】
本開示は、製造システムの不正通信を精度良く検知することができる不正通信検知装置などとして利用でき、例えば、製造システムの管理装置などに利用することができる。
【符号の説明】
【0129】
10 製造システム
20 制御装置
30、32、34 製造装置
100、200、300、400 不正通信検知装置
110 取得部
120 記憶部
122 通信ホワイトリスト
224 設備状態ホワイトリスト
130、230、330、430 特定部
140、240、340、440 算出部
150 判定部
160 出力部
270 学習部
280、380、480 リスト生成部
326 種類ホワイトリスト
428 構成ホワイトリスト

図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14