(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-07-24
(45)【発行日】2023-08-01
(54)【発明の名称】セキュリティ装置、インシデント対応処理方法、プログラム、及び記憶媒体
(51)【国際特許分類】
H04L 12/46 20060101AFI20230725BHJP
H04L 12/28 20060101ALI20230725BHJP
【FI】
H04L12/46 100C
H04L12/28 100A
H04L12/28 200Z
(21)【出願番号】P 2021536478
(86)(22)【出願日】2019-07-29
(86)【国際出願番号】 JP2019029627
(87)【国際公開番号】W WO2021019636
(87)【国際公開日】2021-02-04
【審査請求日】2021-12-16
(73)【特許権者】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(74)【代理人】
【識別番号】100129012
【氏名又は名称】元山 雅史
(72)【発明者】
【氏名】山本 泰生
(72)【発明者】
【氏名】廣部 直樹
(72)【発明者】
【氏名】小河原 徹
【審査官】大石 博見
(56)【参考文献】
【文献】特開2018-064293(JP,A)
【文献】国際公開第2019/026310(WO,A1)
【文献】再公表特許第2017/183099(JP,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/46
H04L 12/28
(57)【特許請求の範囲】
【請求項1】
1以上の機器が通信路を介して接続された機器ネットワークに含まれるセキュリティ装置であって、
前記機器ネットワークに発生した異常に基づいて特定又は推定された攻撃の情報(以下、攻撃情報という)を取得する攻撃情報取得部と、
前記機器の状態に関する情報(以下、機器情報という)を取得する機器情報取得部と、
前記攻撃の種類ごとに、インシデント対応と該対応による機能制限のレベルとが紐付けられた情報(以下、対応情報という)が記憶される対応情報記憶部と、
取得した前記攻撃情報と前記対応情報とに基づいて、前記攻撃情報に含まれる前記攻撃に対して実施すべき前記インシデント対応を決定する対応決定部と、
決定された前記インシデント対応を実施する対応実施部とを備え、
前記対応決定部が、
取得した前記攻撃情報に、一の前記通信路又は一の前記機器に対する2以上の前記攻撃が含まれている場合、これら攻撃の前記機能制限のレベルと、取得した前記機器情報とを考慮して、前記2以上の前記攻撃に対する前記インシデント対応の実施条件を決定するものであり、
前記対応実施部が、
決定された前記実施条件に基づいて、前記2以上の前記攻撃に対する前記インシデント対応を実施するものであることを特徴とするセキュリティ装置。
【請求項2】
前記攻撃の対象に含まれる前記通信路の種別と、前記機器情報と、前記実施条件との関係を示すテーブル情報が記憶される実施条件記憶部を備え、
前記対応決定部が、
取得した前記攻撃情報に、前記2以上の前記攻撃が含まれている場合、前記テーブル情報に基づいて、前記攻撃の対象となった前記一の前記通信路と、取得した前記機器情報とに対応する前記実施条件を決定するものであることを特徴とする請求項1記載のセキュリティ装置。
【請求項3】
前記実施条件には、前記機能制限のレベルの降順又は昇順に実施する条件が含まれていることを特徴とする請求項1又は請求項2記載のセキュリティ装置。
【請求項4】
前記実施条件には、前記機能制限のレベルが高い方又は低い方の前記攻撃に対する前記インシデント対応を実施する条件が含まれていることを特徴とする請求項1又は請求項2記載のセキュリティ装置。
【請求項5】
前記機器が、車両に搭載される制御装置であり、
前記機器ネットワークが、車載ネットワークであることを特徴とする請求項1又は請求項2記載のセキュリティ装置。
【請求項6】
前記制御装置には、
前記車両の走行系制御装置、運転支援系制御装置、ボディ系制御装置、情報系制御装置、及び診断用コネクタ装置のうちの少なくとも1つが含まれ、
前記機器情報には、手動運転中、運転支援中、リプログラミング中、及び駐車中のうちの少なくとも1つの車両状態に関する情報が含まれていることを特徴とする請求項5記載のセキュリティ装置。
【請求項7】
前記機器が、FA(Factory Automation)システムを構成する産業機器に搭載される制御機器であり、
前記機器ネットワークが、前記FAシステムを構成する産業機器ネットワークであることを特徴とする請求項1又は請求項2記載のセキュリティ装置。
【請求項8】
前記制御機器には、
前記産業機器のプログラマブルコントローラ、フィールドネットワーク機器、無線機器、センサ、アクチュエータ、ロボット、HMI(Human Machine Interface)機器、及びデータ収集機器のうちの少なくとも1つが含まれ、
前記機器情報には、前記産業機器の運用フェーズである、立ち上げ中、通常稼動中、一時停止中、停止中、及びリプログラミング中のうちの少なくとも1つの前記運用フェーズに関する情報が含まれていることを特徴とする請求項7記載のセキュリティ装置。
【請求項9】
1以上の機器が通信路を介して接続された機器ネットワークに含まれる少なくとも1以上のコンピュータが実行するインシデント対応処理方法であって、
前記機器ネットワークに発生した異常に基づいて特定又は推定された攻撃の情報(以下、攻撃情報という)を取得する攻撃情報取得ステップと、
前記機器の状態に関する情報(以下、機器情報という)を取得する機器情報取得ステップと、
取得した前記攻撃情報、及び前記攻撃の種類ごとに、インシデント対応と該対応による機能制限のレベルとを紐付けて記憶された情報(以下、対応情報という)に基づいて、前記攻撃情報に含まれる前記攻撃に対して実施すべき前記インシデント対応を決定する対応決定ステップと、
決定された前記インシデント対応を実施する対応実施ステップとを含み、
前記対応決定ステップが、
取得した前記攻撃情報に、一の前記通信路又は一の前記機器に対する2以上の前記攻撃が含まれている場合、これら攻撃の前記機能制限のレベルと、取得した前記機器情報とを考慮して、前記2以上の前記攻撃に対する前記インシデント対応の実施条件を決定するステップを含み、
前記対応実施ステップが、
決定された前記実施条件に基づいて、前記2以上の前記攻撃に対する前記インシデント対応を実施するステップを含むことを特徴とするインシデント対応処理方法。
【請求項10】
請求項9記載のインシデント対応処理方法の各ステップを前記機器ネットワークに含まれる少なくとも1以上のコンピュータに実行させるためのプログラム。
【請求項11】
請求項9記載のインシデント対応処理方法の各ステップを前記機器ネットワークに含まれる少なくとも1以上のコンピュータに実行させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、セキュリティ装置、インシデント対応処理方法、プログラム、及び記憶媒体に関する。
【背景技術】
【0002】
特許文献1には、車両に構築されたネットワークに接続された複数の車両制御装置と、これら車両制御装置間の通信を管理するゲートウェイ通信制御装置とから構成された車載通信システムが開示されている。
【0003】
前記ゲートウェイ通信制御装置は、ある車両制御装置からのメッセージの受信完了時または受信途中に、メッセージに含まれる信頼性が確認できるデータや信号に基づいて、通信信頼性(正常又は異常)を判断する。そして、前記ゲートウェイ通信制御装置は、通信結果が正常な場合、他の車両制御装置に対するゲートウェイ送信を継続する一方、通信結果が異常な場合、ゲートウェイ送信を中断するか、または異常メッセージをゲートウェイ送信データに付加する処理を実行するようになっている。
【0004】
従来の車載通信システムでは、ゲートウェイ通信制御装置を介した複数の車両制御装置間の通信時に、前記ゲートウェイ通信制御装置が、前記各車両制御装置から受信した情報に基づいて異常を検出すると、安全性確保の観点から、前記車両制御装置間の通信を停止させたり、受信情報を中継しなかったりする対策がとられている。
【0005】
[発明が解決しようとする課題]
しかしながら、車両制御装置間の通信を停止したり、情報を中継しなかったりする対策が実施されると、各車両制御装置で必要な情報であるにもかかわらず、これら情報が前記各車両制御装置で受信されず、前記車両制御装置による制御が必要以上に制限されたり、制御が適切に実行できなくなったりして、車両の利便性が損なわれるという課題があった。
さらに、複数の異常が同時に検出された場合、これら異常に対する対応が重複して実行されるなどの過剰な対応が実施されることによって、前記車両制御装置で行われるべき制御が過剰に制限されて、車両の利便性が大きく損なわれたり、ハードウェアのリソースが必要以上に奪われたりするという課題があった。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【課題を解決するための手段及びその効果】
【0007】
本発明は上記課題に鑑みなされたものであって、機器ネットワークに対する複数の攻撃の情報を取得した場合であっても、これら攻撃に対して、機器の状態が考慮された適切な条件でインシデント対応を迅速に実施することができるセキュリティ装置、インシデント対応処理方法、プログラム、及び記憶媒体を提供することを目的としている。
【0008】
上記目的を達成するために本開示に係るセキュリティ装置(1)は、1以上の機器が通信路を介して接続された機器ネットワークに含まれるセキュリティ装置であって、
前記機器ネットワークに発生した異常に基づいて特定又は推定された攻撃の情報(以下、攻撃情報という)を取得する攻撃情報取得部と、
前記機器の状態に関する情報(以下、機器情報という)を取得する機器情報取得部と、
前記攻撃の種類ごとに、インシデント対応と該対応による機能制限のレベルとが紐付けられた情報(以下、対応情報という)が記憶される対応情報記憶部と、
取得した前記攻撃情報と前記対応情報とに基づいて、前記攻撃情報に含まれる前記攻撃に対して実施すべき前記インシデント対応を決定する対応決定部と、
決定された前記インシデント対応を実施する対応実施部とを備え、
前記対応決定部が、
取得した前記攻撃情報に、一の前記通信路又は一の前記機器に対する2以上の前記攻撃が含まれている場合、これら攻撃の前記機能制限のレベルと、取得した前記機器情報とを考慮して、前記2以上の前記攻撃に対する前記インシデント対応の実施条件を決定するものであり、
前記対応実施部が、
決定された前記実施条件に基づいて、前記2以上の前記攻撃に対する前記インシデント対応を実施するものであることを特徴としている。
【0009】
上記セキュリティ装置(1)によれば、取得した前記攻撃情報に、前記2以上の前記攻撃が含まれている場合であっても、これら攻撃に対する前記インシデント対応に紐付けられた前記機能制限のレベルと、取得した前記機器情報とが考慮された、前記2以上の前記攻撃に対する前記インシデント対応の実施条件が決定され、決定された前記実施条件に基づいて、前記2以上の前記攻撃に対する前記インシデント対応が実施される。
【0010】
したがって、当該セキュリティ装置単体で、前記攻撃情報に含まれる前記2以上の前記攻撃に対して、これら攻撃の前記機能制限のレベルと前記機器の状態とが考慮された適切な条件で前記インシデント対応を効率良く迅速に実施することができる。
【0011】
例えば、前記2以上の前記攻撃に対して、重複した対応など、必要以上に過剰な対応を実施しないようにすることが可能となり、ハードウェアリソースの消耗を抑制することができる。また、前記機器の状態に応じて、前記機器の機能が過剰に制限されることを抑制しつつ、前記攻撃への前記インシデント対応を実施することも可能となる。
なお、前記通信路は、有線の通信路であってもよいし、無線の通信路であってもよいし、有線と無線とを含む通信路であってもよい。
【0012】
また本開示に係るセキュリティ装置(2)は、上記セキュリティ装置(1)において、
前記攻撃の対象に含まれる前記通信路の種別と、前記機器情報と、前記実施条件との関係を示すテーブル情報が記憶される実施条件記憶部を備え、
前記対応決定部が、
取得した前記攻撃情報に、前記2以上の前記攻撃が含まれている場合、前記テーブル情報に基づいて、前記攻撃の対象となった前記一の前記通信路と、取得した前記機器情報とに対応する前記実施条件を決定するものであることを特徴としている。
【0013】
上記セキュリティ装置(2)によれば、前記テーブル情報には、前記通信路の種別と、前記機器情報と、前記実施条件との関係が記憶されているので、前記対応決定部が前記テーブル情報を用いることで、前記攻撃の対象となった前記一の前記通信路と、取得した前記機器情報とに対応する前記実施条件を効率良く決定することができ、処理の高速化を図ることができる。
【0014】
また本開示に係るセキュリティ装置(3)は、上記セキュリティ装置(1)又は(2)において、
前記実施条件には、前記機能制限のレベルの降順又は昇順に実施する条件が含まれていることを特徴としている。
【0015】
前記攻撃の種類は、多種多様であり、前記機器又は前記通信路などの設備に軽微な影響しか与えない攻撃もあれば、前記設備に甚大な影響を与える攻撃もあり、前記設備がこれら攻撃により受ける影響は一律ではない。また、前記攻撃に対する前記インシデント対応も、その攻撃の種類によって異なる。
したがって、前記攻撃に対する前記インシデント対応が、例えば、一部のメッセージを遮断する、又は一部のメッセージを転送しないといった、前記設備の一部分にしか影響を与えないような内容であれば、前記インシデント対応に伴う前記機能制限のレベルは低くなる。
一方、前記攻撃に対する前記インシデント対応が、例えば、全メッセージを遮断する、又は全メッセージを転送しないといった、前記設備の多くの部分に影響を与える内容であれば、前記インシデント対応に伴う前記機能制限のレベルは高くなる。
【0016】
上記セキュリティ装置(3)によれば、前記2以上の前記攻撃に対して、前記機能制限のレベルの降順に(換言すれば、前記機能制限が大きい方の対応から順に)、前記インシデント対応を実行させたり、前記機能制限のレベルの昇順に(換言すれば、前記機能制限が小さい方の対応から順に)、前記インシデント対応を実行させたりすることが可能となる。したがって、前記機器の状態に適した順番で前記インシデント対応を実行することができる。
【0017】
例えば、前記攻撃の対象となった前記機器の状態が、緊急性が高い状態である場合、前記機能制限のレベルの降順に、前記インシデント対応を実行することで、重複した対応を回避しつつ、前記攻撃による被害の拡大を速やかに阻止することが可能となる。
また、前記攻撃の対象となった前記機器の状態が、緊急性がさほど高くない状態である場合、前記機能制限のレベルの昇順に、前記インシデント対応を実行することで、重複した対応を回避しつつ、また、前記機器の機能が過剰に制限されることを抑制することができ、前記機器による利便性を損なわないように前記インシデント対応を実行することが可能となる。
【0018】
また本開示に係るセキュリティ装置(4)は、上記セキュリティ装置(1)又は(2)において、
前記実施条件には、前記機能制限のレベルが高い方又は低い方の前記攻撃に対する前記インシデント対応を実施する条件が含まれていることを特徴としている。
【0019】
上記セキュリティ装置(4)によれば、前記2以上の前記攻撃に対して、前記機能制限のレベルが高い方の前記インシデント対応を実行させたり、前記機能制限のレベルが低い方の前記インシデント対応を実行させたりすることが可能となる。したがって、前記機器の状態に適した方の前記インシデント対応を優先的に実行することができ、上記セキュリティ装置(3)と同様の効果を得ることができる。
【0020】
また本開示に係るセキュリティ装置(5)は、上記セキュリティ装置(1)~(4)のいずれかにおいて、
前記機器が、車両に搭載される制御装置であり、
前記機器ネットワークが、車載ネットワークであることを特徴としている。
【0021】
上記セキュリティ装置(5)によれば、1以上の前記制御装置が前記通信路を介して接続された前記車載ネットワークに対して前記攻撃を受けた場合、前記車両単体で、前記攻撃情報に含まれる前記2以上の前記攻撃に対して、これら攻撃の前記機能制限のレベルと前記機器の状態とが考慮された適切な条件で前記インシデント対応を効率良く迅速に実施することができる。したがって、前記車両のユーザは、セキュリティの脅威に対して不安を抱くことなく、より安心して乗車することが可能となる。
【0022】
また本開示に係るセキュリティ装置(6)は、上記セキュリティ装置(5)において、
前記制御装置には、前記車両の走行系制御装置、運転支援系制御装置、ボディ系制御装置、情報系制御装置、及び診断用コネクタ装置のうちの少なくとも1つが含まれ、
前記機器情報には、手動運転中、運転支援中、リプログラミング中、及び駐車中のうちの少なくとも1つの車両状態に関する情報が含まれていることを特徴としている。
【0023】
上記セキュリティ装置(6)によれば、上記した制御装置のいずれか、又はこれら制御装置の前記通信路のいずれかに対する2以上の攻撃が含まれている場合であっても、これら攻撃に対して、これら攻撃の前記機能制限のレベルと、前記車両状態とが考慮された適切な条件で前記インシデント対応を効率良く迅速に実施することができる。
【0024】
例えば、前記手動運転中、前記運転支援中、又は前記駐車中に、前記走行系制御装置の前記通信路に対する2以上の攻撃が特定又は推定された場合、前記機能制限のレベルが高い方の前記インシデント対応から実行することで、重複した対応を回避しつつ、前記攻撃による被害の拡大を速やかに阻止することが可能となる。
また、例えば、前記制御装置の前記リプログラミング中に、前記走行系制御装置の前記通信路に対する2以上の攻撃が特定又は推定された場合、前記機能制限のレベルが低い方の前記インシデント対応から実行することで、重複した対応を回避しつつ、また、前記制御装置の機能が過剰に制限されることを抑制しつつ、前記インシデント対応を実行することが可能となる。
【0025】
また本開示に係るセキュリティ装置(7)は、上記セキュリティ装置(1)~(4)のいずれかにおいて、
前記機器が、FA(Factory Automation)システムを構成する産業機器に搭載される制御機器であり、
前記機器ネットワークが、前記FAシステムを構成する産業機器ネットワークであることを特徴としている。
【0026】
上記セキュリティ装置(7)によれば、1以上の前記制御機器が前記通信路を介して接続された前記産業機器ネットワークに対して前記攻撃を受けた場合、前記産業機器単体で、前記攻撃情報に含まれる前記2以上の前記攻撃に対して、これら攻撃の前記機能制限のレベルと前記制御機器の状態とが考慮された適切な条件で前記インシデント対応を効率良く迅速に実施することができる。したがって、前記産業機器のユーザ(例えば、オペレータ)は、セキュリティの脅威に対して不安を抱くことなく、より安心して前記産業機器を使用することが可能となる。
【0027】
また本開示に係るセキュリティ装置(8)は、上記セキュリティ装置(7)において、
前記制御機器には、
前記産業機器のプログラマブルコントローラ、フィールドネットワーク機器、無線機器、センサ、アクチュエータ、ロボット、HMI(Human Machine Interface)機器、及びデータ収集機器のうちの少なくとも1つが含まれ、
前記機器情報には、前記産業機器の運用フェーズである、立ち上げ中、通常稼動中、一時停止中、停止中、及びリプログラミング中のうちの少なくとも1つの前記運用フェーズに関する情報が含まれていることを特徴としている。
【0028】
上記セキュリティ装置(8)によれば、上記した制御機器のいずれか、又はこれら制御機器の前記通信路のいずれかに対する2以上の攻撃が含まれている場合であっても、これら攻撃に対して、これら攻撃の前記機能制限のレベルと、前記産業機器の運用フェーズとが考慮された適切な条件で前記インシデント対応を効率良く迅速に実施することができる。
【0029】
例えば、前記産業機器の前記立ち上げ中、前記通常稼動中、前記一時停止中、又は前記停止中に、前記プログラマブルコントローラ、又は前記フィールドネットワーク機器の前記通信路に対する2以上の攻撃が特定又は推定された場合、前記機能制限のレベルが高い方の前記インシデント対応から実行することで、重複した対応を回避しつつ、前記攻撃による被害の拡大を速やかに阻止することが可能となる。
また、例えば、前記制御機器の前記リプログラミング中に、前記プログラマブルコントローラ、又は前記フィールドネットワーク機器の前記通信路に対する2以上の攻撃が特定又は推定された場合、前記機能制限のレベルが低い方の前記インシデント対応から実行することで、重複した対応を回避しつつ、また、前記制御機器の機能が過剰に制限されることを抑制しつつ、前記インシデント対応を実行することが可能となる。
【0030】
また本開示に係るインシデント対応処理方法は、1以上の機器が通信路を介して接続された機器ネットワークに含まれる少なくとも1以上のコンピュータが実行するインシデント対応処理方法であって、
前記機器ネットワークに発生した異常に基づいて特定又は推定された攻撃の情報(以下、攻撃情報という)を取得する攻撃情報取得ステップと、
前記機器の状態に関する情報(以下、機器情報という)を取得する機器情報取得ステップと、
取得した前記攻撃情報、及び前記攻撃の種類ごとに、インシデント対応と該対応による機能制限のレベルとを紐付けて記憶された情報(以下、対応情報という)に基づいて、前記攻撃情報に含まれる前記攻撃に対して実施すべき前記インシデント対応を決定する対応決定ステップと、
決定された前記インシデント対応を実施する対応実施ステップとを含み、
前記対応決定ステップが、
取得した前記攻撃情報に、一の前記通信路又は一の前記機器に対する2以上の前記攻撃が含まれている場合、これら攻撃の前記機能制限のレベルと、取得した前記機器情報とを考慮して、前記2以上の前記攻撃に対する前記インシデント対応の実施条件を決定するステップを含み、
前記インシデント対応実施ステップが、
決定された前記実施条件に基づいて、前記2以上の前記攻撃に対する前記インシデント対応を実施するステップを含むことを特徴としている。
【0031】
上記インシデント対応処理方法によれば、取得した前記攻撃情報に、前記2以上の前記攻撃が含まれている場合であっても、これら攻撃の前記機能制限のレベルと、取得した前記機器情報とが考慮された、前記2以上の前記攻撃に対する前記インシデント対応の実施条件を決定し、決定した前記実施条件に基づいて、前記2以上の前記攻撃に対する前記インシデント対応を実施することが可能となる。
【0032】
したがって、前記機器ネットワークに含まれる前記コンピュータ単体で、前記攻撃情報に含まれる前記2以上の前記攻撃に対して、これら攻撃の前記機能制限のレベルと前記機器の状態とが考慮された適切な条件で前記インシデント対応を効率良く迅速に実施することができる。
【0033】
例えば、前記2以上の前記攻撃に対して、重複した対応など、必要以上に過剰な対応を実施しないようにすることが可能となり、ハードウェアリソースの消耗を抑制することができる。また、前記機器の状態に応じて、前記機器の機能が過剰に制限されることを抑制しつつ、前記攻撃への前記インシデント対応を実施することも可能となる。
【0034】
また本開示に係るプログラムは、上記インシデント対応処理方法の各ステップを前記機器ネットワークに含まれる少なくとも1以上のコンピュータに実行させるためのプログラムであることを特徴としている。
【0035】
上記プログラムによれば、前記機器ネットワークに含まれる少なくとも1以上のコンピュータに、前記攻撃情報に含まれる前記2以上の前記攻撃に対して、これら攻撃の前記機能制限のレベルと前記機器の状態とが考慮された適切な条件で前記インシデント対応を効率良く迅速に実施させることができる。上記プログラムは、記憶媒体に保存されたプログラムであってもよいし、通信ネットワークなどを介して転送可能なプログラムであってもよい。
【0036】
また本開示に係る記憶媒体は、上記インシデント対応処理方法の各ステップを前記機器ネットワークに含まれる少なくとも1以上のコンピュータに実行させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体であることを特徴としている。
【0037】
上記記憶媒体によれば、前記機器ネットワークに含まれる少なくとも1以上のコンピュータに前記プログラムを読み込ませて実行させることにより、前記攻撃情報に含まれる前記2以上の前記攻撃に対して、これら攻撃の前記機能制限のレベルと前記機器の状態とが考慮された適切な条件で前記インシデント対応を効率良く迅速に実施させることができる。
【図面の簡単な説明】
【0038】
【
図1】実施の形態に係るセキュリティ装置が適用された車載ネットワークシステムの概略ブロック図である。
【
図2】実施の形態に係るゲートウェイECUの機能構成例を示すブロック図である。
【
図3】攻撃情報取得部で取得される攻撃情報の一例と、機器情報取得部で取得される機器情報の一例とを説明するための図である。
【
図4】対応情報記憶部に記憶されている、攻撃の種別ごとの対応情報の一例を説明するための図である。
【
図5】実施条件記憶部に記憶されている、テーブル情報の一例を説明するための図である。
【
図6】攻撃例1~4における攻撃情報、実施条件、及びインシデント対応の内容を説明するためのテーブルである。
【
図7】実施の形態に係るゲートウェイECUを構成するセキュリティ制御部が行う処理動作を示す概略フローチャートである。
【
図8】実施の形態に係るゲートウェイECUを構成するセキュリティ制御部が行うインシデント対応処理動作を示すフローチャートである。
【発明を実施するための形態】
【0039】
以下、本発明に係るセキュリティ装置、インシデント対応処理方法、プログラム、及び記憶媒体の実施の形態を図面に基づいて説明する。
【0040】
[適用例]
図1は、実施の形態に係るセキュリティ装置が適用された車載ネットワークシステムの概略ブロック図である。
【0041】
車載ネットワーク2は、車両1に搭載された通信ネットワークシステムであり、OBDII(On-board diagnostics II)4、走行系ECU(Electronic Control Unit)群5、運転支援系ECU群6、ボディ系ECU群7、情報系ECU群8、及びゲートウェイECU10を含んで構成されている。本実施の形態における車載ネットワーク2は、CAN(Controller Area Network)プロトコルに従って通信するネットワークである。なお、車載ネットワーク2には、CAN以外の他の通信規格が採用されてもよい。また、走行系ECU群5、運転支援系ECU群6、ボディ系ECU群7、及び情報系ECU群8(以下、これらをまとめてECU群ともいう)は、車両1に搭載される制御装置の一例である。
【0042】
OBDII4、走行系ECU群5、運転支援系ECU群6、ボディ系ECU群7、及び情報系ECU群8は、それぞれ通信路であるバス3を介して、ゲートウェイECU10のCH1、CH2、CH3、CH4、及びCH5に接続されている。なお、ゲートウェイECU10の有するCH数は、この5つに限定されるものではない。また、
図1の例では、ECU群が機能系統ごとにゲートウェイECU10に接続されたセントラルゲートウェイ方式が採用されているが、ゲートウェイECU10の接続方式は、この方式に限定されず、各ECU群の間にゲートウェイECU10が設けられた方式などであってもよい。
【0043】
OBDII4は、故障診断、又は保守等を行うための診断器又はスキャンツールなどが接続されるポートを備えている診断用コネクタ装置の一例である。
【0044】
走行系ECU群5には、駆動系ECUと、シャーシ系ECUとが含まれている。駆動系ECUには、エンジン制御、モータ制御、燃料電池制御、EV(Electric Vehicle)制御、又はトランスミッション制御等の「走る」機能に関する制御ユニットが含まれている。シャーシ系ECUには、ブレーキ制御、又はステアリング制御等の「止まる、曲がる」機能に関する制御ユニットが含まれている。
【0045】
運転支援系ECU群6には、自動ブレーキ支援機能、車線維持支援機能(LKA/Lane Keep Assistともいう)、定速走行・車間距離支援機能(ACC/Adaptive Cruise Controlともいう)、前方衝突警告機能、車線逸脱警報機能、死角モニタリング機能、交通標識認識機能、ドライバモニタリング機能等、走行系ECU群5などとの連携により自動的に安全性の向上、又は快適な運転を実現する機能(運転支援機能、又は自動運転機能)に関する制御ユニットが少なくとも1つ以上含まれている。
【0046】
運転支援系ECU群6には、例えば、米国自動車技術会(SAE)が提示している自動運転レベルにおけるレベル1(ドライバ支援)、レベル2(部分的自動運転)、及びレベル3(条件付自動運転)の機能が装備されていてもよい。さらに、自動運転レベルのレベル4(高度自動運転)、レベル5(完全自動運転)の機能が装備されていてもよいし、またはレベル2、3のみの機能が装備されていてもよい。
【0047】
ボディ系ECU群7には、ドアロック、スマートキー、パワーウインドウ、エアコン、ライト、又はウインカ等の車体の機能に関する制御ユニットが少なくとも1つ以上含まれている。
【0048】
情報系ECU群8は、インフォテイメント装置、テレマティクス装置、又はITS(Intelligent Transport Systems)関連装置が含まれている。インフォテイメント装置には、カーナビゲーション装置、又はオーディオ機器などが含まれ、テレマティクス装置には、携帯電話網等へ接続するための通信ユニットなどが含まれている。ITS関連装置には、ETC(Electronic Toll Collection System)、又はITSスポットなどの路側機との路車間通信、若しくは車々間通信を行うための通信ユニットなどが含まれている。
【0049】
また、外部インターフェースがゲートウェイECU10に接続されてもよい。外部インターフェースには、例えば、Bluetooth(登録商標)、Wi-Fi(登録商標)、USB(Universal Serial Bus)ポート、又はメモリーカードスロットなどが含まれる。
【0050】
ゲートウェイECU10は、車載ネットワーク2に含まれる各ECU群との間で、CANプロトコルに従ってフレーム(メッセージ)の授受を行う機能を有し、本実施の形態に係るセキュリティ装置として機能する。
【0051】
ゲートウェイECU10は、車載ネットワーク2に発生した異常を検出し、検出した異常に基づいて攻撃(セキュリティ攻撃、又はサイバー攻撃ともいう)の種類を特定又は推定し、特定又は推定した攻撃に対するインシデント対応を速やかに実行する処理を行う。
【0052】
特に本実施の形態に係るゲートウェイECU10は、CH1~CH5のうちの一のバス3、又は一のECU群に対する攻撃に、2以上の攻撃が含まれている場合であっても、これら攻撃のインシデント対応による機能制限のレベルと、ECU群から取得した車両情報とを考慮して、2以上の攻撃に対するインシデント対応の処理順序などの実施条件を決定し、決定した実施条件に基づいて、2以上の攻撃に対するインシデント対応を迅速かつ効率よく実施する処理を行う。
これにより、車両1がセキュリティ攻撃を受けた場合であっても、車両1の機能が過剰に制限されることなく、換言すれば、車両1の利便性を損なくことなく、インシデント対応を実行することができ、車両1のユーザは、セキュリティ攻撃の脅威に対して不安を抱くことなく、安心して車両1に乗車することが可能となる。
【0053】
走行系ECU群5、運転支援系ECU群6、ボディ系ECU群7、及び情報系ECU群8、及びゲートウェイECU10は、1つ以上のプロセッサ、メモリ、及び通信モジュールなどを含むコンピュータ装置で構成されている。そして、各ECUに搭載されたプロセッサが、メモリに記憶されたプログラムを読み出し、プログラムを解釈し実行することで、各ECUで所定の制御が実行されるようになっている。
【0054】
[構成例]
図2は、実施の形態に係るゲートウェイECU10の機能構成例を示すブロック図である。
ゲートウェイECU10は、ゲートウェイ機能部11と、セキュリティ制御部12とを含んでいる。セキュリティ制御部12が、本実施の形態に係るセキュリティ装置の機能が実装される部分である。ゲートウェイECU10は、ハードウェアとして、プログラムが格納されるROM(Read Only Memory)、RAM(Random Access Memory)などを含むメモリ、該メモリからプログラムを読み出して実行するCPU(Central Processing Unit)などのプロセッサ、及び車載ネットワーク2に接続するための通信モジュールなどを含んで構成されている。
【0055】
ゲートウェイ機能部11は、各ECU群とバス3を介してフレーム(メッセージ)を転送する制御を行う機能を備えており、例えば、図示しないフレーム送受信部、フレーム解釈部、及びフレーム変換部など、車載ネットワーク2の各ECU群との間でCANプロトコルに従って相互通信するために必要な構成が含まれている。
【0056】
CANプロトコルにおけるフレームは、例えば、データフレーム、リモートフレーム、オーバーロードフレーム、及びエラーフレームを含んで構成されている。データフレームは、SOF(Start Of Frame)、ID、RTR(Remote Transmission Request)、IDE(Identifier Extension)、予約ビット、DLC(Data Length Code)、データフィールド、CRC(Cyclic Redundancy Check)シーケンス、CRCデリミタ(DEL)、ACK(Acknowledgement)スロット、ACKデリミタ(DEL)、及びEOF(End Of Frame)の各フィールドを含んで構成されている。
【0057】
セキュリティ制御部12は、攻撃特定推定部21、攻撃情報取得部22、機器情報取得部23、対応決定部24、対応実施部25、対応情報記憶部31、及び実施条件記憶部32を含んで構成されている。
【0058】
セキュリティ制御部12は、ハードウェアとして、上記各部で実行されるプログラムが格納されるROM、RAMなどを含むメモリ、該メモリからプログラムを読み出して実行するプロセッサなどを含んで構成され、これらハードウェアとプログラムとが協働することによって、上記各部の機能が実現されるようになっている。
【0059】
攻撃特定推定部21は、ゲートウェイ機能部11から取得したフレームに基づいて、車載ネットワーク2に発生した異常(フレーム異常、又はバス異常など)を検出し、検出された異常に対応する攻撃の種類を特定する処理を行う。また、攻撃特定推定部21は、攻撃の種類が特定できなかった(例えば、未知の攻撃であった)場合に、検出された異常に対応する攻撃の種類を推定する処理を行う。攻撃特定推定部21で特定又は推定された攻撃の情報が攻撃情報取得部22に送出される。
【0060】
フレーム異常は、例えば、フレームのID毎に設定されるRTR、DLC、ペイロード、受信周期などのパラメータを確認することで検出される。フレーム異常は、CAN信号単体での異常を表している。
また、バス異常は、例えば、CH1~CH5の各バス3のバス負荷率、バス状態(バスエラーの有無などの状態)、これらバス3に出現するIDなどのパラメータを確認することで検出される。バス異常は、CAN信号の状況的な異常を表している。
【0061】
攻撃の種類を特定する処理では、例えば、最初の異常を検出してから所定時間内に収集された異常のデータと、攻撃の種類ごとに予め保持されている異常検出パターン(複数の異常検出パラメータを含む)とを照合して、検出した異常に対応する攻撃の種類を特定する処理を行ってもよい。
また、攻撃の種別を推定する処理では、例えば、最初の異常を検出してから所定時間内に収集された異常のデータと、攻撃の種類ごとに予め保持されている攻撃推定パターン(複数の攻撃推定パラメータを含む)とを照合して、検出した異常に近しい攻撃の種類を推定する処理を行ってもよい。
【0062】
攻撃情報取得部22は、車載ネットワーク2に発生した異常に基づいて特定又は推定された攻撃の情報(攻撃情報)を取得する処理を行うものであり、本実施の形態では、攻撃特定推定部21で特定又は推定された攻撃情報を取得する処理を行う。そして攻撃情報取得部22で取得された攻撃情報が対応決定部24に送出される。
【0063】
なお、ゲートウェイECU10が、攻撃情報を取得する構成はこれに限定されない。例えば、別の実施の形態では、攻撃特定推定部21と同様の機能をクラウドコンピュータ上に設け、クラウドコンピュータ側で特定又は推定された攻撃情報を、外部の通信ネットワークを介した通信により取得する構成としてもよい。
【0064】
機器情報取得部23は、ゲートウェイECU10とバス3を介して接続された各ECU群のうちの少なくとも1以上のECU群の状態に関する情報(機器情報)を取得する処理を行う。いずれか1以上のECU群から取得する機器情報は、換言すれば、車両1の状態に関する情報(以下、車両情報ともいう)である。そして機器情報取得部23で取得された車両情報が対応決定部24に送出される。対応決定部24に送出される車両情報は、例えば、攻撃特定推定部21で異常のデータが収集された所定時間に対応する期間に取得された車両情報(換言すれば、攻撃を受けたタイミングでの車両情報)とすることができる。
【0065】
図3は、攻撃情報取得部22で取得される攻撃情報の一例と、機器情報取得部23で取得される車両情報の一例を説明するための図である。
攻撃情報には、少なくとも特定又は推定された攻撃の種類の情報が含まれ、さらに、攻撃されたCH(バス)、及び攻撃されたECUのうちの少なくともいずれかの情報が含まれてもよい。
【0066】
特定又は推定された攻撃の種類の情報には、「攻撃A」、「攻撃B」のように、1種類の攻撃が特定された場合の情報の他、「攻撃A、攻撃B、及び攻撃C」のように、複数の攻撃が特定された場合の情報、又は「攻撃A、攻撃B、又は攻撃C」のように、複数の攻撃が推定された(一意に特定できない)場合の情報などが含まれる。
【0067】
攻撃されたCH(バス)には、攻撃の対象となったCH1~CH5の情報が含まれる。
攻撃されたECUには、走行系ECU群5、運転支援系ECU群6、ボディ系ECU群7、情報系ECU群8、及びゲートウェイECU10のうち、攻撃を受けたと特定又は推定されたECUの情報が含まれる。なお、走行系ECU-1は、走行系ECU群5に含まれている一のECUを示している。また、ゲートウェイECU10に対する直接的な攻撃も含まれる。
【0068】
また、車両情報には、現在の車両1の状態(換言すれば、攻撃を受けたタイミングでの車両1の状態)に関する情報が含まれる。
例えば、手動運転中の状態を示す信号、運転支援(運転支援又は自動運転)中の状態を示す信号、リプログラミング中(ECUのプログラムを書換中)の状態を示す信号、又は駐車中の状態を示す信号などが含まれる。
【0069】
手動運転中の状態を示す信号には、例えば、走行系ECU群5又は運転支援系ECU群6から取得した手動運転モードを示す信号などが含まれる。
運転支援中の状態を示す信号には、例えば、運転支援系ECU群6から取得した運転支援モード又は自動運転モードを示す信号などが含まれる。
リプログラミング中の状態を示す信号には、例えば、プログラムの書き換えが実行されているECUから取得したリプログラミング中の信号などが含まれる。
駐車中の状態を示す信号には、例えば、ボディ系ECU群7から取得したスマートキーの状態を示す信号などが含まれる。
攻撃情報取得部22で取得された攻撃情報と、機器情報取得部23で取得された車両情報とが対応決定部24に送出される。
【0070】
対応決定部24は、攻撃情報取得部22で取得した攻撃情報と、対応情報記憶部31に記憶されている対応情報とに基づいて、攻撃情報に含まれる攻撃の種類に対して実施すべきインシデント対応を決定する処理を行う。対応決定部24で決定されたインシデント対応の情報が対応実施部25に送出される。
【0071】
また、対応決定部24は、取得した攻撃情報に、CH1~CH5のうち一のバス3又はECU群のうちの一のECUに対する2以上の攻撃の種別が含まれている場合、これら攻撃の機能制限のレベルと、機器情報取得部23で取得した機器情報とを考慮して、2以上の攻撃に対するインシデント対応の実施条件を決定する処理も行う。
【0072】
対応実施部25は、対応決定部24で決定されたインシデント対応を実施する。また、対応実施部25は、対応決定部24で決定された実施条件に基づいて、2以上の攻撃に対するインシデント対応を実施する。
【0073】
対応情報記憶部31は、攻撃の種類ごとに、実施すべきインシデント対応と該対応による機能制限のレベルとが紐付けられた情報(対応情報)が記憶されている。
図4は、対応情報記憶部31に記憶されている対応情報リストの一例を説明するための図である。
【0074】
図4に示す対応情報リストは、攻撃に関する情報と、実施する対応(インシデント対応)の内容と、該対応による機能制限レベルとが、攻撃の種類ごとに紐付けられたデータ構成となっている。
攻撃に関する情報には、攻撃種別と、攻撃の対象となったバスと、攻撃の対象となったECUとに関する情報が含まれている。
【0075】
攻撃種別の項目には、車載ネットワーク2において想定され得る攻撃の種類(攻撃A、B、・・・K、L・・)が記憶されている。これら攻撃の種類は、車載ネットワーク2のシステムに対する脅威分析(すなわち、ゲートウェイECU10、これに接続される走行系ECU群5、運転支援系ECU群6、ボディ系ECU群7、情報系ECU群8、及びOBDII4に接続される機器、その他、車載ネットワーク2に繋がる通信機器などについての脆弱性や脅威の分析)により抽出された既知の攻撃を表している。これら攻撃を抽出するための脅威分析の手法は特に限定されない。例えば、DFD(Date Flow Diagram)を用いた脅威抽出、STRIDEによる脅威分類、脅威ツリー、又はDREADによる脅威評価などの手法が採用され得る。これら攻撃(攻撃A、B、…、K、L…)には、例えば、不正利用、不正設定、不正中継、不正挿入、情報漏洩、Dos攻撃、メッセージ喪失、又は偽メッセージなどの攻撃が含まれる。
【0076】
バスの項目には、攻撃種別の項目に記憶された攻撃の対象となったバス(この場合、CH1~CH5のいずれか)の情報が記憶され、ECUの項目には、攻撃種別の項目に記憶された攻撃の対象となったECU(例えば、走行系ECU-1等)の情報が記憶されている。
【0077】
実施する対応の項目には、攻撃種別の項目に記憶された各攻撃に対処するために実施すべきインシデント対応の内容(対応A、B、…、K、L…)が記憶されている。これら対応(対応A、B、…、K、L…)には、例えば、バス遮断、メッセージ遮断、メッセージ破棄、代替メッセージ生成、再起動、又は再認証などの対応が含まれる。バス遮断には、両方向、転送先、又は転送元バスの遮断が含まれてもよい。メッセージ遮断には、両方向、転送先、又は転送元メッセージの遮断が含まれてもよい。
【0078】
機能制限レベルの項目には、実施すべきインシデント対応によって、ECUの機能が制限されるレベルを示す情報が記憶されている。ここでは、機能制限レベルの値が大きいほど、インシデント対応時におけるECUの機能の制限(換言すれば、縮退制御)が大きくなることを示している。
【0079】
図4に示す対応情報リストにおいて、例えば、攻撃Aは、CH2のバス3、走行系ECU-1に対する攻撃であり、攻撃Aに対するインシデント対応は対応Aであり、対応Aの機能制限レベルは5であることが紐付けて記憶されている。
【0080】
実施条件記憶部32には、攻撃の対象に含まれるバスの種類と、車両情報と、実施条件との関係を示すテーブル情報が記憶されている。
このテーブル情報は、対応決定部24において、攻撃情報取得部22から取得した攻撃情報に、一のバス3(CH1~CH5のいずれか)又は一のECU(ECU群に含まれるいずれかのECU)に対する2以上の攻撃(攻撃の種類)が含まれている場合に、これら攻撃に対するインシデント対応の実施条件を決定するために用いられる。
【0081】
図5は、実施条件記憶部32に記憶されているテーブル情報の一例を説明するための図である。
図5に示すテーブル情報は、攻撃の対象に含まれるバス(CH1~CH5)と、車両情報(手動運転中、運転支援中、リプログラミング中、駐車中、…)と、実施条件(機能制限レベルの昇順又は降順)との関係を示すデータ構成となっている。
【0082】
例えば、CH1に対する2以上の攻撃については、車両情報が、手動運転中、運転支援中、リプログラミング中、駐車中のいずれの状態であっても機能制限レベルの昇順にインシデント対応を実行するという実施条件が記憶されている。
【0083】
また、CH2又はCH4のバス3に対する2以上の攻撃については、車両情報が、手動運転中、運転支援中、又は駐車中である場合、機能制限レベルの降順にインシデント対応を実行するという実施条件が記憶され、車両情報が、リプログラミング中である場合、機能制限レベルの昇順にインシデント対応を実行するという実施条件が記憶されている。
【0084】
また、CH3のバス3に対する2以上の攻撃については、車両情報が、手動運転中、又は運転支援中である場合、機能制限レベルの降順にインシデント対応を実行するという実施条件が記憶され、車両情報が、リプログラミング中、又は駐車中である場合、機能制限レベルの昇順にインシデント対応を実行するという実施条件が記憶されている。
【0085】
また、CH5のバス3に対する2以上の攻撃については、車両情報が、手動運転中、リプログラミング中、又は駐車中である場合、機能制限レベルの昇順にインシデント対応を実行するという実施条件が記憶され、車両情報が、運転支援中である場合、機能制限レベルの降順にインシデント対応を実行するという実施条件が記憶されている。
【0086】
なお、インシデント対応の実施条件は、上記した機能制限レベルの昇順又は降順の他、機能制限レベルが所定レベル以上又は所定レベル以下のインシデント対応を実施する条件でもよいし、機能制限レベルが最も高いインシデント対応のみ実施する条件などでもよい。攻撃の対象となったバス3と、車両1の状態に関する車両情報とに応じて、これらの実施条件を組み合わせてもよい。
なお、本実施の形態では、対応情報記憶部31に記憶されている対応情報リストと、実施条件記憶部32に記憶されているテーブル情報とを別々に設けているが、これらを一つのデータベースにまとめてもよい。
【0087】
次に攻撃情報を取得した場合における、対応決定部24と、対応実施部25とで行われる処理例について説明する。
図6は、攻撃例1~4における攻撃情報、実施条件、及びインシデント対応の内容を説明するためのテーブルである。
【0088】
[攻撃例1]
対応決定部24は、攻撃情報(攻撃A、CH2、走行系ECU-1)を取得すると、対応情報記憶部31に記憶された対応情報リスト(
図4)を読み出し、この対応情報リストから攻撃種別が攻撃Aに紐付けられた、実施する対応(対応A)、及び機能制限レベル(5)の情報を抽出する。対応決定部24は、取得した攻撃情報に2以上の攻撃が含まれていないと判断すると、対応実施部25に対応Aを実行させるための実行命令を送る。
【0089】
対応実施部25は、対応決定部24から対応Aの実行命令を受け取ると、対応Aを実行する処理を行う。例えば、攻撃された走行系ECU-1、又はCH2のバス3に対して、メッセージ遮断、又はバス遮断など、対応Aに設定されたインシデント対応を実行する。
【0090】
[攻撃例2]
対応決定部24は、攻撃情報(攻撃F、CH4)を取得すると、対応情報記憶部31に記憶された対応情報リスト(
図4)を読み出し、この対応情報リストから攻撃種別が攻撃Fに紐付けられた、実施する対応(対応F)、及び機能制限レベル(2)の情報を抽出する。対応決定部24は、取得した攻撃情報に2以上の攻撃が含まれていないと判断すると、対応実施部25に対応Fを実行させるための実行命令を送る。
【0091】
対応実施部25は、対応決定部24から対応Fの実行命令を受け取ると、対応Fを実行する処理を行う。例えば、攻撃されたCH4のバス3に対して、バス遮断など、対応Fに設定されたインシデント対応を実行する。
【0092】
[攻撃例3]
対応決定部24は、攻撃情報(攻撃G又は攻撃J、CH3、運転支援系ECU-1)を取得すると、対応情報記憶部31に記憶された対応情報リスト(
図4)を読み出し、この対応情報リストから攻撃種別が攻撃Gと攻撃Jとに紐付けられた、実施する対応(対応Gと対応J)、及び機能制限レベル(3と1)の情報を抽出する。
【0093】
対応決定部24は、取得した攻撃情報に2以上の攻撃が含まれていると判断すると、機器情報取得部23から車両情報(例えば、リプログラミング中)を取得する。また、対応決定部24は、実施条件記憶部32に記憶されたテーブル情報(
図5)を読み出し、このテーブル情報から、攻撃対象のバス3と車両情報との関係に対応する、インシデント対応の実施条件を抽出する。
【0094】
この場合、攻撃対象のバス3はCH3、車両情報はリプログラミング(リプロ)中であるので、実施条件として機能制限レベル昇順が抽出される。
対応決定部24は、対応実施部25に、機能制限レベルが1の対応J、機能制限レベルが3の対応Gの順に、これらインシデント対応を実行させるための実行命令を送る。
【0095】
対応実施部25は、対応決定部24から実行命令を受け取ると、対応J、対応Gの順(機能制限レベルの昇順)にこれらインシデント対応を実行する処理を行う。例えば、攻撃されたCH3のバス3に接続された運転支援系ECU-1に対して、受信メッセージ破棄など、機能制限レベルが低い方の対応Jに設定されたインシデント対応を実行し、異常が改善されなければ、運転支援系ECU-1に対して、両方向メッセージ破棄など、機能制限レベルが高い方の対応Gに設定されたインシデント対応を実行する。
【0096】
このように、リプログラミング中に、例えば、CH3に対する2以上の攻撃が特定された場合、機能制限レベルが低い方のインシデント対応から実行することで、重複した対応を回避しつつ、また、ECUの機能が過剰に制限されることを抑制することができ、ECUの制御による車両1の利便性を損なわないようにインシデント対応を実行することが可能となる。
【0097】
[攻撃例4]
対応決定部24は、攻撃情報(攻撃D又は攻撃E、CH2、走行系ECU-2)を取得すると、対応情報記憶部31に記憶された対応情報リスト(
図4)を読み出し、この対応情報リストから攻撃種別が攻撃Dと攻撃Eとに紐付けられた、実施する対応(対応Dと対応E)、及び機能制限レベル(4と2)の情報を抽出する。
【0098】
対応決定部24は、取得した攻撃情報に2以上の攻撃が含まれていると判断すると、機器情報取得部23から車両情報(例えば、手動運転中)を取得する。また、対応決定部24は、実施条件記憶部32に記憶されたテーブル情報(
図5)を読み出し、このテーブル情報から、攻撃対象のバス3と、車両情報との関係に対応する、インシデント対応の実施条件を抽出する。
【0099】
この場合、攻撃対象のバス3はCH2、車両情報は手動運転中であるので、実施条件として機能制限レベル降順が抽出される。
対応決定部24は、対応実施部25に、機能制限レベルが4の対応D、機能制限レベルが2の対応Eの順に、これらインシデント対応を実行させるための実行命令を送る。
【0100】
対応実施部25は、対応決定部24から実行命令を受け取ると、対応D、対応Eの順(機能制限レベルの降順)にこれらインシデント対応を実行する処理を行う。例えば、攻撃されたCH2のバス3に対して、両方向バス遮断など、機能制限レベルが高い方の対応Dに設定されたインシデント対応を実行する。この場合、機能制限レベルが低い方の対応Eに設定されたインシデント対応は実行しないようにしてもよい。このように、機能制限レベルが高い方のインシデント対応から実行することで、重複した対応を回避しつつ、攻撃による被害の拡大を速やかに阻止することが可能となる。
【0101】
[動作例]
図7は、実施の形態に係るゲートウェイECU10を構成するセキュリティ制御部12が行う処理動作を示した概略フローチャートである。なお、本処理動作は、攻撃者により車載ネットワーク2に何らかのセキュリティ攻撃が実施され、ゲートウェイECU10の防御機能が破られた場合を想定している。
【0102】
まず、ステップS1では、セキュリティ制御部12は、車載ネットワーク2に異常が発生したか否かを判断し、異常が発生していないと判断すれば処理を終える一方、異常が発生したと判断すれば、ステップS2に処理を進める。
【0103】
ステップS2では、セキュリティ制御部12は、各ECU群から受信したフレーム又は各CHに接続されたバス3に発生した異常を検出する処理を行い、その後ステップS3に処理を進める。
【0104】
ステップS3では、セキュリティ制御部12は、受信したフレーム又はバス3に発生した所定期間の異常のデータ(すなわち、異常の検出結果)を収集する処理を行い、その後ステップS4に処理を進める。
【0105】
ステップS4では、セキュリティ制御部12は、収集された異常のデータを用いて、セキュリティ攻撃の種類を特定する処理を行い、また、攻撃の種類を特定できない場合に、その攻撃の種類を推定する処理を行い、その後ステップS5に処理を進める。
【0106】
ステップS5では、セキュリティ制御部12は、特定された攻撃の種類、又は推定された攻撃の種類に対応するインシデント対策を実施する処理を行い、その後処理を終える。
【0107】
図8は、実施の形態に係るゲートウェイECU10を構成するセキュリティ制御部12が行うインシデント対応処理動作を示したフローチャートである。本処理動作は、
図7のステップS5で行われるインシデント対応処理動作の一例である。
【0108】
まずステップS11では、セキュリティ制御部12は、攻撃情報取得部22として機能し、
図7のステップS4で特定又は推定された攻撃の情報(攻撃情報)を取得する処理を行い、ステップS12に処理を進める。攻撃情報には、少なくとも特定又は推定された攻撃の種類が含まれ、さらに、攻撃の対象となったCH(バス)、及び攻撃されたECUのうちの少なくともいずれかの情報が含まれてもよい。
【0109】
ステップS12では、セキュリティ制御部12は、機器情報取得部23として機能し、CH1~CH5のバス3を介して接続された各ECU群のうちの少なくとも1以上のECU群の状態に関する情報(すなわち、車両情報)を取得する処理を行い、ステップS13に処理を進める。
車両情報には、現在の車両1の状態(換言すれば、攻撃を受けたタイミングでの車両1の状態)に関する情報、例えば、
図3に示した、手動運転中の状態を示す信号、運転支援(運転支援又は自動運転)中の状態を示す信号、リプログラミング中(ECUのプログラムを書換中)の状態を示す信号、又は駐車中の状態を示す信号などが含まれている。
【0110】
ステップS13では、セキュリティ制御部12は、対応決定部24として機能し、S11で取得した攻撃情報に、CH1~CH5のうちの一のバス3またはECU群のうちの一のECUに対する2以上の攻撃が含まれているか否かを判断し、2以上の攻撃が含まれていないと判断すれば、ステップS14に処理を進める。
【0111】
ステップS14では、セキュリティ制御部12は、対応決定部24として機能し、対応情報記憶部31から対応情報リスト(
図4)を読み出し、この対応情報リストから、取得した攻撃情報に含まれる攻撃の種類に該当する対応情報(実施する対応、及び機能制限レベル)を抽出する処理を行い、ステップS15に処理を進める。
【0112】
ステップS15では、セキュリティ制御部12は、対応決定部24として機能し、抽出した対応情報に含まれるインシデント対応を実行させるための実行命令を対応実施部25に送る処理を行い、ステップS16に処理を進める。
【0113】
ステップS16では、セキュリティ制御部12は、対応実施部25として機能し、実行命令に基づいて、抽出した対応情報に含まれるインシデント対応を実行する処理を行い、その後処理を終える。
【0114】
一方、ステップS13において、2以上の攻撃が含まれていると判断すれば、ステップS17に処理を進める。
ステップS17では、セキュリティ制御部12は、対応決定部24として機能し、対応情報記憶部31に記憶された対応情報リスト(
図4)を読み出し、この対応情報リストから2以上の攻撃の種類に該当する対応情報(各攻撃の実施する対応、及び機能制限レベルの情報)を抽出する処理を行い、その後ステップS18に処理を進める。
【0115】
ステップS18では、セキュリティ制御部12は、対応決定部24として機能し、実施条件記憶部32に記憶されたテーブル情報(
図5)を読み出し、このテーブル情報から、攻撃対象のバス3と車両情報との関係に対応する、インシデント対応の実施条件を抽出する処理を行い、その後ステップS19に処理を進める。
【0116】
ステップS19では、セキュリティ制御部12は、対応決定部24として機能し、抽出した実施条件に基づいて、対応情報に含まれる2以上の攻撃に対するインシデント対応を実行させるための実行命令を対応実施部25に送る処理を行い、ステップS20に処理を進める。
【0117】
ステップS20では、セキュリティ制御部12は、対応実施部25として機能し、実行命令に基づき、抽出された対応情報に含まれる2以上の攻撃に対するインシデント対応を実施条件に基づいて実行する処理を行い、その後処理を終える。
【0118】
[作用・効果]
上記実施の形態に係るゲートウェイECU10によれば、攻撃情報取得部22で取得した攻撃情報に、2以上の攻撃が含まれている場合であっても、これら攻撃に対するインシデント対応に紐付けられた機能制限レベルと、機器情報取得部23で取得した車両情報とが考慮された、2以上の攻撃に対するインシデント対応の実施条件が決定され、決定された実施条件に基づいて、2以上の攻撃に対するインシデント対応が実施される。
【0119】
したがって、車両1単体で、攻撃情報に含まれる2以上の攻撃に対して、これら攻撃の機能制限レベルとECU群の状態(すなわち、車両情報)とが考慮された適切な条件でインシデント対応を効率良く迅速に実施することが可能となる。
【0120】
例えば、一のバス3又は一のECUに対する2以上の攻撃に対して、機能制限レベルの降順に(換言すれば、機能制限が大きい方の対応から順に)、インシデント対応を実行させたり、機能制限レベルの昇順に(換言すれば、機能制限が小さい方の対応から順に)、インシデント対応を実行させたりすることが可能となる。したがって、車両1の状態に適した順番でインシデント対応を実行することができる。
【0121】
一例として、攻撃の対象となったバス3又はECUの状態が、緊急性が高い状態である場合、機能制限レベルの降順にインシデント対応を実行することで、重複した対応を回避しつつ、攻撃による被害の拡大を速やかに阻止することが可能となる。
また、攻撃の対象となったバス3又はECUの状態が、緊急性がさほど高くない状態である場合、機能制限レベルの昇順にインシデント対応を実行することで、重複した対応を回避しつつ、また、ECUの機能が過剰に制限されることを抑制することができ、ECUの制御による車両1の利便性を損なわないようにインシデント対応を実行することが可能となる。
【0122】
なお、2以上の攻撃に対して、機能制限レベルが高い方のインシデント対応を実行させたり、機能制限レベルが低い方のインシデント対応を実行させたりしてもよく、これによって、ECUの状態に適した方のインシデント対応を優先的に実行することができる。
【0123】
このように、一のバス3又は一のECUに対する2以上の攻撃に対して、重複した対応など、必要以上に過剰な対応を実施しないようにすることが可能となり、ハードウェアリソースの消耗を抑制することができる。また、車両1の状態に応じて、ECU群の機能が過剰に制限されることを抑制しつつ、攻撃へのインシデント対応を実施することも可能となる。
したがって、車両1のユーザは、セキュリティの脅威に対して不安を抱くことなく、より安心して、快適に(すなわち、利便性が損なわれることなく)、車両1に乗車することができる。
【0124】
また実施条件記憶部32に記憶されているテーブル情報には、CH1~CH5のバス3の種別と、車両情報と、実施条件(機能制限レベルの昇順又は降順など)との関係が記憶されているので、対応決定部24がテーブル情報を用いることで、攻撃の対象となった一のバス3と、ECU群から取得した車両情報とに対応する実施条件を効率良く決定することができ、処理の高速化を図ることができる。
【0125】
[変形例]
以上、本発明の実施の形態を詳細に説明したが、前述までの説明はあらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく、種々の改良や変更を行うことができることは言うまでもない。
【0126】
例えば、ゲートウェイECU10に実装されたセキュリティ制御部12を、他のECUに搭載してもよいし、セキュリティ制御部12が装備されたセキュリティECUを車載ネットワーク2に接続する構成としてもよい。
【0127】
また別の実施の形態に係るゲートウェイECU10では、セキュリティ制御部12において、車載ネットワーク2に接続された情報系ECU群8に含まれる報知装置を介して車内の乗員に、決定されたインシデント対応に応じて、異常が発生したこと、攻撃が発生したことを報知したり、適切な運転操作、縮退運転の開始、継続、復帰、又は解除、異常発生後の対応などを報知したりする報知処理部をさらに備えてもよい。
【0128】
このような報知装置には、ナビゲーション装置、又はオーディオ機器などが適用され得る。係る構成によれば、前記報知処理部によって、報知装置を介して車内の乗員に異常などを報知することが可能となるので、乗員に、異常又は攻撃などに対して適切な対応を実施させることが可能となる。
【0129】
また別の実施の形態に係るゲートウェイECU10では、セキュリティ制御部12において、車載ネットワーク2に接続された情報系ECU群8に含まれるテレマティクス装置、又はITS関連装置を介して車外に、上記した異常の発生又は攻撃の発生などを通報する通報処理部をさらに備えてもよい。係る構成によれば、前記通報処理部によって、テレマティクス装置、又はITS関連装置を介して車外に異常の発生又は攻撃の発生などを通報することが可能となる。したがって、例えば、周辺の他車、インフラ設備、ディーラー、メーカー、又は公的機関に、異常又は攻撃の発生などの発生を知らせることができ、車外から異常又は攻撃に対して適切な対応を実施することも可能となる。
【0130】
また、上記実施の形態では、車載ネットワーク2に接続されたゲートウェイECU10に本発明に係る技術が適用された例を説明した。車載ネットワーク2は、本発明に係る技術が適用される機器ネットワークの一例である。本発明に係る技術は、他の機器ネットワーク、例えば、FA(Factory Automation)システムを構成する1以上の産業機器が通信路を介して接続された産業機器ネットワーク、家庭用機器が接続されたホーム機器ネットワーク、又は事務用機器が接続された事務機器ネットワークなどに含まれるセキュリティ装置にも適用可能である。例えば、
図1~
図8を用いて説明した車載ネットワーク2への適用例を、産業機器ネットワーク、ホーム機器ネットワーク、又は事務機器ネットワークに置き換えて適用することが可能である。
【0131】
上記のFAシステムには、例えば、各種物品の搬送システム、検査システム、ロボットを用いた組立システムなどが含まれる。また、これらFAシステムを構成する産業機器に搭載される制御機器には、例えば、プログラマブルコントローラ、モーション位置制御コントローラ、フィールドネットワーク機器、無線機器、センサ、アクチュエータ、ロボット、HMI機器、及びデータ収集機器のうちの少なくとも1つが含まれてもよい。そして、FAシステムに装備されるセキュリティ装置が上記した産業機器から取得する機器情報には、上記産業機器の運用フェーズである、立ち上げ中、通常稼動中、一時停止中、停止中、及びリプログラミング中のうちの少なくとも1つの運用フェーズに関する情報が含まれてもよい。また、FAシステムにおいて各種の制御装置を接続する通信路は、有線でもよいし、無線でもよい。また、機器ネットワークにおける通信プロトコルはCANプロトコルに限定されない。前記通信プロトコルは、例えば、FAシステムに用いられるCANOpen、又は他の派生的なプロトコルなどであってもよい。
【産業上の利用可能性】
【0132】
本発明は、車載機器、又は産業機器などの1以上の機器が通信路を介して接続された機器ネットワークに発生した攻撃に対するインシデント対応を実行するセキュリティ装置関連の産業分野において広く利用することができる。
【0133】
[付記]
本発明の実施の形態は、以下の付記の様にも記載され得るが、これらに限定されない。
(付記1)
1以上の機器(4、5、6、7、8)が通信路(3)を介して接続された機器ネットワーク(2)に含まれるセキュリティ装置(10)であって、
前記機器ネットワーク(2)に発生した異常に基づいて特定又は推定された攻撃の情報(以下、攻撃情報という)を取得する攻撃情報取得部(22)と、
前記機器の状態に関する情報(以下、機器情報という)を取得する機器情報取得部(23)と、
前記攻撃の種類ごとに、インシデント対応と該対応による機能制限のレベルとが紐付けられた情報(以下、対応情報という)が記憶される対応情報記憶部(31)と、
取得した前記攻撃情報と前記対応情報とに基づいて、前記攻撃情報に含まれる前記攻撃に対して実施すべき前記インシデント対応を決定する対応決定部(24)と、
決定された前記インシデント対応を実施する対応実施部(25)とを備え、
前記対応決定部(24)が、
取得した前記攻撃情報に、一の通信路又は一の機器に対する2以上の前記攻撃が含まれている場合、これら攻撃の前記機能制限のレベルと、取得した前記機器情報とを考慮して、前記2以上の前記攻撃に対する前記インシデント対応の実施条件を決定するものであり、
前記対応実施部(25)が、
決定された前記実施条件に基づいて、前記2以上の前記攻撃に対する前記インシデント対応を実施するものであることを特徴とするセキュリティ装置(10)。
【0134】
(付記2)
1以上の機器(4、5、6、7、8)が通信路(3)を介して接続された機器ネットワーク(2)に含まれる少なくとも1以上のコンピュータ(12)が実行するインシデント対応処理方法であって、
前記機器ネットワーク(2)に発生した異常に基づいて特定又は推定された攻撃の情報(以下、攻撃情報という)を取得する攻撃情報取得ステップ(S11)と、
前記機器の状態に関する情報(以下、機器情報という)を取得する機器情報取得ステップ(S12)と、
取得した前記攻撃情報、及び前記攻撃の種類ごとに、インシデント対応と該対応による機能制限のレベルとを紐付けて記憶された情報(以下、対応情報という)に基づいて、前記攻撃情報に含まれる前記攻撃に対して実施すべき前記インシデント対応を決定する対応決定ステップ(S14-S15、S17-S19)と、
決定された前記インシデント対応を実施する対応実施ステップ(S16、S20)とを含み、
前記対応決定ステップが、
取得した前記攻撃情報に、一の通信路又は一の機器に対する2以上の前記攻撃が含まれている場合、これら攻撃の前記機能制限のレベルと、取得した前記機器情報とを考慮して、前記2以上の前記攻撃に対する前記インシデント対応の実施条件を決定するステップ(S18)を含み、
前記対応実施ステップが、
決定された前記実施条件に基づいて、前記2以上の前記攻撃に対する前記インシデント対応を実施するステップ(S20)を含むことを特徴とするインシデント対応処理方法。
【符号の説明】
【0135】
1 車両
2 車載ネットワーク(機器ネットワーク)
3 バス
4 OBDII
5 走行系ECU群
6 運転支援系ECU群
7 ボディ系ECU群
8 情報系ECU群
10 ゲートウェイECU(セキュリティ装置)
11 ゲートウェイ機能部
12 セキュリティ制御部
21 攻撃特定推定部
22 攻撃情報取得部
23 機器情報取得部
24 対応決定部
25 対応実施部
31 対応情報記憶部
32 実施条件記憶部