(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024139499
(43)【公開日】2024-10-09
(54)【発明の名称】ログ管理装置、電子制御システム、ログ管理方法、及びログ管理プログラム
(51)【国際特許分類】
G06F 11/34 20060101AFI20241002BHJP
G06F 11/30 20060101ALI20241002BHJP
B60R 16/023 20060101ALI20241002BHJP
【FI】
G06F11/34 176
G06F11/30 140D
B60R16/023 P
【審査請求】未請求
【請求項の数】19
【出願形態】OL
(21)【出願番号】P 2023050463
(22)【出願日】2023-03-27
(71)【出願人】
【識別番号】000004260
【氏名又は名称】株式会社デンソー
(71)【出願人】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】230120499
【弁護士】
【氏名又は名称】藤江 和典
(74)【代理人】
【識別番号】100201385
【弁理士】
【氏名又は名称】中安 桂子
(72)【発明者】
【氏名】渡邊 聖剛
(72)【発明者】
【氏名】稲垣 徳也
(72)【発明者】
【氏名】村上 亮介
(72)【発明者】
【氏名】山下 普史
(72)【発明者】
【氏名】菅原 慎之介
(72)【発明者】
【氏名】松井 健
【テーマコード(参考)】
5B042
【Fターム(参考)】
5B042GB08
5B042JJ15
5B042MA08
5B042MA17
5B042MC40
(57)【要約】 (修正有)
【課題】電子制御システム毎のセキュリティセンサの種類や数の管理を最小限にするログ管理装置、方法及びプログラムを提供する。
【解決手段】ログ管理装置100は、車両に搭載された電子制御装置10のセキュリティセンサが動作していることを示す死活監視ログを取得するログ取得部101と、死活監視ログを取得したことを死活監視テーブルに記録する死活監視ログ記録部103と、ログ取得部が取得していない未取得死活監視ログを特定するとともに、未取得死活監視ログを取得していない未取得期間を死活監視テーブルに記録する未取得死活監視ログ記録部104と、未取得死活監視ログの未取得期間が所定の期間以上の場合、死活監視テーブルの未取得死活監視ログの記録を無効化する無効化部106と、未取得死活監視ログの未受信期間が所定の期間以上の場合、外部装置に検知ログを送信する出力部107と、を備える。
【選択図】
図6
【特許請求の範囲】
【請求項1】
車両に搭載された電子制御装置(10)のセキュリティセンサが動作していることを示す死活監視ログを取得するログ取得部(101)と、
前記死活監視ログを取得したことを死活監視テーブルに記録する死活監視ログ記録部(103)と、
前記ログ取得部が取得していない未取得死活監視ログを特定するとともに、前記未取得死活監視ログを取得していない未取得期間を前記死活監視テーブルに記録する未取得死活監視ログ記録部(104)と、
前記未取得死活監視ログの前記未取得期間が所定の期間以上の場合、前記死活監視テーブルの前記未取得死活監視ログの記録を無効化する無効化部(106,206)と、を有する、
ログ管理装置(100,200,300)。
【請求項2】
前記無効化部は、前記死活監視テーブルから前記未取得死活監視ログの記録を削除することで無効化する、
請求項1記載のログ管理装置。
【請求項3】
前記無効化部は、前記死活監視テーブルの要素をマスクするマスキングテーブルに前記未取得死活監視ログを記録することで無効化する、
請求項1記載のログ管理装置。
【請求項4】
前記死活監視テーブルは、前記車両の初回起動時には空である、
請求項1記載のログ管理装置。
【請求項5】
前記死活監視テーブルは、前記車両の初回起動時に既知の死活監視ログが登録されている、
請求項1記載のログ管理装置。
【請求項6】
前記所定の期間は、当該ログ管理装置の起動から終了までの期間又は前記車両のイグニッションONからイグニッションOFFまでの期間であるトリップを単位とする、
請求項1記載のログ管理装置。
【請求項7】
前記所定の期間は、前記トリップが所定の回数連続して発生した場合である、
請求項6記載のログ管理装置。
【請求項8】
さらに、前記所定の期間を計測する期間計測部(105)を有する、
請求項1記載のログ管理装置。
【請求項9】
前記死活監視ログは、前記セキュリティセンサで一定の周期毎に生成される、
請求項1記載のログ管理装置。
【請求項10】
前記死活監視ログ記録部は、前記死活監視ログの識別情報を前記死活監視テーブルに記録する、
請求項1記載のログ管理装置。
【請求項11】
出力部(107)は、前記未取得死活監視ログの前記未受信期間が所定の期間以上の場合、外部装置(20)に検知ログを出力する、
請求項1記載のログ管理装置。
【請求項12】
さらに、前記車両の外部から前記死活監視テーブルにアクセスするための外部入出力部(308)を有する、
請求項1記載のログ管理装置。
【請求項13】
前記外部入出力部が無線通信を用いる方法で前記車両の外部から前記死活監視テーブルにアクセスする場合、前記外部入出力部が有線通信を用いる方法で前記車両の外部から前記死活監視テーブルにアクセスする場合、のいずれも前記死活監視テーブルの読出しは許可する、
請求項12記載のログ管理装置。
【請求項14】
前記外部入出力部が無線通信を用いる方法で前記車両の外部から前記死活監視テーブルにアクセスする場合、前記死活監視テーブルの消去は禁止し、
前記外部入出力部が有線通信を用いる方法で前記車両の外部から前記死活監視テーブルにアクセスする場合、前記死活監視テーブルの消去は許可する、
請求項12記載のログ管理装置。
【請求項15】
前記外部入出力部を介して前記死活監視テーブルを読出す場合、前記外部入出力部は前記死活監視テーブルに記録されている前記死活監視ログの識別情報の数を含めた前記死活監視テーブルを出力する、
請求項13又は14記載のログ管理装置。
【請求項16】
当該ログ管理装置は、前記車両に搭載されている、
請求項1記載のログ管理装置。
【請求項17】
車両に搭載された電子制御装置(10)及び前記電子制御装置と接続されたログ管理装置(100,200,300)を有する電子制御システムであって、
前記電子制御装置は、
セキュリティセンサが動作していることを示す死活監視ログを生成するログ生成部(11)と、
前記死活監視ログを送信する送信部(12)と、を有し、
前記ログ管理装置は、
前記死活監視ログを取得するログ取得部(101)と、
前記死活監視ログを取得したことを死活監視テーブルに記録する死活監視ログ記録部(103)と、
前記ログ取得部が取得していない未取得死活監視ログを特定するとともに、前記未取得死活監視ログを取得していない未取得期間を前記死活監視テーブルに記録する未取得死活監視ログ記録部(104)と、
前記未取得死活監視ログの前記未取得期間が所定の期間以上の場合、前記死活監視テーブルの前記未取得死活監視ログの記録を無効化する無効化部(106,206)と、を有する、
電子制御システム。
【請求項18】
ログ管理装置(100,200,300)で実行されるログ管理方法であって、
車両に搭載された電子制御装置のセキュリティセンサが動作していることを示す死活監視ログを取得し(S101)、
前記死活監視ログを取得したことを死活監視テーブルに記録し(S102)、
取得していない未取得死活監視ログを特定するとともに、前記未取得死活監視ログを取得していない未取得期間を前記死活監視テーブルに記録し(S103)、
前記未取得死活監視ログの前記未取得期間が所定の期間以上の場合、前記死活監視テーブルの前記未取得死活監視ログの記録を無効化する(S104,S105)、
ログ管理方法。
【請求項19】
ログ管理装置(100,200,300)で実行可能なログ管理プログラムであって、
車両に搭載された電子制御装置のセキュリティセンサが動作していることを示す死活監視ログを取得し(S101)、
前記死活監視ログを取得したことを死活監視テーブルに記録し(S102)、
取得していない未取得死活監視ログを特定するとともに、前記未取得死活監視ログを取得していない未取得期間を前記死活監視テーブルに記録し(S103)、
前記未取得死活監視ログの前記未取得期間が所定の期間以上の場合、前記死活監視テーブルの前記未取得死活監視ログの記録を無効化する(S104,S105)、
ログ管理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、主に自動車をはじめとする移動体に搭載された電子制御装置のセキュリティセンサが生成する死活監視ログを管理する装置、方法、及びプログラムに関する。
【背景技術】
【0002】
近年、車車間通信や路車間通信のようなV2Xをはじめ、運転支援や自動運転制御を行う技術が注目されている。これに伴い、車両が通信機能を備えるようになり、いわゆる車両のコネクティッド化が進んでいる。この結果、車両が不正アクセスといったサイバー攻撃を受ける可能性が増加している。そのため、車両に対するサイバー攻撃を分析して、その対応策を構築することが必要とされている。
【0003】
車両に発生した異常を検知し、検知した異常に基づいてサイバー攻撃を分析する手法として、様々なものがある。例えば、特許文献1には、ネットワークに対する攻撃により発生した異常を検出し検出された異常のデータを収集するとともに、異常が検出された項目の組み合わせと、攻撃毎に予め特定された異常検出パターンとを照合して、異常に対応するサイバー攻撃の種類を特定することが記載されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ここで、本発明者は、以下の課題を見出した。
特許文献1のような既存の攻撃特定手法においては、車両に搭載されている電子制御システムを構成する電子制御装置に搭載されているセキュリティセンサの種類や数が予め特定されている必要がある。しかし、車両の車種やグレード、さらには仕向地によって、搭載されている電子制御装置の種類や数が異なる場合があることから、これらの仕様毎に電子制御システムの構成を管理する必要がある。
【0006】
そこで、本発明は、電子制御システム毎のセキュリティセンサの種類や数の管理を最小限にすることができるログ管理装置等を実現することを目的とする。
【課題を解決するための手段】
【0007】
本開示のログ管理装置(100,200,300)は、
車両に搭載された電子制御装置(10)のセキュリティセンサが動作していることを示す死活監視ログを取得するログ取得部(101)と、
前記死活監視ログを取得したことを死活監視テーブルに記録する死活監視ログ記録部(103)と、
前記ログ取得部が取得していない未取得死活監視ログを特定するとともに、前記未取得死活監視ログを取得していない未取得期間を前記死活監視テーブルに記録する未取得死活監視ログ記録部(104)と、
前記未取得死活監視ログの前記未取得期間が所定の期間以上の場合、前記死活監視テーブルの前記未取得死活監視ログの記録を無効化する無効化部(106,206)と、を備える。
【0008】
なお、特許請求の範囲、及び本項に記載した発明の構成要件に付した括弧内の番号は、本発明と後述の実施形態との対応関係を示すものであり、本発明を限定する趣旨ではない。
【発明の効果】
【0009】
上述のような構成により、本開示のログ管理装置等は、死活監視ログを用いることにより、電子制御システム毎のセキュリティセンサの種類や数の管理を最小限にすることができる。
【図面の簡単な説明】
【0010】
【
図1】各実施形態のログ管理装置の配置及び関係する機器との関係を説明する説明図
【
図2】各実施形態のログ管理装置の配置及び関係する機器との関係を説明する説明図
【
図3】各実施形態の電子制御システムの構成例を説明する説明図
【
図4】各実施形態の電子制御装置の構成を説明する説明図
【
図5】各実施形態の電子制御装置のセキュリティセンサが生成するセキュリティログを説明する説明図
【
図6】実施形態1のログ管理装置の構成例を示すブロック図
【
図7】実施形態1のログ管理装置で用いる死活監視テーブルを説明する説明図
【
図8】実施形態1のログ管理装置の動作を説明するフローチャート
【
図9】実施形態2のログ管理装置の構成例を示すブロック図
【
図10】実施形態2のログ管理装置で用いるマスキングテーブルを説明する説明図
【
図11】実施形態3のログ管理装置の構成例を示すブロック図
【
図12】実施形態3のログ管理装置の外部入出力部から出力される死活監視テーブルを説明する説明図
【
図13】実施形態3のログ管理装置の動作を説明するフローチャート
【発明を実施するための形態】
【0011】
以下、本発明の実施形態について、図面を参照して説明する。
【0012】
なお、本発明とは、特許請求の範囲又は課題を解決するための手段の項に記載された発明を意味するものであり、以下の実施形態に限定されるものではない。また、少なくともかぎ括弧内の語句は、特許請求の範囲又は課題を解決するための手段の項に記載された語句を意味し、同じく以下の実施形態に限定されるものではない。
【0013】
特許請求の範囲の従属項に記載の構成及び方法は、特許請求の範囲の独立項に記載の発明において任意の構成及び方法である。従属項に記載の構成及び方法に対応する実施形態の構成及び方法、並びに特許請求の範囲に記載がなく実施形態のみに記載の構成及び方法は、本発明において任意の構成及び方法である。特許請求の範囲の記載が実施形態の記載よりも広い場合における実施形態に記載の構成及び方法も、本発明の構成及び方法の例示であるという意味で、本発明において任意の構成及び方法である。いずれの場合も、特許請求の範囲の独立項に記載することで、本発明の必須の構成及び方法となる。
【0014】
実施形態に記載した効果は、本発明の例示としての実施形態の構成を有する場合の効果であり、必ずしも本発明が有する効果ではない。
【0015】
複数の実施形態(変形例含む)がある場合、各実施形態に開示の構成は各実施形態のみで閉じるものではなく、実施形態をまたいで組み合わせることが可能である。例えば一の実施形態に開示の構成を、他の実施形態に組み合わせてもよい。また、複数の実施形態それぞれに開示の構成を集めて組み合わせてもよい。
【0016】
発明が解決しようとする課題に記載した課題は公知の課題ではなく、本発明者が独自に知見したものであり、本発明の構成及び方法と共に発明の進歩性を肯定する事実である。
【0017】
1.各実施形態の前提となる構成
(1)ログ管理装置の配置、及び関係する機器との関係
図1及び
図2は、各実施形態のログ管理装置の配置、及び関係する機器との関係を説明する図である。例えば、
図1に示すように、ログ管理装置100、ログ管理装置200、又はログ管理装置300(以下、これらを併せてログ管理装置100等とする。)が電子制御システムSを構成する電子制御装置10とともに「車両」に「搭載」されている場合と、
図2に示すように、電子制御システムSを構成する電子制御装置10が「車両」に「搭載」され、ログ管理装置100等が車両の外部に設けられたサーバ装置等で実現する場合と、が想定される。後述の各実施形態では、
図1のように、ログ管理装置100等が、車両に搭載されている場合について説明する。
図2のようにログ管理装置100等が車両に搭載されていない場合も、電子制御装置10との通信方式が異なることの他は各実施形態と同じであるので、各実施形態の記載を引用する。
ここで、
「車両」とは、移動可能な物体をいい、移動速度は任意である。また車両が停止している場合も当然含む。例えば、自動車、自動二輪車、自転車、及びこれらに搭載される物を含み、またこれらに限らない。
「搭載」されたとは、車両に直接固定されている場合の他、車両に固定されていないが車両と共に移動する場合も含む。例えば、車両に乗った人が所持している場合、車両に載置された積荷に搭載されている場合、が挙げられる。
【0018】
ログ管理装置100等は、電子制御システムを構成する「電子制御装置」(以下、ECU(Electronic Control Unit)と称する)と接続されている。ログ管理装置100等は、電子制御システムSを構成する複数のECU10に搭載されているセキュリティセンサが生成したセキュリティログを取得し、管理する装置である。
ここで、「電子制御装置」とは、物理的に独立した電子制御装置の他、仮想化技術を用いて実現した仮想化電子制御装置であってもよい。
【0019】
外部装置20は、車両の外部に設けられた任意の装置であり、サイバー攻撃の検知や分析を行うSOC(Security Operations Center)が例として挙げられる。
【0020】
図1において、電子制御システムSと外部装置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)やインターネット、固定電話回線を用いることができる。
この他、無線通信方式と有線通信方式とを組み合わせた回線であってもよい。例えば、電子制御システムSとセルラーシステムにおける基地局装置との間は4G等の無線通信方式で、基地局装置と外部装置20との間は通信事業者の基幹回線やインターネット等の有線通信方式で、それぞれ接続されてもよい。基幹回線とインターネットとの接点にはゲートウェイ装置を設けてもよい。
【0021】
図2において、電子制御システムSと、車両の外部に設けられたログ管理装置100等との間も、上述の無線通信方式や有線通信方式を用いた通信ネットワークを介して接続されている。
なお、
図2では、ログ管理装置100等と外部装置20とは通信ネットワークで接続された別の装置として記載しているが、ログ管理装置100等と外部装置20とを同じ装置で実現するようにしてもよい。
【0022】
(2)電子制御システムSの構成
図3は、電子制御システムSの構成例を示す図である。電子制御システムSは、複数のECU10、及びこれらを接続する車載ネットワークから構成されている。
図2は8つのECU(ECU10a~ECU10h)を例示しているが、当然のことながら、電子制御システムSは任意の数のECUから構成される。以後の説明では、単数又は複数の電子制御装置全体を包括して説明する場合はECU10や各ECU10、個々の電子制御装置を特定して説明する場合はECU10a、ECU10b、ECU10c、・・・のように記載している。
【0023】
図3の場合、各ECU10間は、例えばCAN(Controller Area Network)、LIN(Local Interconnect Network)といった車載通信ネットワークを介して接続されている。あるいは、Ethernet(登録商標)、Wi-Fi(登録商標)、Bluetooth(登録商標)等、有線無線を問わず任意の通信方式を用いて接続されてもよい。
なお、接続とは、データのやり取りが可能な状態をいい、異なるハードウェアが有線又は無線の通信ネットワークを介して接続されている場合はもちろん、同一のハードウェア上で実現された仮想ECU(あるいは、仮想マシンとも呼ばれる)同士が仮想的に接続されている場合も含む。
【0024】
図3に示す電子制御システムSは、統合ECU10a、外部通信ECU10b、ゾーンECU(10c、10d)、及び個別ECU(10e~10h)を含んでいる。
【0025】
統合ECU10aは、電子制御システムS全体を制御する機能を備えるとともに、各ECU間の通信を仲介するゲートウェイ機能を備えたECUである。統合ECU10aは、ゲートウェイECU(G-ECU)、モビリティコンピュータ(MC)と呼ばれることもある。また、統合ECU10aは、中継装置やゲートウェイ装置であってもよい。
【0026】
外部通信ECU10bは、車両の外部に設けられた外部装置20と通信を行う通信部を有するECUである。外部通信ECU10bが用いる通信方式は、上述の無線通信方式や有線通信方式である。
なお、複数の通信方式を実現するため、外部通信ECU10bを複数設けるようにしてもよい。また、外部通信ECU10bを設ける代わりに、統合ECU10aが外部通信ECUbの機能を内包してもよい。
【0027】
ゾーンECU(10c、10d)は、個別ECUが配置される場所や機能に応じて適宜配置されたゲートウェイ機能を備えたECUである。例えば、ゾーンECU10cは、車両の前方に配置された個別ECU10e及び個別ECU10fと他のECU10との通信を仲介するゲートウェイ機能を有するECU、ゾーンECU10dは、車両の後方に配置された個別ECU10g及び個別ECU10hと他のECU10との通信を仲介するゲートウェイ機能を有するECU、である。
【0028】
個別ECU(10e~10h)は任意の機能を有するECUで構成することができる。例えば、エンジン、ハンドル、ブレーキ等の制御を行う駆動系電子制御装置、メータやパワーウインドウ等の制御を行う車体系電子制御装置、ナビゲーション装置等の情報系電子制御装置、あるいは、障害物や歩行者との衝突を防止するための制御を行う安全制御系電子制御装置が挙げられる。また、ECU同士が並列ではなく、マスタとスレーブとに分類されていてもよい。
【0029】
図3の電子制御システムSにおいて、ECU10h以外の各ECU10にセキュリティセンサが搭載されている(図中では、SSと省略して記載している)。このように、電子制御システムSを構成する全てのECU10にセキュリティセンサが搭載されている必要はない。セキュリティセンサが生成するセキュリティログについては後述する。
【0030】
各実施形態において、ログ管理装置100等は、統合ECU10aに設けられている場合を例として説明する。もっとも、ログ管理装置100等は、外部通信ECU10b、ゾーンECU(10c、10d)、又は個別ECU(10e~10h)に設けられていてもよい。個別ECU(10e~10h)の1つに設けられる場合は、ログ管理装置100等を実現する専用のECUとすることが望ましい。
【0031】
(3)検知ログと死活監視ログ
図4は、セキュリティセンサを搭載するECU(10a~10g)の構成を示すブロック図である。ECU(10a~10g)は、ログ生成部11、及び送信部12を有する。
【0032】
ログ生成部11は、検知ログ及び死活監視ログの2種類のセキュリティログを生成する。
図5は、セキュリティログの具体例を示す図である。
セキュリティログは、セキュリティセンサが搭載されているECU10の識別情報を示すECUID、セキュリティセンサの識別情報を示すセンサID、セキュリティイベントの識別情報を示すイベントID、イベントの発生回数を示すカウンタ、イベントの発生時刻を示すタイムスタンプ、及びセキュリティセンサの出力の詳細を示すコンテキストデータ、の各フィールドを有する。セキュリティログは、さらに、プロトコルのバージョンや各フィールドの状態を示す情報を格納したヘッダを有していてもよい。
【0033】
検知ログは、セキュリティセンサが搭載された各ECU10に対するサイバー攻撃を検知したときに生成されるセキュリティログである。すなわち、検知ログが生成されるタイミングは、サイバー攻撃を検知した時である。
【0034】
これに対し、死活監視ログは、セキュリティセンサが動作していることを示すセキュリティログである。死活監視ログは、ログを生成している事実があればセキュリティセンサが動作しているという事実を推認できることを利用するために生成したセキュリティログである。
【0035】
死活監視ログが生成されるタイミングはサイバー攻撃の検知とは関係ない。例えば、死活監視ログは、「一定の周期」毎、例えば10秒毎に生成される。あるいは、死活監視ログは、特定のタイミング、例えば車両のイグニッションがONになった時に生成されるようにしてもよい。
ここで、「一定の周期」とは、常に一定の場合の他、条件によって周期が定まる場合も含む。
【0036】
また、死活監視ログを検知ログと区別するために、死活監視ログには検知ログとは異なるIDを付与することが望ましい。例えば、イベントIDが16ビットで構成される場合、上位4ビットを1(すなわち、16進数表記だと、0xF***(*は任意の数))とすることにより、死活監視ログであることを示すようにしてもよい。また、イベントID以外のID、すなわちECUIDやセンサIDに対し、あるいは3つのIDの任意の組み合わせに対し、検知ログとは異なるIDを付与してもよい。
なお、死活監視ログには、コンテキストデータのフィールドを設けないようにしてもよい。
【0037】
図4に戻り、送信部12は、ログ生成部11で生成したセキュリティログを、車載ネットワークを介してログ管理装置100等に送信する。セキュリティセンサとログ管理装置100等とが同一のECU10に搭載されている場合は、車載ネットワークを介さずにログ管理装置100等を実現するハードウェア又はソフトウェアに直接出力する。
【0038】
なお、セキュリティセンサが生成したセキュリティログはSEv、絞り込み済の適格なセキュリティログはQSEv、と呼ばれる。例えば、セキュリティセンサはSEvを生成して侵入検知システムマネージャ(IdsM)にレポートし、IdsMでSEvが認定フィルタを通過して指定された基準を満たした場合にQSEvとして侵入検知レポータから車両の外部に送信される。各実施形態のセキュリティログは、SEv及びQSEvのいずれも含む概念である。
セキュリティログがQSEvの場合、侵入検知システムマネージャ(IdsM)を含む範囲がログ生成部11に相当し、侵入検知レポータが送信部12に相当する。
【0039】
2.実施形態1
(1)ログ管理装置100の構成
図6は、本実施形態におけるログ管理装置100の構成を示すブロック図である。ログ管理装置100は、ログ取得部101、制御部102、出力部107、死活監視テーブル保存部108、セキュリティログ保存部109を備える。制御部102は、死活監視ログ記録部103、未取得死活監視ログ記録部104、及び削除部106をハードウェア又は/及びソフトウェアで実現する。
【0040】
ログ取得部101は、電子制御システムSを構成する複数のECU10のそれぞれに搭載されたセキュリティセンサが生成したセキュリティログ、すなわち検知ログ及び死活監視ログを取得する。ログ管理装置100が搭載されている統合ECU10a以外のECU10に搭載されたセキュリティセンサからは車載ネットワークを介して取得し、統合ECU10aに搭載されたセキュリティセンサからは車載ネットワークを介さずに直接取得する。
【0041】
死活監視ログ記録部103は、ログ取得部101が「死活監視ログを取得したこと」を死活監視「テーブル」に「記録する」。
ここで、
「死活監視ログを取得したことを・・記録する」とは、死活監視ログを取得した事実を記録することの他、死活監視ログを取得した事実を導くことができる間接事実を記録することも含む。例えば、死活監視ログを識別する識別情報を記録することの他、死活監視ログの取得回数や取得時間、又はその他取得したことを示すフラグ等の情報を記録することも含む。
「テーブル」とは、データの集合であれば足り、表形式には限られない。
【0042】
図7は、死活監視テーブルを示す図である。
図7のECUID、センサID、イベントIDは、ログ取得部101が取得した死活監視ログのECUID、センサID、及びイベントIDが記録されている。以降、ECUID、センサID、及びイベントIDをまとめてイベント特定IDと記載することがある。
図7において、ECUIDは12ビット、センサIDは8ビット、イベントIDは16ビットとしているが、これは一例であって、それぞれのIDの長さはこれ以外であってもよい。
なお、死活監視ログのイベントIDに代えて、対応する検知ログのイベントIDを記録するようにしてもよい。
【0043】
現在のトリップ番号(A)は、ログ管理装置100の起動から終了までの期間又は車両のイグニッションONからイグニッションOFFまでの期間であるトリップの現在の番号を示している。例えば、従前記録されていたトリップ番号に対してイグニッションONのタイミングでインクリメントしたトリップ番号を上書きすることで、現在のトリップ番号を更新している。
図7においては、現在のトリップ番号は10である。
【0044】
取得時トリップ番号(B)は、ログ取得部101が死活監視ログを取得した時のトリップ番号を示している。例えば、現在のトリップ時に死活監視ログを取得した場合、現在のトリップ番号(A)を取得時トリップ番号(B)にコピー、すなわち記録する。
図7においては、ログ取得部101は、トリップ番号10のトリップで死活監視ログ#1、#2,#3を取得している。これに対し、ログ取得部101は、トリップ番号5のトリップで死活監視ログ#4を取得しており、それ以降トリップ番号10のトリップまで死活監視ログ#4を取得していない。また、ログ取得部101は、トリップ番号9のトリップで死活監視ログ#5を取得しており、トリップ番号10のトリップでは死活監視ログ#5を取得していない。
【0045】
本実施形態においては、死活監視ログ記録部103は、ログ取得部101がこれまでに取得したことがない死活監視ログを取得した場合、取得した死活監視ログのイベント特定IDを死活監視テーブルに新たに記録する。また、死活監視ログ記録部103は、ログ取得部101が死活監視ログを取得したとき、死活監視ログを取得したときのトリップ番号を死活監視テーブルの取得時トリップ番号(B)に記録する。
【0046】
図6に戻り、未取得死活監視ログ記録部104は、ログ取得部101が取得していない未取得死活監視ログを特定するとともに、未取得死活監視ログを取得していない「未取得期間」を死活監視テーブルに記録する。
ここで、「未取得期間」とは、時間的な長さが特定できれば足り、時刻、時間、又は回数を含む。
【0047】
図7において、未取得トリップ回数(C)は、ログ取得部101が死活監視ログを取得していないトリップが連続している回数を示している。例えば、現在のトリップ番号(A)から取得時トリップ番号(B)を減算した値が未取得トリップ回数(C)となる。
図7においては、ログ取得部101は、現在のトリップ番号10において死活監視ログ#1、#2、#3を取得していることから、未取得トリップ回数(C)は0である。これに対して、ログ取得部101は、トリップ番号5を最後に死活監視ログ#4を取得していないことから、未取得トリップ回数(C)は5である。また、ログ取得部101は、トリップ番号9を最後に死活監視ログ#5を取得していないことから、未取得トリップ回数(C)は1である。
【0048】
本実施形態において、未取得死活監視ログ記録部104は、死活監視テーブルの現在のトリップ番号(A)から取得時トリップ番号(B)を減算して求めた未取得トリップ回数が1以上の場合に、ログ取得部101が取得していない死活監視ログ、すなわち未取得死活監視ログを特定していることになる。そして、未取得死活監視ログ記録部104は、現在のトリップ番号(A)から取得時トリップ番号(B)を減算し、その結果を未取得トリップ回数(C)に記録することにより、未取得死活監視ログを取得していない未取得期間を記録している。
なお、この減算及び記録を実行するタイミングはリアルタイムでもよいが、イグニッションOFF時や次回のイグニッションON時にまとめて実行してもよい。
【0049】
未取得死活監視ログ記録部104で未取得死活監視ログを特定することにより、電子制御システムを構成していないECU10を特定することができる。すなわち、未取得死活監視ログと同じECU IDやセンサIDを有するECU10が電子制御システムを構成していないECUであり、例えば途中で電子制御システムSから取り外されたECU10や故障したECU10が相当する。
【0050】
図6に戻り、削除部106(「無効化部」に相当)は、未取得死活監視ログの未取得期間が「所定の期間」「以上」の場合、死活監視テーブルの未取得死活監視ログの記録を「無効化する」。本実施形態においては、削除部106は、死活監視テーブルから未取得死活監視ログの記録を削除することにより無効化している。
ここで、
「所定の期間」とは、時間的な長さを直接又は間接的に示すものであればよく、例えば時間や回数が挙げられる。また、期間は一定でも、条件によって変化してもよい。
「以上」とは、比較対象である所定の期間と同じ場合を含める場合、含めない場合、のいずれの場合も包含する。
「無効化する」とは、死活監視テーブルに記録されている死活監視ログが存在しないように取り扱うことができれば足りる。
【0051】
本実施形態では、所定の期間は、ログ管理装置100の起動から終了までの期間又は車両のイグニッションONからイグニッションOFFまでの期間であるトリップを単位としている。そして、所定の期間は、トリップが所定の回数、例えば5回連続して発生した場合としている。
【0052】
例えば、
図7において、死活監視ログ#4は、最後に取得されたトリップがトリップ番号5の時であり、未取得トリップ回数(C)が示すように、死活監視ログ#4を取得しないトリップが連続して5回発生している。そこで、削除部106は、死活監視ログ#4の列(column)を死活監視テーブルから削除する。
【0053】
所定の期間が短く設定する場合は、取り外されたECU10や故障したECU10の他、一時的な不具合が生じているECU10も検出することができる。そして、所定の期間をより長く設定する場合は、一時的な不具合が生じているECU10を検出対象から除くことができる。例えば、所定の期間をトリップの回数とした場合、1回の場合は一時的な不具合が生じているECU10も含めて検出することができる。そして、2回以上に設定した場合は、トリップ毎に各ECU10にリセットがかかることにより一時的な不具合は連続したトリップで発生しない場合が多いことから、取り外されたECU10と故障したECU10のみを検出することができる。
【0054】
出力部107は、未取得死活監視ログの未受信期間が所定の期間以上の場合、外部装置20に検知ログを送信する。例えば、
図7において、死活監視ログ#4を受信しないトリップが5回連続して発生しているので、出力部はこの事実を報告する検知ログを外部装置20に出力する。検知ログは
図5の形式で生成・送信してもよい。その際、死活監視ログ#4のイベント特定IDを検知ログのコンテキストデータに記録する。また、検知ログのイベントIDに、死活監視ログを所定の期間以上受信していないイベントを特定する識別子を記録する。なお、本実施形態では、削除部106の判断に用いる所定の期間と、出力部107の判断に用いる所定の期間は同じであるが、異なる期間としてもよい。例えば、前者の所定の期間が後者の所定の期間よりも長く設定することにより、死活監視テーブルから未取得死活監視ログの記録を削除する前に外部装置20に報告することができるので、未取得死活監視ログの記録を削除する前に外部装置20の判断を介在させることができる。
【0055】
死活監視テーブル保存部108は、死活監視テーブルを保存する。
セキュリティログ保存部109は、ログ取得部101で取得するセキュリティログを保存する。
死活監視テーブル保存部108及びセキュリティログ保存部109は、外部記憶装置(ハードディスク、USBメモリ、CD/BD等)、又は内部記憶装置(RAM等)のいずれであってもよい。また、揮発性であっても不揮発性であってもよいが、特に死活監視テーブルは不揮発性のデータとして管理することが望ましいので、これを保存する死活監視テーブル保存部108は不揮発性であることが望ましい。
【0056】
(2)ログ管理装置100の動作
次に、
図8を参照して、ログ管理装置100の動作を説明する。
図8は、ログ管理装置100で実行されるログ管理方法を示すだけでなく、ログ管理装置100で実行可能なログ管理プログラムの処理手順を示すものでもある。そして、これらの処理は、
図8に示した順序には限定されない。すなわち、あるステップでその前段のステップの結果を利用する関係にある等の制約がない限り、順序を入れ替えてもよい。他の実施形態においても同様である。
【0057】
ログ取得部101は、車両に搭載されたECU10のセキュリティセンサが動作していることを示す死活監視ログを取得する(S101)。取得した死活監視ログは、セキュリティログ保存部109に保存する。
死活監視ログ記録部103は、ログ取得部101で死活監視ログを取得したことを死活監視テーブル保存部108に保存している死活監視テーブルに記録する(S102)。
未取得死活監視ログ記録部104は、ログ取得部101で取得していない未取得死活監視ログを特定するとともに、未取得死活監視ログを取得していない未取得期間を死活監視テーブル保存部108に保存している死活監視テーブルに記録する(S103)。
削除部106は、未取得監視ログの未取得期間と所定の期間を比較する(S104)。未取得期間が所定の期間以上の場合(S104:Y)、削除部106は、死活監視テーブルの未取得死活監視ログの記録を無効化、すなわち削除する(S105)。未取得期間が所定の期間より短い場合(S104:N)、処理を終了する。
【0058】
(3)小括
以上、本実施形態によれば、死活監視ログを用いて電子制御システムを構成する電子制御装置を特定するので、電子制御システムを構成する電子制御装置の情報を予め持っていなくてもよい。
また、死活監視ログの取得状況から未取得死活監視ログを特定することにより、電子制御システムから取り外されたECUや故障したECUを特定することができる。
さらに、未取得死活監視ログの未取得期間が所定の期間以上の場合死活監視テーブルから未取得監視ログの記録を削除するので、死活監視テーブルのサイズを小さくすることができ、死活監視テーブル保存部の容量やRAM等の内部記憶装置の容量を圧迫しないようにすることができる。
そして、未取得死活監視ログの記録を削除した後の死活監視テーブルに記録されている死活監視ログから電子制御システムを実際に構成している電子制御装置を特定することができるため、サイバー攻撃の異常検出パターンの判定対象を減らすことができ、サイバー攻撃の種類の特定に要する演算を少なくすることができる。
【0059】
(4)変形例1
本実施形態では、所定の期間は、死活監視ログを受信しないトリップが連続している回数としたが、これに代えて所定の期間を「計測する」ようにしてもよい。
ここで、「計測する」とは、時間を計測する場合の他、トリガーとなる事象の発生を検出して期間や回数を求める場合も含む。
【0060】
図6において、期間計測部105は、所定の期間を計測する。例えば、24時間等の一定の時間を計測することの他、ログ管理装置100の起動から終了までの時間やイグニッションONからイグニッションOFFまでの時間のように一定でない時間を計測することも含まれる。
【0061】
なお、期間計測部105は、本実施形態のように、ログ管理装置100の起動から終了までの期間又はイグニッションONからイグニッションOFFまでの期間をトリップとした場合、トリップを単位としてトリップの回数を計測、つまりカウントするようにしてもよい。
【0062】
(5)変形例2
本実施形態の死活監視テーブルは、車両の初回起動時、すなわち新車の段階においては空であることを前提としていた。そして、トリップ終了時やトリップ開始時には死活監視テーブルをリセットせず、前回のトリップの終了時の死活監視テーブルをそのまま引き継いで使用していた。
【0063】
一般的に、高価格かつ高機能の車両に搭載されるECUの種類及び数は、ボリュームゾーンにおける車両に搭載されるECUの種類及び数よりも多い。また、前者の車両のみに搭載されるECUだけでなく、後者の車両のみに搭載されるECUも存在する。そこで、本変形例の死活監視テーブルは、車両の初回起動時においては、搭載される可能性のあるECU10の既知の死活監視ログ全てが登録されている。
【0064】
このような死活監視テーブルを用いても、未取得死活監視ログを特定することにより、電子制御システムを構成していないECU10を特定することができる。そして、削除部106は、死活監視テーブルから未取得死活監視ログに相当する死活監視ログを削除することにより、実施形態1と同じ結果を得ることができる。
【0065】
3.実施形態2
(1)ログ管理装置200の構成
実施形態1のログ管理装置100は、死活監視テーブルから未取得死活監視ログの記録を削除することにより無効化していた。本実施形態では、死活監視テーブルから未取得死活監視ログの記録を削除せず、マスキングテーブルに記録することにより無効化している。
【0066】
図9は、本実施形態におけるログ管理装置200の構成を示すブロック図である。
図6で示される実施形態1のログ管理装置100と同様の構成は、
図6と同じ図番を付しており、実施形態1の説明を引用する。ログ管理装置200は、ログ取得部101、制御部202、出力部107、死活監視テーブル保存部108、セキュリティログ保存部109、及びマスクテーブル保存部210を備える。制御部202は、死活監視ログ記録部103、未取得死活監視ログ記録部104、及びマスキング部206をハードウェア又は/及びソフトウェアで実現する。
【0067】
マスキング部206(「無効化部」に相当)は、未取得死活監視ログの未取得期間が「所定の期間」「以上」の場合、死活監視テーブルの未取得死活監視ログの記録を「無効化する」。本実施形態においては、マスキング部206は、死活監視テーブルの要素をマスクするマスキング「テーブル」に未取得死活監視ログを記録することにより無効化している。
ここで、「テーブル」とは、データの集合であれば足り、表形式には限られない。
【0068】
図10は、マスキングテーブルを示す図である。
例えば、
図7において、死活監視ログ#4は、最後に取得されたトリップがトリップ番号5の時であり、未取得トリップ回数(C)が示すように、死活監視ログ#4を取得しないトリップが連続して5回発生している。そこで、マスキング部206は、死活監視テーブルの死活監視ログ#4の列(column)をマスクするため、マスキングテーブルに死活監視ログ#4を記録する。
【0069】
マスキングテーブルに記録する内容は、例えば
図7の死活監視ログ#4に対応する列に0を書き込むようにすることで、死活監視ログ#4を記録するようにしてもよい。そして、死活監視テーブルにマスキングテーブルを重ねて使用することで、死活監視テーブルの死活監視ログ#4の記録を無効化する。
【0070】
(2)ログ管理装置200の動作
ログ管理装置200の動作は、実施形態1のログ管理装置100の動作を示した
図8とS104及びS105の具体的な動作を除き基本的に同じであるので、実施形態1の記載及び
図8を引用する。
【0071】
マスキング部206は、未取得監視ログの未取得期間と所定の期間を比較する(S104)。未取得期間が所定の期間以上の場合(S104:Y)、マスキング部206は、死活監視テーブルの未取得死活監視ログの記録を無効化、すなわちマスキングテーブルに未取得死活監視ログを記録する(S105)。未取得期間が所定の期間より短い場合(S104:N)、処理を終了する。
【0072】
(3)小括
以上、本実施形態によれば、死活監視ログを用いて電子制御システムを構成する電子制御装置を特定するので、電子制御システムを構成する電子制御装置の情報を予め持っていなくてもよい。
また、死活監視ログの取得状況から未取得死活監視ログを特定することにより、電子制御システムから取り外されたECUや故障したECUを特定することができる。
そして、未取得死活監視ログの未取得期間が所定の期間以上の場合マスキングテーブルに未取得監視ログを記録するので、死活監視テーブルとマスキングテーブルを併用することにより電子制御システムを実際に構成している電子制御装置を特定することができるため、サイバー攻撃の異常検出パターンの判定対象を減らすことができ、サイバー攻撃の種類の特定に要する演算を少なくすることができる。
【0073】
(4)変形例
実施形態1の変形例1及び変形例2は、本実施形態にも適用できる。
【0074】
4.実施形態3
(1)ログ管理装置300の構成
本実施形態のログ管理装置300は、実施形態1のログ管理装置100又は実施形態2のログ管理装置200に、外部入力部308の構成を付加したものである。
【0075】
図11は、本実施形態におけるログ管理装置300の構成を示すブロック図である。
図6で示される実施形態1のログ管理装置100と同様の構成は、
図6と同じ図番を付しており、実施形態1の説明を引用する。ログ管理装置300は、ログ取得部101、制御部102、出力部107、外部入出力部308、死活監視テーブル保存部108、及びセキュリティログ保存部109を備える。
【0076】
外部入出力部308は、車両の外部から死活監視テーブルにアクセスするためのインターフェース及びこれに関連するソフトウェアやモジュール等である。例えば、電子制御システムSの診断に用いるダイアグツールを、有線通信を用いる方法で接続する。あるいは、遠隔地から通信を用いて診断を行うリモートダイアグ装置を、無線通信を用いる方法で接続する。
図11では、外部入出力部308は車載ネットワークを介さず直接車両の外部の機器等に接続する場合を記載しているが、外部入出力部308は、車載ネットワークを介して、外部通信ECU10b等の他の通信機器を用いて車両の外部の機器等に接続するようにしてもよい。
【0077】
本実施形態では、外部入出力部308が無線通信を用いる方法で車両の外部から死活監視テーブルにアクセスする場合、外部入出力部308は、死活監視テーブルの読出しは許可し、死活監視テーブルの消去は禁止する。さらに、死活監視テーブルの変更も禁止してもよい。なお、読出しも禁止する等、これ以外の設定をしてもよい。
【0078】
また、本実施形態では、外部入出力部308が有線通信を用いる方法で車両の外部から死活監視テーブルにアクセスする場合、外部入出力部308は、死活監視テーブルの読出し及び消去を許可する。さらに、死活監視テーブルの変更も許可してもよい。なお、消去は禁止する等、これ以外の設定をしてもよい。
【0079】
このように、外部入出力部308が用いる通信方式に応じて死活監視テーブルの読出し、消去、変更の許可若しくは禁止を設定することにより、なりすましにより死活監視テーブルの改ざんや破壊を防止することができる。
【0080】
外部入出力部308を介して車両の外部から死活監視テーブルを読出す場合、外部入出力部308は死活監視テーブル保存部107に保存されている死活監視テーブルを出力する。外部入出力部308は、死活監視テーブルをそのまま出力してもよいが、外部との通信に用いるフォーマットに変換して出力してもよい。
【0081】
また、外部入出力部308は、死活監視テーブルに記録されているイベント特定ID(「識別情報」に相当)の数を含めた死活監視テーブルを出力してもよい。
図12は、外部入出力部308から出力する死活監視テーブルの例である。この例によれば、外部入出力部308は、出力する死活監視テーブルに記録されているイベント特定IDの数が3つであるので、イベント特定IDの数として3を出力している。そして、死活監視テーブルに記録している死活監視ログの番号順に出力している。
このように、イベント特定IDの数を出力することにより、ダイアグツール等の側で受信した死活監視テーブルに欠損がないかを確認することができる。
【0082】
なお、本実施形態では、イベント特定IDの数を外部入出力部308が生成するようにしているが、死活監視ログ記録部103が生成するようにしてもよい。
【0083】
(2)ログ管理装置300の動作
次に、
図13を参照して、ログ管理装置300の動作を説明する。
図13は、外部入出力部308を介して外部の機器等からからアクセスがあった場合の動作である。
外部入出力部308は、接続された外部の機器等が無線通信を用いる方法でアクセスしているか、有線通信を用いる方法でアクセスしているかを検出する(S301)。無線通信を用いる方法でアクセスしている場合(S301:無線)、外部入出力部308は、アクセスの目的を検出する(S302)。アクスセスの目的が読出しの場合(S302:読出)、外部入出力部308は、死活監視テーブル保存部107に保存されている死活監視テーブルに記録されているイベント特定IDの数を設定し、これを含めた死活監視テーブルを出力する(S303)。アクセスの目的が消去の場合(S302:消去)、外部入出力部308は死活監視テーブルの消去を禁止し、アクセスを許可しない。
これに対し、有線通信を用いる方法でアクセスしている場合(S301:有線)、外部入出力部308は、アクセスの目的を検出する(S304)。アクスセスの目的が読出しの場合(S304:読出)、外部入出力部308は、S303と同様の処理を行う。アクセスの目的が消去の場合(S304:消去)、外部入出力部308は死活監視テーブルの消去を許可し、死活監視テーブルが消去される。
【0084】
(3)小括
以上、本実施形態によれば、外部入出力部が用いる通信方式に応じて死活監視テーブルの読出しや消去の許可若しくは禁止を設定することにより、なりすましにより死活監視テーブルの改ざんや破壊を防止することができる。
【0085】
5.総括
以上、本発明の各実施形態におけるログ管理装置等の特徴について説明した。
【0086】
各実施形態で使用した用語は例示であるので、同義の用語、あるいは同義の機能を含む用語に置き換えてもよい。
【0087】
実施形態の説明に用いたブロック図は、装置の構成を機能毎に分類及び整理したものである。それぞれの機能を示すブロックは、ハードウェア又はソフトウェアの任意の組み合わせで実現される。また、機能を示したものであることから、かかるブロック図は方法の発明、及び当該方法を実現するプログラムの発明の開示としても把握できるものである。
【0088】
各実施形態に記載した処理、フロー、及び方法として把握できる機能ブロック、については、一のステップでその前段の他のステップの結果を利用する関係にある等の制約がない限り、順序を入れ替えてもよい。
【0089】
各実施形態、及び特許請求の範囲で使用する、第1、第2、乃至、第N(Nは整数)、の用語は、同種の2以上の構成や方法を区別するために使用しており、順序や優劣を限定するものではない。
【0090】
また、本発明のログ管理装置の形態の例として、以下のものが挙げられる。
部品の形態として、半導体素子、電子回路、モジュール、マイクロコンピュータが挙げられる。
半完成品の形態として、電子制御装置(ECU(Electric Control Unit))、システムボードが挙げられる。
完成品の形態として、携帯電話、スマートフォン、タブレット、パーソナルコンピュータ(PC)、ワークステーション、サーバが挙げられる。
その他、通信機能を有するデバイス等を含み、例えばビデオカメラ、スチルカメラ、カーナビゲーションシステムが挙げられる。
【0091】
またログ管理装置に、アンテナや通信用インターフェースなど、必要な機能を追加してもよい。
【0092】
本発明のログ管理装置は、特にサーバ側で用いられることにより、各種サービスの提供を目的とするために用いられることが想定される。かかるサービスの提供に伴い、本発明のログ管理装置が使用され、本発明の方法が使用され、又は/及び本発明のプログラムが実行されることになる。
【0093】
加えて、本発明は、各実施形態で説明した構成及び機能を有する専用のハードウェアで実現できるだけでなく、メモリやハードディスク等の記録媒体に記録した本発明を実現するためのプログラム、及びこれを実行可能な専用又は汎用CPU及びメモリ等を有する汎用のハードウェアとの組み合わせとしても実現できる。
【0094】
専用や汎用のハードウェアの非遷移的実体的記録媒体(例えば、外部記憶装置(ハードディスク、USBメモリ、CD/BD等)、又は内部記憶装置(RAM、ROM等))に格納されるプログラムは、記録媒体を介して、あるいは記録媒体を介さずにサーバから通信回線を経由して、専用又は汎用のハードウェアに提供することもできる。これにより、プログラムのアップグレードを通じて常に最新の機能を提供することができる。
【産業上の利用可能性】
【0095】
本発明のログ管理装置は、主として自動車に搭載された電子制御システムが受けたサイバー攻撃を分析する装置を対象としているが、自動車に搭載されない通常のシステムに対する攻撃を分析する装置を対象としてもよい。
【符号の説明】
【0096】
10 ECU、100,200,300 ログ管理装置、101 ログ取得部、102,202 制御部、103 死活監視ログ記録部、104 未取得死活監視ログ記録部、105 期間計測部、106 削除部、107 出力部、108 死活監視テーブル保存部、109 セキュリティログ保存部、206 マスキング部、210 マスキングテーブル保存部、20 外部装置