(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024178760
(43)【公開日】2024-12-25
(54)【発明の名称】ログ判定装置、ログ判定方法、ログ判定プログラム、ログ判定補助装置、ログ判定補助方法、及びログ判定補助プログラム
(51)【国際特許分類】
G06F 21/55 20130101AFI20241218BHJP
【FI】
G06F21/55 320
【審査請求】未請求
【請求項の数】21
【出願形態】OL
(21)【出願番号】P 2023097145
(22)【出願日】2023-06-13
(71)【出願人】
【識別番号】000004260
【氏名又は名称】株式会社デンソー
(74)【代理人】
【識別番号】230120499
【弁護士】
【氏名又は名称】藤江 和典
(74)【代理人】
【識別番号】100201385
【弁理士】
【氏名又は名称】中安 桂子
(72)【発明者】
【氏名】村上 亮介
(72)【発明者】
【氏名】稲垣 徳也
(72)【発明者】
【氏名】川上 達郎
(57)【要約】 (修正有)
【課題】サイバー攻撃の検出処理に用いる判断基準を動的に変化させることにより、車両の状況に応じた攻撃検出処理を行うログ判定装置、方法及びプログラムを提供する。
【解決手段】ログ判定装置100は、危険度決定部、判定基準設定部、ログ取得部、攻撃判定部及び判定結果送信部を備える。危険度決定部は、移動体の状態に基づいて移動体に搭載された電子制御システムが攻撃を受ける危険度を決定する。判定基準設定部は、危険度に基づいて電子制御システムが攻撃を受けたか否かを判定する基準となる判定基準を設定する。ログ取得部は、電子制御システムが有するセンサが異常を検知した場合にセンサが生成する異常ログを取得する。攻撃判定部は、前定基準設定部が設定した判定基準及び異常ログを用いて、電子制御システムが攻撃を受けたか否かを判定する。判定結果送信部は、攻撃判定部による判定結果を移動体の外部に送信する。
【選択図】
図4
【特許請求の範囲】
【請求項1】
移動体に搭載されたログ判定装置(100,200)であって、
前記移動体の状態に基づいて前記移動体に搭載された電子制御システムが攻撃を受ける危険度を決定する危険度決定部(102)と、
前記危険度に基づいて、前記電子制御システムが攻撃を受けたか否かを判定する基準となる判定基準を設定する判定基準設定部(103)と、
前記電子制御システムが有するセンサが異常を検知した場合に前記センサが生成する異常ログを取得するログ取得部(104)と、
前記判定基準設定部が設定した前記判定基準及び前記異常ログを用いて、前記電子制御システムが攻撃を受けたか否かを判定する攻撃判定部(108)と、
前記攻撃判定部による判定結果を前記移動体の外部に送信する判定結果送信部(109)と、
を備える、ログ判定装置。
【請求項2】
当該ログ判定装置はさらに、前記電子制御システムが特定の攻撃を受けた場合に前記センサが生成することが予測される複数の予測異常ログの組み合わせと、前記特定の攻撃を示す攻撃種別と、の対応関係を示す予測テーブルを保存する予測テーブル保存部(107)を備え、
前記攻撃判定部は、前記予測テーブルを用いて前記攻撃を受けたか否かを判定する、
請求項1記載のログ判定装置。
【請求項3】
前記予測テーブル保存部は、前記危険度に応じた複数の予測テーブルを保存しており、
前記判定基準設定部は、前記危険度に基づいて、前記複数の予測テーブルのうち一の予測テーブルを、前記攻撃判定部が使用する判定基準として決定し、設定する、
請求項2記載のログ判定装置(100)。
【請求項4】
前記複数の予測テーブルのうち第1の危険度に対応する第1の予測テーブルは、前記第1の危険度よりも低い第2の危険度に対応する第2の予測テーブルよりも多い前記対応関係を有する、
請求項3記載のログ判定装置。
【請求項5】
前記複数の予測テーブルのうち第1の危険度に対応する第1の予測テーブルの一の攻撃種別と対応付けられる前記複数の予測異常ログの数は、前記第1の危険度よりも低い第2の危険度に対応する第2の予測テーブルの前記一の攻撃種別と対応付けられる前記複数の予測異常ログの数よりも少ない、
請求項3記載のログ判定装置。
【請求項6】
前記攻撃判定部は、前記異常ログと、前記複数の予測異常ログの組み合わせとの一致率が閾値以上の場合に前記電子制御システムが攻撃を受けたと判定し、
前記判定基準設定部は、前記危険度が第1の危険度の場合に、前記第1の危険度よりも低い第2の危険度の場合と比較して前記閾値が低くなるように前記判定基準である前記閾値を設定する、
請求項2記載のログ判定装置。
【請求項7】
前記攻撃判定部は、前記センサが前記異常を検知した回数が閾値以上の場合に前記電子制御システムが攻撃を受けたと判定し、
前記判定基準設定部は、前記危険度が第1の危険度の場合に、前記第1の危険度よりも低い第2の危険度の場合と比較して前記閾値が低くなるように前記判定基準である前記閾値を設定する、
請求項1記載のログ判定装置。
【請求項8】
前記攻撃判定部は、前記異常を検知した前記センサの数が閾値以上の場合に前記電子制御システムが攻撃を受けたと判定し、
前記判定基準設定部は、前記危険度が第1の危険度の場合に、前記第1の危険度よりも低い第2の危険度の場合と比較して前記閾値が低くなるように前記判定基準である前記閾値を設定する、
請求項1記載のログ判定装置。
【請求項9】
前記攻撃判定部は、前記危険度に基づいて、前記攻撃判定部が前記攻撃を受けたか否かを判定する頻度を制御する、
請求項1記載のログ判定装置。
【請求項10】
当該ログ判定装置はさらに、
前記ログ取得部が取得した前記異常ログを保存するログ保存部(105)と、
前記危険度に基づいて、前記ログ保存部に保存する前記異常ログのデータ量を制御するメモリ制御部(106)と、を備える、
請求項1記載のログ判定装置。
【請求項11】
前記危険度決定部は、前記移動体の位置に基づいて前記危険度を決定する、
請求項1、9又は10記載のログ判定装置。
【請求項12】
前記危険度決定部は、前記移動体の移動速度に基づいて前記危険度を決定する、
請求項1、9又は10記載のログ判定装置。
【請求項13】
前記移動体は車両であり、
前記危険度決定部は、前記車両が自動運転車両であるか否かに基づいて前記危険度を決定する、
請求項1、9又は10記載のログ判定装置。
【請求項14】
前記攻撃判定部はさらに、前記電子制御システムが前記攻撃を受けた確度を算出し、
前記判定結果出力部は、前記判定結果に加えて、前記確度を出力する、
請求項1記載のログ判定装置。
【請求項15】
前記判定結果送信部は、前記攻撃判定部が前記攻撃を受けたと判定した場合に前記判定結果を送信する、
請求項1記載のログ判定装置。
【請求項16】
当該ログ判定装置はさらに、
前記危険度決定部が決定した前記危険度を、前記移動体の外部に位置する外部装置に送信する危険度送信部(211)と、
前記外部装置から、前記危険度送信部が送信した前記危険度に対応する判定基準を受信する判定基準受信部(212)と、
を備え、
前記判定基準設定部は、前記攻撃判定部が使用する判定基準を、前記判定基準受信部が受信した前記判定基準に設定する、
請求項1記載のログ判定装置(200)。
【請求項17】
移動体に搭載されたログ判定装置(300)と接続された、前記移動体の外部に設けられるログ判定補助装置(350)であって、
前記ログ判定装置から、前記移動体の状態を示す移動体情報を受信する移動体情報受信部(351)と、
前記移動体情報に基づいて、前記移動体に搭載された電子制御システムが攻撃を受ける危険度を決定する危険度決定部(356)と、
前記危険度に基づいて、前記電子制御システムが前記攻撃を受けたか否かを判定する基準となる判定基準を決定する判定基準決定部(354)と、
前記判定基準決定部が決定した前記判定基準を前記ログ判定装置に送信する判定基準送信部(355)と、
を備え、
前記ログ判定装置は、前記ログ判定補助装置から送信された前記判定基準、及び前記電子制御システムが有するセンサが異常を検知した場合に前記センサが生成する異常ログを用いて、前記電子制御システムが攻撃を受けたか否かを判定する、
ログ判定補助装置。
【請求項18】
移動体に搭載されたログ判定装置で実行されるログ判定方法であって、
前記移動体の状態に基づいて前記移動体に搭載された電子制御システムが攻撃を受ける危険度を決定し(S101)、
前記危険度に基づいて、前記電子制御システムが攻撃を受けたか否かを判定する基準となる判定基準を設定し(S103,S204)、
前記電子制御システムが有するセンサが異常を検知した場合に前記センサが生成する異常ログを取得し(S111)、
設定した前記判定基準及び前記異常ログを用いて、前記電子制御システムが攻撃を受けたか否かを判定し(S112)、
前記攻撃を受けたか否かの判定結果を前記移動体の外部に送信する(S114)、
ログ判定方法。
【請求項19】
移動体に搭載されたログ判定装置で実行可能なログ判定プログラムであって、
危険度を決定し(S101)、
前記危険度に基づいて、前記電子制御システムが攻撃を受けたか否かを判定する基準となる判定基準を設定し(S103,S204)、
前記電子制御システムが有するセンサが異常を検知した場合に前記センサが生成する異常ログを取得し(S111)、
設定した前記判定基準及び前記異常ログを用いて、前記電子制御システムが攻撃を受けたか否かを判定し(S112)、
前記攻撃を受けたか否かの判定結果を前記移動体の外部に送信する(S114)、
ログ判定プログラム。
【請求項20】
移動体に搭載されたログ判定装置と接続された、前記移動体の外部に設けられるログ判定補助装置で実行されるログ判定補助方法であって、
前記ログ判定装置から、前記移動体の状態を示す移動体情報を受信し(S351)、
前記移動体情報に基づいて、前記移動体に搭載された電子制御システムが攻撃を受ける危険度を決定し(S352)、
前記危険度に基づいて、前記電子制御システムが前記攻撃を受けたか否かを判定する基準となる判定基準を決定し(S353)、
決定した前記判定基準を前記ログ判定装置に送信し(S354)、
前記ログ判定装置は、前記ログ判定補助装置から送信された前記判定基準、及び前記電子制御システムが有するセンサが異常を検知した場合に前記センサが生成する異常ログを用いて、前記電子制御システムが攻撃を受けたか否かを判定する、
ログ補助判定方法。
【請求項21】
移動体に搭載されたログ判定装置と接続された、前記移動体の外部に設けられるログ判定補助装置で実行可能なログ判定補助プログラムであって、
前記ログ判定装置から、前記移動体の状態を示す移動体情報を受信し(S351)、
前記移動体情報に基づいて、前記移動体に搭載された電子制御システムが攻撃を受ける危険度を決定し(S352)、
前記危険度に基づいて、前記電子制御システムが前記攻撃を受けたか否かを判定する基準となる判定基準を決定し(S353)、
決定した前記判定基準を前記ログ判定装置に送信し(S354)、
前記ログ判定装置は、前記ログ判定補助装置から送信された前記判定基準、及び前記電子制御システムが有するセンサが異常を検知した場合に前記センサが生成する異常ログを用いて、前記電子制御システムが攻撃を受けたか否かを判定する、
ログ判定補助プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、主に自動車をはじめとする移動体に搭載された電子制御システムに発生した異常を示すログを判定するログ判定装置、ログ判定装置で実行される方法並びにプログラム、ログ判定装置におけるログ判定を補助するログ判定補助装置、及びログ判定補助装置で実行される方法並びにプログラムに関する。
【背景技術】
【0002】
近年、車車間通信や路車間通信のようなV2Xをはじめ、運転支援や自動運転制御を行う技術が注目されている。これに伴い、車両が通信機能を備えるようになり、いわゆる車両のコネクティッド化が進んでいる。この結果、車両が不正アクセスといったサイバー攻撃を受ける可能性が増加している。そのため、車両に対するサイバー攻撃を分析して、その対応策を構築することが必要とされている。
【0003】
車両に発生した異常を検知して、検知した異常に基づいてサイバー攻撃を分析する手法として、様々なものがある。例えば、特許文献1には、検知した異常データを収集するとともに、異常が検出された項目の組み合わせと、攻撃毎に予め特定された異常検出パターンとを照合して、異常に対応する攻撃の種類を特定することが記載されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ここで、本発明者は、詳細な検討の結果、以下の課題を見出した。
従来の手法は、異常データに基づいて一律にサイバー攻撃の検出処理を実行していた。しかしながら、車両の状況によって、サイバー攻撃を受けやすい又は受けにくい場合や、サイバー攻撃を受けたときの影響が大きい又は少ない場合がある。特に、車両が攻撃による影響が大きい状況にある場合には、高い感度で攻撃を受けたことを検出して、攻撃の対応をすることが望ましい。そのため、車両の状況に応じてサイバー攻撃の検出処理を確実に行うことが必要とされる。
【0006】
そこで、本発明は、サイバー攻撃の検出処理に用いる判断基準を動的に変化させることにより、車両の状況に応じた攻撃検出処理を行うことを目的とする。
【課題を解決するための手段】
【0007】
本開示の一態様によるログ判定装置は、移動体に搭載されたログ判定装置(100,200)であって、前記移動体の状態に基づいて前記移動体に搭載された電子制御システムが攻撃を受ける危険度を決定する危険度決定部(102)と、前記危険度に基づいて、前記電子制御システムが攻撃を受けたか否かを判定する基準となる判定基準を設定する判定基準設定部(103)と、前記電子制御システムが有するセンサが異常を検知した場合に前記センサが生成する異常ログを取得するログ取得部(104)と、前記判定基準設定部が設定した前記判定基準及び前記異常ログを用いて、前記電子制御システムが攻撃を受けたか否かを判定する攻撃判定部(108)と、前記攻撃判定部による判定結果を前記移動体の外部に送信する判定結果送信部(109)と、を備える。
【0008】
本開示の他の態様によるログ判定補助装置は、移動体に搭載されたログ判定装置(300)と接続された、前記移動体の外部に設けられるログ判定補助装置(350)であって、前記ログ判定装置から、前記移動体の状態を示す移動体情報を受信する移動体情報受信部(351)と、前記移動体情報に基づいて、前記移動体に搭載された電子制御システムが攻撃を受ける危険度を決定する危険度決定部(356)と、前記危険度に基づいて、前記電子制御システムが前記攻撃を受けたか否かを判定する基準となる判定基準を決定する判定基準決定部(354)と、前記判定基準決定部が決定した前記判定基準を前記ログ判定装置に送信する判定基準送信部(355)と、を備え、前記ログ判定装置は、前記ログ判定補助装置から送信された前記判定基準、及び前記電子制御システムが有するセンサが異常を検知した場合に前記センサが生成する異常ログを用いて、前記電子制御システムが攻撃を受けたか否かを判定する。
【0009】
なお、特許請求の範囲、及び本項に記載した発明の構成要件に付した括弧内の番号は、本発明と後述の実施形態との対応関係を示すものであり、本発明を限定する趣旨ではない。
【発明の効果】
【0010】
上述のような構成により、本開示のログ判定装置等によれば、車両が攻撃を受ける危険度に基づいて攻撃を受けたか否かを判定する判定基準を動的に設定することにより、車両がサイバー攻撃を受ける危険度に応じて攻撃検出処理を行うことが可能となる。
【図面の簡単な説明】
【0011】
【
図1】各実施形態のログ判定装置並びにログ判定補助装置の配置及び関係する機器との関係を説明する説明図
【
図2】各実施形態のログ判定装置と電子制御システムとの関係を説明する説明図
【
図3】各実施形態の電子制御システムの構成例を説明する説明図
【
図4】実施形態1のログ判定装置の構成例を示すブロック図
【
図6】実施形態1の予測テーブルの一例を説明する図
【
図7】実施形態1の予測テーブルの一例を説明する図
【
図8】実施形態1の予測テーブルの一例を説明する図
【
図9】実施形態1のログ判定装置の動作を説明する図
【
図10】実施形態1のログ判定装置の動作を説明する図
【
図11】実施形態2のログ判定装置の構成例を示すブロック図
【
図12】実施形態2のログ判定補助装置の構成例を示すブロック図
【
図13】実施形態2のログ判定装置及びログ判定補助装置の動作を説明する図
【
図14】実施形態3のログ判定装置の構成例を示すブロック図
【
図15】実施形態3のログ判定補助装置の構成例を示すブロック図
【
図16】実施形態3のログ判定装置及びログ判定補助装置の動作を説明する図
【
図17】実施形態3の変形例のログ判定補助装置の構成例を説明する図
【発明を実施するための形態】
【0012】
以下、本発明の実施形態について、図面を参照して説明する。
【0013】
なお、本発明とは、特許請求の範囲又は課題を解決するための手段の項に記載された発明を意味するものであり、以下の実施形態に限定されるものではない。また、少なくともかぎ括弧内の語句は、特許請求の範囲又は課題を解決するための手段の項に記載された語句を意味し、同じく以下の実施形態に限定されるものではない。
【0014】
特許請求の範囲の従属項に記載の構成及び方法は、特許請求の範囲の独立項に記載の発明において任意の構成及び方法である。従属項に記載の構成及び方法に対応する実施形態の構成及び方法、並びに特許請求の範囲に記載がなく実施形態のみに記載の構成及び方法は、本発明において任意の構成及び方法である。特許請求の範囲の記載が実施形態の記載よりも広い場合における実施形態に記載の構成及び方法も、本発明の構成及び方法の例示であるという意味で、本発明において任意の構成及び方法である。いずれの場合も、特許請求の範囲の独立項に記載することで、本発明の必須の構成及び方法となる。
【0015】
実施形態に記載した効果は、本発明の例示としての実施形態の構成を有する場合の効果であり、必ずしも本発明が有する効果ではない。
【0016】
複数の実施形態がある場合、各実施形態に開示の構成は各実施形態のみで閉じるものではなく、実施形態をまたいで組み合わせることが可能である。例えば一の実施形態に開示の構成を、他の実施形態に組み合わせてもよい。また、複数の実施形態それぞれに開示の構成を集めて組み合わせてもよい。
【0017】
発明が解決しようとする課題に記載した課題は公知の課題ではなく、本発明者が独自に知見したものであり、本発明の構成及び方法と共に発明の進歩性を肯定する事実である。
【0018】
1.各実施形態の前提となる構成
(1)ログ判定装置の配置、及び関係する機器との関係
図1は、各実施形態のログ判定装置の配置を説明する図である。
図1に示すように、ログ判定装置100、ログ判定装置200、又は、ログ判定装置300(以下、これらを併せてログ判定装置100等とする。)は、「移動体」である車両に「搭載」されている。
【0019】
ここで、「移動体」とは、移動可能な物体をいい、移動速度は任意である。また移動体が停止している場合も当然含む。例えば、自動車、自動二輪車、自転車、歩行者、船舶、航空機、及びこれらに搭載される物を含み、またこれらに限らない。
「搭載」されたとは、車両に直接固定されている場合の他、車両に固定されていないが車両と共に移動する場合も含む。例えば、車両に乗った人が所持している場合、車両に載置された積荷に搭載されている場合、が挙げられる。
【0020】
ログ判定装置100等は、車両の外部に設けられた外部装置20と通信ネットワークを介して接続されている。外部装置20は、ログ判定装置100等によるログの判定結果を取得して、サイバー攻撃の詳細な分析等行う装置であり、例えば、サーバ装置や、SOC(Security Operation Center)等で実現される。
【0021】
ログ判定装置100等と外部装置20とは、例えば、IEEE802.11(Wi-Fi(登録商標))、IEEE802.16(WiMAX(登録商標))、W-CDMA(Wideband Code Division Multiple Access)、HSPA(High Speed Packet Access)、LTE(Long Term Evolution)、LTE-A(Long Term Evolution Advanced)、4G、5G等の無線通信方式といった通信ネットワークを介して接続されている。あるいは、DSRC(Dedicated Short Range Communication)を用いることができる。車両が駐車場に駐車されていたり、修理工場に収容されている場合は、無線通信方式に代えて、有線通信方式を用いることができる。例えば、LAN(Local Area Network)やインターネット、固定電話回線を用いることができる。
【0022】
ログ判定装置100等はさらに、ログ判定補助装置250、ログ判定補助装置350、又はログ判定補助装置450(以下、これらを併せてログ判定補助装置250等とする。)と接続されている。ログ判定補助装置250等は、後述する実施形態2、実施形態3、又はその変形例において、ログ判定装置のログ判定を補助するための装置である。ログ判定装置100等とログ判定補助装置250等とは、ログ判定装置100等と外部装置20と間の通信方式と同様の通信方式を用いて接続される。
【0023】
なお、後述する各実施形態では、外部装置20とログ判定補助装置250等は別の装置として示しているが、外部装置20とログ判定補助装置250等とは同じ装置であってもよい。
【0024】
図2は、各実施形態のログ判定装置100等と電子制御システムSの配置を説明する図である。各実施形態のログ判定装置100等は、電子制御システムSを構成する複数の電子制御装置10(以下、ECU(Electronic Control Unit)と称する)と接続されている。
【0025】
図2(a)は、ログ判定装置100等が電子制御システムSの内部に設けられている場合、
図2(b)は、ログ判定装置100が電子制御システムSの外部に設けられている場合、を示している。
図2(a)及び
図2(b)のいずれの場合も、ログ判定装置100等と複数のECU10とは、例えばCAN(Controller Area Network)、LIN(Local Interconnect Network)といった車載通信ネットワークを介して接続されている。あるいは、Ethernet(登録商標)、Wi-Fi(登録商標)、Bluetooth(登録商標)等、有線無線を問わず任意の通信方式を用いて接続されてもよい。
【0026】
(2)電子制御システムSの構成
図3は、電子制御システムSの構成例を示す図である。電子制御システムSは、複数のECU10、及びこれらを接続する車載ネットワークから構成されている。
図3は8つのECU(ECU10a~ECU10h)を例示しているが、当然のことながら、電子制御システムSは任意の数のECUから構成される。以後の説明では、単数又は複数の電子制御装置全体を包括して説明する場合はECU10や各ECU10、個々の電子制御装置を特定して説明する場合はECU10a、ECU10b、ECU10c、・・・のように記載する。
【0027】
図3に示す電子制御システムSは、統合ECU10a、外部通信ECU10b、ゾーンECU(10c、10d)、及び個別ECU(10e~10h)を含んでいる。各ECU10間は、ログ判定装置100等と複数のECU10との間と通信方式と同様の車載通信ネットワークを介して接続されている。
【0028】
統合ECU10aは、電子制御システムS全体を制御する機能を備えるとともに、各ECU間の通信を仲介するゲートウェイ機能を備えたECUである。統合ECU10aは、ゲートウェイECU(G-ECU)、モビリティコンピュータ(MC)と呼ばれることもある。また、統合ECU10aは、中継装置やゲートウェイ装置であってもよい。
【0029】
外部通信ECU10bは、車両の外部に設けられた外部装置20やログ判定補助装置250等と通信を行う通信部を有するECUである。外部通信ECU10bが用いる通信方式は、上述の無線通信方式や有線通信方式である。なお、複数の通信方式を実現するため、外部通信ECU10bを複数設けるようにしてもよい。また、外部通信ECU10bを設ける代わりに、統合ECU10aが外部通信ECUbの機能を内包してもよい。
【0030】
ゾーンECU(10c、10d)は、個別ECUが配置される場所や機能に基づいて適宜配置されたゲートウェイ機能を備えたECUである。例えば、ゾーンECU10cは、車両の前方に配置された個別ECU10e及び個別ECU10fと他のECU10との通信を仲介するゲートウェイ機能を有するECU、ゾーンECU10dは、車両の後方に配置された個別ECU10g及び個別ECU10hと他のECU10との通信を仲介するゲートウェイ機能を有するECU、である。
【0031】
個別ECU(10e~10h)は任意の機能を有するECUで構成することができる。例えば、エンジン、ハンドル、ブレーキ等の制御を行う駆動系電子制御装置、メータやパワーウインドウ等の制御を行う車体系電子制御装置、ナビゲーション装置等の情報系電子制御装置、あるいは、障害物や歩行者との衝突を防止するための制御を行う安全制御系電子制御装置が挙げられる。また、ECU同士が並列ではなく、マスタとスレーブとに分類されていてもよい。
【0032】
図3の電子制御システムSにおいて、ECU10h以外の各ECU10にセキュリティセンサが搭載されている(図中では、SSと省略して記載している)。このように、電子制御システムSを構成する全てのECU10にセキュリティセンサが搭載されている必要はない。セキュリティセンサは、ECUの動作やECU間の通信を監視し、何らかの異常を検知した場合にログを生成する。
図3では、各ECUが1つのセキュリティセンサを搭載しているように図示しているが、各ECUは後述するように複数のセキュリティセンサを搭載してもよい。以下、セキュリティセンサが生成するログを、異常ログと称する。セキュリティセンサが生成した異常ログは、車載ネットワークを介して、ログ判定装置100等に送信される。
【0033】
各実施形態において、ログ判定装置100等は、電子制御システムSの内部であって、統合ECU10aに設けられている場合を例として説明する。もっとも、ログ判定装置100等は、外部通信ECU10b、ゾーンECU(10c、10d)、又は個別ECU(10e~10h)に設けられていてもよい。個別ECU(10e~10h)の1つに設けられる場合は、ログ判定装置100等を実現する専用のECUとすることが望ましい。
【0034】
なお、電子制御システムSを構成する各ECU10のうち、外部通信ECU10bではないECU10がログ判定装置100等の機能を内包する場合、後述するログ判定装置等の受信部や送信部は、外部通信ECU10bを介して外部機器20やログ判定補助装置250等と通信を行う。
【0035】
2.実施形態1
(1)ログ判定装置100の構成
図4を参照して、本実施形態のログ判定装置100の構成を説明する。ログ判定装置100は、制御部101、ログ取得部104、ログ保存部105、予測テーブル保存部107、及び判定結果送信部109を備える。制御部101は、危険度決定部102、判定基準設定部103、メモリ制御部106、及び攻撃判定部108をハードウェア又は/及びソフトウェアで実現する。
【0036】
危険度決定部102は、車両である「移動体の状態」に基づいて車両に搭載された電子制御システムSが攻撃を受ける「危険度」を決定する。
【0037】
ここで、「移動体の状態」とは、移動体の内部の状態、移動体の外部の状態のいずれも含む。
また、「危険度」とは、危険の原因、対象、又は結果を質的又は量的に示すものである。例えば、攻撃が発生する確率や、攻撃によって生じる被害の大きさの程度を示すものであり、数値で示される場合の他、規格化された値や、記号や集合で示されるものであってもよい。
【0038】
危険度決定部102は、例えば、移動体の状態として車両の位置に基づいて危険度を決定する。サイバー攻撃は、エリアによって発生率が異なることがある。そのため、サイバー攻撃の発生率が高いエリアでは電子制御システムSが攻撃を受ける危険性が高く、発生率が低いエリアでは電子制御システムSが攻撃を受ける危険性は低い。そこで、危険度決定部102は、車両の現在位置に基づいて、電子制御システムSが攻撃を受ける危険度を決定する。車両の位置は、車両に搭載されたGPS(図示せず)から、外部通信ECU10bが通信に用いるIPアドレスから、あるいは、車両の外部から取得することができる。
【0039】
例えば、ログ判定装置100はエリア毎の危険度を示した危険度マップを予め保存しておき、危険度決定部102は車両の現在位置に対応する危険度マップが示す危険度を、電子制御システムSの危険度として決定する。
【0040】
危険度マップは、国毎、都道府県毎、又は数メートル乃至数キロメートルの範囲毎の危険度を示す地図である。
図5は危険度マップの一例を示している。
図5に示す例では、危険度が高中低の3段階に分類されているが、危険度は更に細かく分類されてもよい。
図5の例では、危険度が低いエリアがピンポイントで図示されている。例えば、ディーラや整備工場付近では、危険度が低く設定されてもよい。また、都心部では車両数が多いため、電子制御システムSがサイバー攻撃を受けたことによって車両が誤動作を引き起こした場合の危険度は高いといえる。そのため、都心部は郊外と比較して危険度が高く設定されてもよい。また、高速道路や交差点付近といったエリアでも、その他のエリアと比較して危険度が高く設定されてもよい。
【0041】
図5に示す危険度マップでは、危険度が高いエリアが2つ存在する。一方は、危険度が高Aに分類されるエリアであり、他方は危険度が高Bに分類されるエリアである。例えば、危険度が高Aに分類されるエリアは、駆動系ECUに対する攻撃が多く発生しており、駆動系ECUに対する危険度が高いエリアである。また、危険度が高Bに分類されるエリアは、車体系ECUに対する攻撃が多く発生しており、車体系ECUに対する危険度が高いエリアである。このように、危険度が量的に同じであっても、質的に異なる場合には、異なるエリアに分類されてもよい。なお、危険度が質的に異なる、とは、上述したように攻撃を受ける対象が異なる場合はもちろん、攻撃自体の種別が異なる場合も含む。
【0042】
なお、危険度決定部102は、車両の位置に代えて、あるいは、車両の位置に加えて、その他のパラメータに基づいて危険度を決定してもよい。例えば、危険度決定部102は、車両の移動速度、又は車両が自動運転車両か否かに基づいて危険度を決定してもよい。車両の移動速度が速い場合に電子制御システムSがサイバー攻撃を受けると、車両や乗員の安全性が損なわれる可能性が高い。同様に、車両がドライバによって手動で制御されている場合と比較して、車両が自動運転走行をしている場合に電子制御システムSがサイバー攻撃を受けると車両や乗員の安全性が損なわれる可能性が高い。そのため、車両の移動速度が速い場合や、車両が自動運転車両である場合の危険度は高いといえる。そこで、このような場合には、危険度決定部102は危険度が高いと判定する。危険度決定部102はさらに、その他のパラメータとして、車外の温度や、車両が走行している時間帯に基づいて危険度を決定してもよい。
【0043】
なお、自動運転車両とは、例えば、所定のレベルよりも高い自動運転が行われている状態の車両をいう。したがって、自動運転機能を有する車両であっても、乗員が手動で運転をしている場合には、自動運転車両に相当しなくともよい。また、車両の自動運転機能が有効になっている場合であっても、例えば、自動運転レベルが低い(例えば、運転支援を行う自動運転レベル1)場合には、自動運転車両に相当しなくともよい。さらに、危険度決定部102は、自動運転レベルに応じて危険度を決定してもよい。
【0044】
また、危険度決定部102は、車両の外部から取得した危険度情報に基づいて危険度を決定してもよい。例えば、危険度決定部102は、路側機から、当該路側機が位置するエリアの危険度を示す危険度情報を受信してもよい。この場合、危険度決定部102は、路側機から受信した危険度情報が示す危険度を、電子制御システムSが攻撃を受ける危険度として決定する。
【0045】
判定基準設定部103は、危険度決定部102が決定した危険度に基づいて、電子制御システムSが攻撃を受けたか否かを判定する基準となる判定基準を決定するとともに、決定した判定基準を後述する攻撃判定部108が攻撃判定に使用する判定基準に設定する。判定基準設定部103によって設定される判定基準の詳細は後述する。
【0046】
ログ取得部104は、各ECU10に搭載されたセキュリティセンサが生成した異常ログを取得する。
【0047】
ログ保存部105は、ログ取得部104が取得した異常ログを保存する。ログ保存部105は、外部記憶装置(ハードディスク、USBメモリ、CD/BD等)、又は内部記憶装置(RAM等)のいずれであってもよい。
【0048】
メモリ制御部106は、ログ保存部105を制御する。例えば、後述する攻撃判定部108が攻撃を受けたと判定した場合に、判定前及び判定後の所定の時間内にログ取得部104が取得した異常ログがログ保存部105に保存されるようにログ保存部105を制御する。
【0049】
予測テーブル保存部107は、後述する攻撃判定部108が攻撃判定に使用する予測テーブルを保存するメモリである。
図6は、予測テーブル保存部107に保存される予測テーブルの一例を示す図である。予測テーブルは、電子制御システムSが特定の攻撃を受けた場合に各セキュリティセンサが生成することが予測される複数の予測異常ログの組み合わせと、特定の攻撃の攻撃種別(例えば、攻撃A、攻撃B、・・・)と、の対応関係を示している。
図6に示す予測テーブルでは、例えば、電子制御システムSが攻撃Aを受けた場合に、ECU10bに搭載されたセキュリティセンサ1~3が異常を検知して異常ログを生成することが予測されることを示している。
【0050】
攻撃判定部108は、ログ取得部104が取得した異常ログを用いて、電子制御システムSが「攻撃を受けた」か否かを判定する。本実施形態の攻撃判定部108は、予測テーブル保存部107に保存されている予測テーブルとログ取得部104が取得した異常ログとを比較し、異常ログに対応する複数の予測異常ログの組み合わせが予測テーブルに含まれている場合には、電子制御システムSが攻撃を受けたと判定する。例えば、ログ取得部104が、ECU10bのセキュリティセンサ3が生成した異常ログ、及びECU10cのセキュリティセンサ1及びセキュリティセンサ2が生成した異常ログを取得している場合、これらの異常ログは、攻撃種別(A2)の予測異常ログの組み合わせと一致している。そのため、攻撃判定部108は、電子制御システムSが攻撃(攻撃種別A2)を受けたと判定する。
【0051】
ここで、「攻撃を受けた」とは、実際に攻撃を受けた場合はもちろん、攻撃を受けた可能性があり、攻撃を受けたと評価できる場合も含む。
【0052】
なお、攻撃判定部108は、異常ログと、予測テーブルに含まれる複数の予測異常ログの組み合わせとが完全に一致していなくとも、攻撃を受けたと判定してもよい。例えば、異常ログと、複数の予測異常ログの組み合わせとの一致率が閾値以上の場合に攻撃を受けたと判定してもよい。
【0053】
判定結果送信部109は、攻撃判定部108による判定結果を、車両の外部に位置する外部装置20に送信する。判定結果送信部109は、電子制御システムSが攻撃を受けたか否かを示す判定結果を送信してもよく、あるいは、攻撃判定部108が攻撃を受けたと判定した場合には、その判定に用いたログを併せて送信してもよい。また、判定結果送信部109は、攻撃判定部108が、電子制御システムSが攻撃を受けたと判定した場合に限り、判定結果を外部装置20に送信してもよい。
【0054】
次に、判定基準設定部103によって設定される判定基準について説明する。
【0055】
判定基準設定部103が決定して設定する判定基準は、例えば、攻撃判定部108が攻撃判定に使用する予測テーブルである。この場合、予測テーブル保存部107は、危険度に応じた複数の予測テーブルを予め保存しておく。判定基準設定部103は、予測テーブル保存部107に保存されている複数の予測テーブルのうち、危険度決定部102が決定した危険度に対応する一の予測テーブルを、攻撃判定部108が使用する予測テーブル、すなわち、判定基準として決定して設定する。
【0056】
図7は、危険度毎に異なる予測テーブルの一例を示す図である。
図7(a)は高い危険度(「第1の危険度」に対応)に対応する予測テーブル(「第1の予測テーブル」に対応)であり、
図7(b)は低い危険度(「第2の危険度」に対応)に対応する予測テーブル(「第2の予測テーブル」に対応)である。
図7(a)に示す予測テーブルが攻撃種別A1~An+1における予測異常ログの組み合わせを示しているのに対し、
図7(b)に示す予測テーブルは、攻撃種別A1~Anにおける予測異常ログの組み合わせを示している。すなわち、高い危険度に対応する予測テーブルは、低い危険度に対応する予測テーブルよりも多くの攻撃種別と予測異常ログの組み合わせとの対応関係を有している。
【0057】
危険度が高い場合には、攻撃を受けたことによって発生する被害を最小限に抑えるために、電子制御システムSが受けた攻撃を見落とすことなく、より確実に攻撃を受けたことを判定することが望ましい。そこで、
図7に示すように、危険度が高いほど、より多くの攻撃種別を判定することが可能な予測テーブルを使用する。
【0058】
図8は、危険度毎に異なる予測テーブルの別の例を示す図である。
図8(a)は高い危険度(「第1の危険度」に対応)に対応する予測テーブル(「第1の予測テーブル」に対応)であり、
図8(b)は低い危険度(「第2の危険度」に対応)に対応する予測テーブル(「第2の予測テーブル」に対応)である。
図8の例では、攻撃判定部108が判定できる攻撃の種別の数は、いずれの危険度においても同じである。しかしながら、
図8(a)と
図8(b)とでは、一の攻撃種別と対応付けられる予測異常ログの数が異なっている。例えば、
図8(a)の予測テーブルでは、攻撃種別A2と対応付けられる予測異常ログは、ECU10bのセキュリティセンサ3と、ECU10cのセキュリティセンサ1及び2が生成する予測異常ログである。これに対し、
図8(b)の予測テーブルでは、攻撃種別A2と対応付けられる予測異常ログは、ECU10bのセキュリティセンサ2及び3と、ECU10cのセキュリティセンサ1及び2が生成する予測異常ログである。すなわち、高い危険度に対応する予測テーブルにおいて、攻撃種別A2と対応付けられる予測異常ログの数は、低い危険度に対応する予測テーブルにおいて攻撃種別A2と対応付けられる予測異常ログの数よりも少ない。
【0059】
図7の例と同様、危険度が高い場合には、より確実に攻撃を受けたことを判定することが望ましい。そこで、危険度が高い場合には、異常を検知したセキュリティセンサの数が少なくても攻撃を検知することができるように、攻撃種別と対応付けられる予測異常ログの数が少ない予測テーブルを使用する。
【0060】
図7及び
図8では、危険度の高さに応じて、異なる予測テーブルを使用する例を説明した。しかしながら、危険度の高さが同じ場合であっても、危険度の種別が異なる場合には、異なる予測テーブルを使用してもよい。例えば、
図5に示す危険度マップのうち、危険度が高Aに分類されるエリアと、危険度が高Bに分類されるエリアとでは、異なる予測テーブルを使用してもよい。
【0061】
図7及び
図8では、判定基準設定部103が設定する判定基準が予測テーブルである場合を例に挙げて説明したが、判定基準は予測テーブルでなくともよい。例えば、異常ログと予測テーブルに含まれる複数の予測異常ログの組み合わせとの一致率の閾値を、判定基準として設定してもよい。攻撃判定部108は、異常ログと、予測テーブルに含まれる複数の予測異常ログの組み合わせとの一致率が閾値「以上」の場合に攻撃を受けたと判定する。この場合、判定基準設定部103は、危険度が高い(「第1の危険度」に対応)場合に、危険度が低い(「第2の危険度」)場合と比較して、一致率の閾値が低くなるように、判定基準である閾値を設定する。
【0062】
ここで、「以上」とは、比較対象と同じ値を含む場合及び含まない場合の両方が含まれる。
【0063】
一致率の閾値が低くなると、攻撃判定部108は、異常ログと複数の予測異常ログの組み合わせとが一部のみ一致している場合であっても攻撃を受けたと判定するため、より確実に攻撃を受けたことを判定できる可能性が高くなる。
【0064】
(2)ログ判定装置の動作
次に、
図9、
図10を参照して、ログ判定装置100の動作を説明する。
図9、
図10は、ログ判定装置100で実行されるログ判定方法を示すだけでなく、ログ判定装置100で実行可能なログ判定プログラムの処理手順を示すものでもある。そして、これらの処理は、
図9又は
図10に示した順序には限定されない。すなわち、あるステップでその前段のステップの結果を利用する関係にある等の制約がない限り、順序を入れ替えてもよい。後述する他の実施形態の
図13、
図16についても同様である。
【0065】
図9は、攻撃判定部108が使用する判定基準の設定に係る動作を説明する図である。
図9は、判定基準が予測テーブルである場合を例に挙げて説明しているが、上述したとおり、判定基準は予測テーブルに限定されるものではない。
【0066】
危険度決定部102は、電子制御システムSが攻撃を受ける危険度を決定する(S101)。
判定基準設定部103は、危険度に基づいて、電子制御システムSが攻撃を受けたか否かの判定基準である予測テーブルを決定する(S102)。
判定基準設定部103は、攻撃判定部108が使用する予測テーブルを、S102で決定した予測テーブルに設定する(S103)。
【0067】
次に、
図10を参照して、ログ判定装置100における攻撃判定に係る動作を説明する。
ログ取得部104は、電子制御システムSの各ECU10が有するセキュリティセンサが異常を検知した場合にセキュリティセンサが生成する異常ログを取得する(S111)。
攻撃判定部108は、
図9のS103で設定された判定基準、及び、S111で取得した異常ログを用いて、電子制御システムSが攻撃を受けたか否かの攻撃判定を行う(S112)。
ここで、攻撃判定部108が攻撃を受けたと判定した場合(S113:Y)、判定結果送信部109は、攻撃判定部108による判定結果を、外部装置20に送信する(S114)。
【0068】
(3)小括
以上、本実施形態によれば、車両に搭載された電子制御システムがサイバー攻撃を受ける危険度に基づいて攻撃か否かを判定する基準となる判定基準を設定することができる。これにより、危険度が高い場合には、異常ログに基づいて攻撃を検知できる可能性を高めて、攻撃の見落としを防ぐことが可能となる。
【0069】
3.変形例
(1)変形例1
実施形態1では、攻撃判定部108が予測テーブルを用いて攻撃判定を行う構成について説明した。しかしながら、攻撃判定部108は、予測テーブルを用いずに、別の手法によって電子制御システムSが攻撃を受けたか否かを判定してもよい。
【0070】
例えば、攻撃判定部108は、セキュリティセンサが異常を検知した回数が閾値以上の場合に攻撃を受けたと判定してもよい。この場合、判定基準設定部103は、危険度に基づいて、セキュリティセンサが異常を検知した回数の閾値を判定基準として決定する。
【0071】
具体的には、判定基準設定部103は、危険度が高い(「第1の危険度」に対応)場合に、危険度が低い(「第2の危険度」に対応)場合と比較して異常を検知した回数の閾値が低くなるように、判定基準である閾値を決定し、設定する。
【0072】
例えば、危険度が高いエリアでは閾値は10に、危険度が中程度のエリアでは閾値は50に、危険度が低いエリアでは閾値は100に、それぞれ設定する。この場合、セキュリティセンサが異常を検知した回数が30回である場合、攻撃判定部108は、危険度が低いエリア、又は中程度のエリアでは攻撃を受けたと判定しない一方、危険度が高いエリアでは攻撃を受けたと判定する。
【0073】
別の例として、攻撃判定部108は、異常を検知したセキュリティセンサの数が閾値以上の場合に攻撃を受けたと判定してもよい。この場合、判定基準設定部103は、危険度に基づいて、異常を検知したセキュリティセンサの数の閾値を判定基準として決定する。
【0074】
具体的には、判定基準設定部103は、危険度が高い(「第1の危険度」に対応)場合に、危険度が低い(「第2の危険度」に対応)場合と比較して異常を検知したセキュリティセンサの数の閾値が低くなるように、判定基準である閾値を決定し、設定する。
【0075】
例えば、危険度が高いエリアでは閾値は2に、危険度が中程度のエリアでは閾値は5に、危険度が低いエリアでは閾値は10に、それぞれ設定する。この場合、異常を検知したセキュリティセンサの数が4である場合、攻撃判定部108は、危険度が低いエリアでは攻撃を受けたと判定しない一方、危険度が中程度のエリア又は高いエリアでは攻撃を受けたと判定する。
【0076】
上述した変形例はいずれも、危険度が高いほど閾値が低くなるように判定基準を設定する。これにより、いずれの変形例においても、危険度が高いほど、攻撃判定部108が攻撃をより検知しやすくなり、攻撃の見落としを防ぐことが可能となる。
【0077】
(2)変形例2
上述した実施形態では、危険度に基づいて、攻撃判定部108が使用する判定基準を設定する構成を説明した。本変形例では、危険度に基づいて他の制御を行う構成を説明する。
【0078】
例えば、攻撃判定部108は、危険度決定部102が決定した危険度に基づいて、攻撃判定部103が攻撃を受けたか否かを判定する頻度を制御してもよい。具体的には、攻撃判定部108は、危険度が高い場合に、危険度が低い場合と比較して攻撃判定を行う頻度が高くなるように制御する。
【0079】
攻撃判定部108が周期的に攻撃判定を行う場合には、攻撃判定を行う時間周期を短くすることにより、攻撃判定を行う頻度を高くする。あるいは、攻撃判定部108が、ログ取得部104が所定の個数の異常ログを受信する毎に、あるいは、車両が所定の距離を走行する毎に攻撃判定を行う場合、所定の個数や所定の距離を少なく又は短くすることで、攻撃判定を行う頻度を高くしてもよい。
【0080】
危険度が高いほど、ログ判定装置100が攻撃判定を行う頻度を高くすることにより、危険度が高い状況で電子制御システムSが攻撃を受けた場合に、直ちに攻撃を検出することが可能となる。さらに、危険度が低い場合には、危険度が高い場合と比較して攻撃判定を行う頻度を低くすることにより、ログ判定装置100のCPUリソースの消費量を抑制することができる。
【0081】
別の例として、メモリ制御部106は、危険度決定部102が決定した危険度に基づいて、ログ保存部105に保存する異常ログのデータ量を制御してもよい。具体的には、メモリ制御部106は、危険度が高い場合に、危険度が低い場合と比較してログ保存部105により多くのデータ量の異常ログを保存するように制御する。
【0082】
電子制御システムSが受けたサイバー攻撃を分析に使用するために、攻撃を受けた前後に生成された異常ログは保存しておくことが望ましい。より多くの異常ログを保存することで、より詳細にサイバー攻撃を分析できる可能性がある。そこで、危険度が高い場合には、ログ保存部105に保存する異常ログのデータ量を増加させるように制御し、より多くの異常ログを蓄積することで、サイバー攻撃の分析に有用なログが廃棄されるのを防ぐことができる。
【0083】
(3)変形例3
本変形例では、攻撃判定部108が、電子制御システムSが攻撃を受けたか否かを判定することに加えて、電子制御システムSが攻撃を受けた可能性の度合いとして、攻撃「確度」を判定する構成を説明する。
【0084】
ここで、「確度」とは、攻撃を受けた確からしさの程度を示すものであれば足り、数値で示される場合の他、規格化された値や、記号や集合で示される場合も含む。
【0085】
攻撃判定部108は、例えば、異常ログと、予測テーブルに含まれる複数の予測異常ログの組み合わせとの一致率に基づいて攻撃確度を判定する。一例として、攻撃判定部108は、異常ログと複数の予測異常ログの組み合わせとの一致率が100%の場合には、確度が100%であると判定し、一致率が70%の場合には確度が70%であると判定する。
【0086】
なお、攻撃判定部108は、異常ログと複数の予測異常ログの組み合わせとの一致率以外を用いて、攻撃確度を判定することができる。例えば、予測テーブルを用いて攻撃判定を行う場合、予測テーブルに含まれる攻撃種別毎に、攻撃確度が対応付けられていてもよい。この場合、攻撃判定部108は、攻撃種別を判定する際に、併せて攻撃確度を判定することができる。予測テーブルに含まれる攻撃種別には、当該攻撃種別が示す攻撃が発生する可能性が高いものと、可能性が低いものとがある。そのため、攻撃種別A1の予測異常ログの組み合わせと完全に一致する異常ログを取得していても、そもそも攻撃種別A1の攻撃自体が極めて珍しい場合、攻撃種別A1が示す攻撃を受ける可能性は低い。そこで、上述したように、攻撃種別毎に予め攻撃確度を対応付けて、予測テーブルに保存しておくことにより、攻撃判定部108は攻撃確度を判定してもよい。
【0087】
また、上述した変形例1のように、セキュリティセンサが異常を検知した回数の閾値、又は、異常を検知したセキュリティセンサの数の閾値を用いて攻撃判定を行う場合にも、攻撃判定部108は攻撃確度を判定してもよい。例えば、攻撃判定部108は、閾値に対する、セキュリティセンサが異常を検知した回数又は異常を検知したセキュリティセンサの数の割合によって、攻撃確度を判定する。
【0088】
なお、攻撃確度は、数値(例えば、70%、100%等)によって表されてもよく、あるいは、高中低といった記号で表されてもよい。
【0089】
本変形例では、判定結果送信部109は、判定結果に加えて、攻撃判定部108が判定した攻撃確度を車両の外部に送信してもよい。
【0090】
なお、実施形態1に変形例1~3を適用する場合を例に挙げて説明したが、各変形例は後述する実施形態2又は実施形態3に適用してもよい。
【0091】
4.実施形態2
実施形態1では、ログ判定装置100の予測テーブル保存部107が予め複数の予測テーブルを保存しており、判定基準設定部103は、危険度に基づいて、複数の予測テーブルのうち一の予測テーブルを判定基準として決定して設定する構成を説明した。ところが、予測テーブルはデータ量が大きいため、車両に搭載された予測テーブル保存部107が複数の予測テーブルを保存する場合、車両に搭載されたメモリの容量を圧迫するおそれがある。
【0092】
そこで、本実施形態では、車両に搭載されたログ判定装置において危険度を判定し、危険度に応じた予測テーブルを車両の外部に位置するログ判定補助装置から取得する構成を説明する。
【0093】
(1)ログ判定装置200の構成
図11を参照して、本実施形態のログ判定装置200の構成を説明する。実施形態1のログ判定装置100と同じ構成については、
図4と同じ符号を付し、実施形態1の説明を引用する。ログ判定装置200は、制御部101、ログ取得部104、ログ保存部105、予測テーブル保存部107、判定結果送信部109、危険度送信部211、及び予測テーブル受信部212を備える。制御部101は、危険度決定部102、判定基準設定部103、メモリ制御部106、攻撃判定部108をハードウェア又は/及びソフトウェアで実現する。
【0094】
危険度送信部211は、危険度決定部102が決定した危険度を、外部装置であるログ判定補助装置250に送信する。
予測テーブル受信部212(「判定基準受信部」に相当)は、ログ判定補助装置250から送信された予測テーブル(「判定基準」に相当)を受信する。
予測テーブル保存部107は、予測テーブル受信部212が受信した予測テーブルを保存する。
判定基準設定部103は、予測テーブル受信部212が受信し、予測テーブル保存部107に保存された予測テーブルを、攻撃判定部108が判定基準として設定する。
【0095】
(2)ログ判定補助装置250の構成
図12を参照して、ログ判定補助装置250の構成を説明する。ログ判定補助装置250は、危険度受信部251、予測テーブル保存部252、制御部253、予測テーブル送信部255を備える。制御部253は判定基準決定部254をハードウェア又は/及びソフトウェアで実現する。
【0096】
危険度受信部251は、ログ判定装置200から送信された危険度を受信する。
【0097】
予測テーブル保存部252は、危険度に応じた複数の予測テーブルを保存するメモリである。実施形態1では、ログ判定装置100の予測テーブル保存部107が複数の予測テーブルを保存していたのに対し、本実施形態では、ログ判定補助装置250の予測テーブル保存部252が複数の予測テーブルを保存している。
【0098】
制御部253の判定基準決定部254は、予測テーブル保存部252が保存する複数の予測テーブルのうち、危険度受信部251が受信した危険度に対応する一の予測テーブルを、ログ判定装置200が攻撃判定に使用する予測テーブル、すなわち、判定基準として決定する。
【0099】
予測テーブル送信部255は、判定基準決定部254が決定した予測テーブルを、ログ判定装置200に送信する。
【0100】
(3)ログ判定装置200及びログ判定補助装置250の動作
次に、
図13を参照して、ログ判定装置200及びログ判定補助装置250の動作を説明する。ログ判定装置200の動作のうち、ログ判定装置100と同じ動作については
、
図9と同じ符号を付している。
【0101】
危険度決定部102は、電子制御システムSが攻撃を受ける危険度を決定する(S101)。
危険度送信部211は、S101で決定した危険度をログ判定補助装置250に送信する(S201)。
【0102】
ログ判定補助装置250の危険度受信部251は、ログ判定装置200から送信された危険度を受信する(S251)。
判定基準決定部254は、S251で受信した危険度に基づいて、電子制御システムSが攻撃を受けたか否かに使用する判定基準である予測テーブルを決定する(S252)。
予測テーブル送信部255は、S252で決定した予測テーブルを、ログ判定装置200に送信する(S253)。
【0103】
ログ判定装置200の予測テーブル受信部212は、S253で送信された予測テーブルを受信する(S202)。
予測テーブル保存部107は、S202で受信した予測テーブルを保存する(S203)。
そして、判定基準設定部103は、攻撃判定部108が使用する予測テーブルを、S202で受信し、S203で保存した予測テーブルに設定する(S103)。
【0104】
なお、本実施形態のログ判定装置200において攻撃判定を行う一連の動作は、実施形態1のログ判定装置100と同じである。
【0105】
上述した実施形態では、判定基準が予測テーブルである場合を例に挙げて説明したが、本実施形態の判定基準は予測テーブルに限定されるものではなく、実施形態1の変形例で説明した判定基準であってもよい。
【0106】
(4)小括
以上、本実施形態によれば、車載装置であるログ判定装置200は、ログ判定装置200が有するメモリに複数の予測テーブルを保存しなくとも、危険度に基づいて、攻撃判定に必要な判定基準である予測テーブルを取得することが可能となる。これにより、ログ判定装置200の負荷を抑制することができる。
【0107】
5.実施形態3
実施形態1では、ログ判定装置100の危険度決定部102が、車両の状態に基づいて電子制御システムSが攻撃を受ける危険度を決定し、決定した危険度に基づいて攻撃判定に使用する判定基準を決定する構成を説明した。ところが、ログ判定装置が危険度を判定する場合、ログ判定装置に処理負荷がかかる。また、実施形態2で説明したように、予測テーブルはデータ量が大きいため、車両に搭載された予測テーブル保存部107が複数の予測テーブルを保存する場合、車両に搭載されたメモリの容量を圧迫するおそれがある。
【0108】
そこで、本実施形態では、車両の外部に位置する外部装置であるログ判定補助装置が危険度を判定するとともに、危険度に応じた予測テーブルを判定基準として決定する構成を説明する。
【0109】
(1)ログ判定装置300の構成
図14を参照して、本実施形態のログ判定装置300の構成を説明する。実施形態1のログ判定装置100と同じ構成については、
図4と同じ符号を付し、実施形態1の説明を引用する。
【0110】
ログ判定装置300は、制御部101、ログ取得部104、ログ保存部105、予測テーブル保存部107、判定結果送信部109、位置情報送信部311、及び予測テーブル受信部312を備える。制御部101は、判定基準設定部103、メモリ制御部106、攻撃判定部108をハードウェア又は/及びソフトウェアで実現する。
【0111】
位置情報送信部311は、ログ判定装置300が搭載された車両の位置情報をログ判定補助装置350に送信する。位置情報送信部311は例えば、車両に搭載されたGPS(図示せず)が取得した車両の位置情報を送信する。位置情報送信部311は、定期的に車両の位置情報を送信してもよく、あるいは、車両が所定の距離を移動する毎に車両の位置情報を送信してもよい。
【0112】
なお、本実施形態では、ログ判定装置300は、車両の位置情報をログ判定補助装置350に送信しているが、車両の位置情報に代えて、又は加えて、車両の状態を示す他の車両情報をログ判定補助装置350に送信してもよい。車両情報は、例えば、車両の速度情報や、車両が自動運転車両であるか否かを示す情報である。
【0113】
予測テーブル受信部312は、後述するログ判定補助装置350から送信された予測テーブルを受信する。
予測テーブル保存部107は、予測テーブル受信部312が受信した予測テーブルを保存する。
そして、判定基準設定部103は、予測テーブル受信部312が受信し、予測テーブル保存部107に保存された予測テーブルを、攻撃判定部108が判定基準として設定する。
【0114】
(2)ログ判定補助装置350の構成
図15を参照して、ログ判定補助装置350の構成を説明する。ログ判定補助装置350は、位置情報受信部351、予測テーブル保存部352、制御部353、予測テーブル送信部355を備える。制御部353は、危険度決定部356及び判定基準決定部354を実現する。
【0115】
位置情報受信部(「移動体情報受信部」に対応)351は、ログ判定装置200から送信された車両の位置情報(「移動体情報」に対応)を受信する。
【0116】
予測テーブル保存部352は、危険度に応じた複数の予測テーブルを保存するメモリである。実施形態1では、ログ判定装置100の予測テーブル保存部107が複数の予測テーブルを保存していたのに対し、本実施形態では、ログ判定補助装置350の予測テーブル保存部352が複数の予測テーブルを保存している。
【0117】
制御部353の危険度決定部356は、位置情報受信部351が受信した車両位置に基づいて、車両に搭載された電子制御システムSが攻撃を受ける危険度を決定する。ここで、危険度決定部356は、実施形態1と同様の手法を用いて、車両位置に基づいて危険度を決定する。例えば、危険度決定部356は、車両の位置情報と危険度マップを用いて危険度を決定する。なお、実施形態1と同様、危険度決定部356は、位置情報以外の車両情報に基づいて危険度を決定してもよい。
【0118】
判定基準決定部354は、危険度決定部356が決定した危険度に基づいて、ログ判定装置300が攻撃を判定する基準となる判定基準を決定する。具体的には、予測テーブル保存部352が保存する複数の予測テーブルのうち、危険度決定部356が決定した危険度に対応する一の予測テーブルを、ログ判定装置300が攻撃判定に使用する予測テーブル、すなわち、判定基準として決定する。
【0119】
予測テーブル送信部(「判定基準送信部」に対応)355は、判定基準決定部354が決定した予測テーブルを、ログ判定装置300に送信する。
【0120】
(3)ログ判定装置300及びログ判定補助装置350の動作
次に、
図16を参照して、ログ判定装置300及びログ判定補助装置350の動作を説明する。ログ判定装置300の動作のうち、ログ判定装置100と同じ動作については、
図9と同じ符号を付している。
【0121】
ログ判定装置300の位置情報送信部311は、車両の位置情報をログ判定補助装置350に送信する(S301)。
【0122】
ログ判定補助装置350の位置情報受信部351は、S301で送信された車両の位置情報を受信する(S351)。
危険度決定部356は、電子制御システムSが攻撃を受ける危険度を決定する(S352)。
判定基準決定部354は、S352で決定した危険度に基づいて、ログ判定装置300において電子制御システムSが攻撃を受けたか否かに使用する判定基準である予測テーブルを決定する(S353)。
予測テーブル送信部355は、S353で決定した予測テーブルをログ判定装置300に送信する(S354)。
【0123】
ログ判定装置300の予測テーブル受信部312は、S354で送信された予測テーブルを受信する(S302)。
予測テーブル保存部107は、S302で受信した予測テーブルを保存する(S303)。
そして、判定基準設定部103は、攻撃判定部108が使用する予測テーブルを、S302で受信し、S303で保存した予測テーブルに設定する(S103)。
【0124】
なお、本実施形態のログ判定装置300において攻撃判定を行う一連の動作は、実施形態1のログ判定装置100と同じである。
【0125】
上述した実施形態では、判定基準が予測テーブルである場合を例に挙げて説明したが、本実施形態の判定基準は予測テーブルに限定されるものではなく、実施形態1の変形例で説明した判定基準であってもよい。
【0126】
(4)小括
以上、本実施形態によれば、ログの判定基準を設定するための危険度の決定、及び予測テーブルの決定という、処理負荷の高い処理を車外に位置するログ判定補助装置350が実施することにより、ログ判定装置300の負荷を抑制することができる。
【0127】
(5)実施形態3の変形例(その他の発明)
上述した実施形態3では、ログ判定補助装置350が、ログ判定装置300から受信した車両の位置情報に基づいて、ログ判定装置300と同じ車両に搭載された電子制御システムSが攻撃を受ける危険度を決定した。これに対し、本変形例においては、ログ判定補助装置が、所定の危険度のエリアに存在する車両に搭載されたログ判定装置に対し、当該エリアの危険度に対応する予測テーブルを送信する構成を説明する。
【0128】
本変形例のログ判定装置の構成は、実施形態3のログ判定装置と実質的に同じであるため、実施形態3のログ判定装置300を引用して説明する。ただし、本変形例のログ判定装置300は、ログ判定補助装置に対して位置情報を送信しなくてもよいため、位置情報送信部311は必ずしも有していなくともよい。
【0129】
図17を参照して、本変形例のログ判定補助装置450の構成を説明する。ログ判定補助装置450は、予測テーブル保存部452、制御部453、及び予測テーブル送信部455を備える。制御部453は、判定基準決定部454及び対象車両決定部457を実現する。
【0130】
本変形例の予測テーブル保存部451は、実施形態2又は実施形態3の予測テーブル保存部と同様、危険度に応じて複数の予測テーブルを予め保存している。
【0131】
制御部453の判定基準決定部454は、特定のエリア内に位置するログ判定装置300が攻撃判定に用いる判定基準である予測テーブルを決定する。
【0132】
対象車両決定部457は、ログ判定装置300を搭載する車両のうち、判定基準決定部454が決定した予測テーブルを用いるエリア内に位置する車両を対象車両として決定する。なお、ログ判定補助装置450が、車両に搭載されたログ判定装置300から位置情報を取得している場合には、対象車両決定部457は、受信した位置情報に基づいて対象車両を決定してもよい。
【0133】
予測テーブル送信部455は、対象車両決定部457が決定した対象車両に対し、判定基準決定部454が決定した予測テーブルを送信する。
【0134】
なお、上述した例では、予測テーブル送信部455が、ユニキャストによって、対象車両に対して予測テーブルを送信する構成を説明した。しかしながら、本変形例の予測テーブル送信部455は、ブロードキャストによって、特定のエリア内に位置する車両に予測テーブルを送信してもよい。
【0135】
6.総括
以上、本発明の各実施形態におけるログ判定装置及びログ判定補助装置等の特徴について説明した。
各実施形態で使用した用語は例示であるので、同義の用語、あるいは同義の機能を含む用語に置き換えてもよい。
【0136】
実施形態の説明に用いたブロック図は、装置の構成を機能毎に分類及び整理したものである。それぞれの機能を示すブロックは、ハードウェア又はソフトウェアの任意の組み合わせで実現される。また、機能を示したものであることから、かかるブロック図は方法の発明、及び当該方法を実現するプログラムの発明の開示としても把握できるものである。
【0137】
各実施形態に記載した処理、フロー、及び方法として把握できるブロック、については、一のステップでその前段の他のステップの結果を利用する関係にある等の制約がない限り、順序を入れ替えても良い。
【0138】
各実施形態、及び特許請求の範囲で使用する、第1、第2、乃至、第N(Nは整数)、の用語は、同種の2以上の構成や方法を区別するために使用しており、順序や優劣を限定するものではない。
【0139】
各実施形態のログ判定装置は、車両に搭載される電子制御システムのセンサで生成されたログを判定するための装置であることを前提としているが、本開示のログ判定装置は、特許請求の範囲で特に限定する場合を除き、任意の電子制御システムで生成されたログを判定する装置に適用される。
各実施形態のログ判定補助装置は、車両に搭載されるログ判定装置によるログ判定を補助するための装置であることを前提としているが、本発明のログ判定補助装置は、特許請求の範囲で特に限定する場合を除き、任意のログ判定装置によるログ判定を補助する装置に適用される。
【0140】
また、本発明の装置の形態の例として、半導体素子、電子回路、通信モジュール、マイクロコンピュータが挙げられる。
半完成品の形態として、電子制御装置(ECU(Electric Control Unit))、システムボードが挙げられる。
完成品の形態として、モバイルルータ、携帯電話、スマートフォン、タブレット、パーソナルコンピュータ(PC)、ワークステーション、サーバが挙げられる。
その他、通信機能を有するデバイス等を含み、例えば、カーナビゲーションシステムが挙げられる。
【0141】
また各装置に、アンテナや通信用インターフェースなど、必要な機能を追加してもよい。
【0142】
加えて、本発明は、各実施形態で説明した構成及び機能を有する専用のハードウェアで実現できるだけでなく、メモリやハードディスク等の記録媒体に記録した本発明を実現するためのプログラム、及びこれを実行可能な専用又は汎用CPU及びメモリ等を有する汎用のハードウェアとの組み合わせとしても実現できる。
【0143】
本開示のログ判定装置又はログ判定補助装置のためのプログラムであって、専用や汎用のハードウェアの非遷移的実体的記録媒体(例えば、外部記憶装置(ハードディスク、USBメモリ、CD/BD等)、又は内部記憶装置(RAM、ROM等))に格納されるプログラムは、記録媒体を介して、あるいは記録媒体を介さずにサーバから通信回線を経由して、専用又は汎用のハードウェアに提供することもできる。これにより、プログラムのアップグレードを通じて常に最新の機能を提供することができる。
【産業上の利用可能性】
【0144】
本開示は、主として自動車に搭載される車載用のログ判定装置、及び当該ログ判定装置を補助するログ判定補助装置として説明したが、自動二輪車、船舶、鉄道、航空機等、移動する移動体全般に適用することが可能である。
【符号の説明】
【0145】
100,200,300 ログ判定装置、102 危険度決定部、103 判定基準設定部、104 ログ取得部、105 ログ保存部、106 メモリ制御部、107 予測テーブル保存部、108 攻撃判定部、109 判定結果送信部、211 危険度送信部、212 予測テーブル受信部、351 位置情報受信部(移動体情報受信部)、354 判定基準決定部、355 予測テーブル送信部(判定基準送信部)、356 危険度決定部