JP2020102771A - 電子制御装置、電子制御装置の制御方法及びプログラム - Google Patents
電子制御装置、電子制御装置の制御方法及びプログラム Download PDFInfo
- Publication number
- JP2020102771A JP2020102771A JP2018240039A JP2018240039A JP2020102771A JP 2020102771 A JP2020102771 A JP 2020102771A JP 2018240039 A JP2018240039 A JP 2018240039A JP 2018240039 A JP2018240039 A JP 2018240039A JP 2020102771 A JP2020102771 A JP 2020102771A
- Authority
- JP
- Japan
- Prior art keywords
- frames
- frame
- received
- unit
- determination
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Small-Scale Networks (AREA)
Abstract
【課題】時間情報を用いることなく、攻撃を検出することができる電子制御装置を提供する。【解決手段】電子制御装置10は、ECU8から送信された複数のCANフレームを、CANバス4を介して受信する受信部12と、ECU8から同一送信周期で送信される複数のCANフレームの種類数と同数のCANフレームが受信部12で受信される期間である判定期間内に、同一送信周期で送信された同一種類のフレームが2個以上受信部12で受信された場合に、CANフレームが異常であると判定する判定部16とを備える。【選択図】図1
Description
本開示は、電子制御装置、電子制御装置の制御方法及びプログラムに関する。
近年、車両の加減速、操舵及び制動等の運転操作を自動で行う自動運転システムが知られている。この自動運転システムは、車両の運転操作を制御するための複数のECU(Electric Control Unit)を備えている。複数のECUは、共通のCAN(Controller Area Network)バスに接続されている。これにより、送信側のECUから送信されたCANフレームは、CANバスを介して受信側のECUで受信される。
上述した自動運転システムでは、例えばハッキング等により不正なCANフレームがCANバス上に侵入した場合に、ECUが誤動作するおそれがある。そのため、不正なCANフレームの侵入等の攻撃を検出するための監視装置が提案されている(例えば、特許文献1参照)。
上述した従来の監視装置では、周期フィルタ等から取得したCANフレームの受信時刻を示す時間情報に基づいて、当該CANフレームの周期の乱れを検出することにより、CANバスへの不正なCANフレームの侵入を検出する。
しかしながら、例えばAUTOSAR(登録商標)(Automotive Open System Architecture)を搭載したECUでは、その仕様上、場合によっては、CANフレームの受信時刻を示す時間情報を使用することができない。そのため、攻撃を検出する機能を備えたECUにAUTOSARを搭載した際に、時間情報を取得できない場合には、時間情報を使用する従来の周期監視又は頻度監視を行うことができないという課題が生じる。
そこで、本開示は、時間情報を用いることなく、攻撃を検出することができる電子制御装置、電子制御装置の制御方法及びプログラムを提供する。
本開示の一態様に係る電子制御装置は、ネットワークを介して通信装置と通信可能な電子制御装置であって、前記通信装置から送信された複数のフレームを、前記ネットワークを介して受信する受信部と、前記通信装置から同一送信周期で送信される複数のフレームの種類数と同数のフレームが前記受信部で受信される期間である第1の判定期間内に、前記同一送信周期で送信された同一種類のフレームが2個以上前記受信部で受信された場合に、フレームが異常であると判定する判定部と、を備える。
なお、これらの包括的又は具体的な態様は、システム、方法、集積回路、コンピュータプログラム又はコンピュータで読み取り可能なCD−ROM(Compact Disc−Read Only Memory)等の記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
本開示の一態様に係る電子制御装置等によれば、時間情報を用いることなく、攻撃を検出することができる。
本開示の一態様に係る電子制御装置は、ネットワークを介して通信装置と通信可能な電子制御装置であって、前記通信装置から送信された複数のフレームを、前記ネットワークを介して受信する受信部と、前記通信装置から同一送信周期で送信される複数のフレームの種類数と同数のフレームが前記受信部で受信される期間である第1の判定期間内に、前記同一送信周期で送信された同一種類のフレームが2個以上前記受信部で受信された場合に、フレームが異常であると判定する判定部と、を備える。
本態様によれば、判定部は、同一送信周期で送信された同一種類のフレームが第1の判定期間内に2個以上受信部で受信された場合に、フレームが異常であると判定する。これにより、例えばフレームの受信時刻等の時間情報を用いることなく、不正なフレームの侵入等の攻撃を検出することができる。
例えば、前記電子制御装置は、さらに、前記通信装置から前記同一送信周期で送信される複数のフレームをグルーピングしたグループを示すグループ情報を記憶する記憶部を備え、前記判定部は、前記グループ情報に基づいて前記受信部で受信されたフレームが属する前記グループを特定し、特定した前記グループに属する複数のフレームの種類数と同数のフレームが前記第1の判定期間内に前記受信部で受信された際に、前記同一送信周期で送信された同一種類のフレームが2個以上前記受信部で受信されたか否かを判定するように構成してもよい。
本態様によれば、判定部は、グループ情報を参照することにより、同一送信周期で送信された同一種類のフレームが2個以上受信部で受信されたか否かを容易に判定することができる。
例えば、前記判定部は、前記同一送信周期で送信された同一種類のフレームが前記第1の判定期間内に2個以上前記受信部で受信された場合に、当該第1の判定期間内に複数のフレームがそれぞれ前記受信部で受信された複数の受信タイミングをそれぞれ起点とする複数の検証用判定期間毎に、前記同一送信周期で送信された同一種類のフレームが当該検証用判定期間内に2個以上前記受信部で受信されたか否かを判定し、過半数の前記検証用判定期間において、前記同一送信周期で送信された同一種類のフレームが2個以上前記受信部で受信された場合には、フレームが異常であると判定するように構成してもよい。
本態様によれば、例えば通信装置によるフレームの送信周期の乱れが発生した際に、送信周期の乱れた正常なフレームを異常であると誤検出するのを回避することができる。
例えば、前記判定部は、前記同一送信周期で送信された同一種類のフレームが前記第1の判定期間内に2個以上前記受信部で受信された際に、前記第1の判定期間を、前記種類数のn倍(nは2以上の整数)の数のフレームが前記受信部で受信される期間である拡張判定期間に拡張し、前記同一送信周期で送信された複数のフレームが前記拡張判定期間内にフレームの種類毎にn個ずつ前記受信部で受信された場合に、前記第1の判定期間内に受信されたフレームが正常であると判定するように構成してもよい。
本態様によれば、例えば通信装置によるフレームの送信周期の乱れが発生した際に、送信周期の乱れた正常なフレームを異常であると誤検出するのを回避することができる。
例えば、前記判定部は、前記同一送信周期と異なる送信周期で送信されたフレームが前記第1の判定期間内に前記受信部で受信された個数が閾値以上である場合に、当該第1の判定期間の次の周期の前記第1の判定期間の開始タイミングを、前記同一送信周期で送信された複数のフレームが前記受信部でそれぞれ受信された複数の受信タイミングのいずれかに変更するように構成してもよい。
本態様によれば、例えば通信装置によるフレームの送信周期の乱れが発生した際に、送信周期の乱れた正常なフレームを異常であると誤検出するのを回避することができる。
例えば、前記判定部は、前記複数の受信タイミングの中から、前記同一送信周期と異なる送信周期で送信されたフレームが前記第1の判定期間内に前記受信部で受信される個数が最も少なくなる前記受信タイミングを選択し、選択した前記受信タイミングを前記第1の判定期間の開始タイミングとして決定するように構成してもよい。
本態様によれば、開始タイミングを変更した第1の判定期間を効率良く短縮化することができる。
例えば、前記判定部は、さらに、同一の前記通信装置から送信された複数のフレームの種類数と同数のフレームが前記受信部で受信される期間である第2の判定期間内に、前記同一の通信装置から送信された同一種類のフレームが2個以上前記受信部で受信された場合に、フレームが異常であると判定するように構成してもよい。
本態様によれば、不正なフレームの侵入等の攻撃を確実に検出することができる。
例えば、前記判定部は、前記通信装置から前記同一送信周期で送信される複数のフレームの種類数と同数のフレームが前記第1の判定期間内に前記受信部で受信されたタイミングで、前記同一送信周期で送信された同一種類のフレームが前記第1の判定期間内に2個以上前記受信部で受信されたか否かを判定するように構成してもよい。
本態様によれば、判定部は、第1の判定期間が完結したタイミングで、同一送信周期で送信された同一種類のフレームが第1の判定期間内に2個以上受信部で受信されたか否かを判定することができる。
例えば、前記判定部は、前記通信装置から前記同一送信周期で送信された複数のフレームの種類数よりも少ない数のフレームが前記第1の判定期間内に前記受信部で受信された状態で、前記同一送信周期で送信された同一種類のフレームが2回前記受信部で受信されたタイミングで、フレームが異常であると判定するように構成してもよい。
本態様によれば、判定部は、同一送信周期で送信された同一種類のフレームが2回受信部で受信されたタイミングで、フレームが異常であると判定する。これにより、不正なフレームの侵入等の攻撃をリアルタイムに検出することができる。
本開示の一態様に係る電子制御装置の制御方法は、ネットワークを介して通信装置と通信可能な電子制御装置の制御方法であって、前記通信装置から送信された複数のフレームを、前記ネットワークを介して受信するステップと、前記通信装置から同一送信周期で送信される複数のフレームの種類数と同数のフレームが前記受信部で受信される期間である第1の判定期間内に、前記同一送信周期で送信された同一種類のフレームが2個以上前記受信部で受信された場合に、フレームが異常であると判定するステップと、を含む。
本態様によれば、同一送信周期で送信された同一種類のフレームが第1の判定期間内に2個以上受信された場合に、フレームが異常であると判定する。これにより、例えばフレームの受信時刻等の時間情報を用いることなく、不正なフレームの侵入等の攻撃を検出することができる。
本開示の一態様に係るプログラムは、通信装置から送信された複数のフレームを、ネットワークを介して受信する処理と、前記通信装置から同一送信周期で送信される複数のフレームの種類数と同数のフレームが前記受信部で受信される期間である第1の判定期間内に、前記同一送信周期で送信された同一種類のフレームが2個以上前記受信部で受信された場合に、フレームが異常であると判定する処理と、をコンピュータに実行させる。
本態様によれば、同一送信周期で送信された同一種類のフレームが第1の判定期間内に2個以上受信された場合に、フレームが異常であると判定する。これにより、例えばフレームの受信時刻等の時間情報を用いることなく、不正なフレームの侵入等の攻撃を検出することができる。
なお、これらの包括的又は具体的な態様は、システム、方法、集積回路、コンピュータプログラム又はコンピュータで読み取り可能なCD−ROM等の記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム又は記録媒体の任意な組み合わせで実現されてもよい。
以下、実施の形態について、図面を参照しながら具体的に説明する。
なお、以下で説明する実施の形態は、いずれも包括的又は具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序等は、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
(実施の形態1)
[1−1.通信システムの概要]
まず、図1を参照しながら、実施の形態1に係る通信システム2の概要について説明する。図1は、実施の形態1に係る通信システム2の概要を示すブロック図である。
[1−1.通信システムの概要]
まず、図1を参照しながら、実施の形態1に係る通信システム2の概要について説明する。図1は、実施の形態1に係る通信システム2の概要を示すブロック図である。
実施の形態1に係る通信システム2は、例えば自動車等の車両に搭載された、車両の運転操作を自動で行うための自動運転システムである。図1に示すように、通信システム2は、複数のCANバス4(ネットワークの一例)と、ゲートウェイECU6と、複数のECU8(通信装置の一例)と、電子制御装置10とを備えている。
複数のCANバス4は、CANプロトコルに従ったCANフレーム(フレームの一例)を通信するための車載ネットワークであり、車両の内部に構築されている。
ゲートウェイECU6は、複数のCANバス4にCANフレームを送受信するための電子制御ユニットである。ゲートウェイECU6は、複数のCANバス4を介して、複数のECU8及び電子制御装置10と接続されている。
複数のECU8の各々は、先進運転者支援システム(ADAS:Advanced Driver Assistance System)における車両の自動運転操作を制御するための電子制御ユニットである。具体的には、複数のECU8の各々は、例えば、車両の加減速、操舵及び制動等を制御する。複数のECU8の各々は、CANバス4と接続されている。複数のECU8の各々は、CANバス4に対してCANフレームを送受信する。
なお、CANフレームは、CANプロトコルで規定されたデータフレームである。CANフレームは、例えば、SOF(Start Of Frame)、ID(Identification)フィールド、RTR(Remote Transmission Request)、コントロールフィールド、データフィールド、CRC(Cyclic Redundancy Check)フィールド、ACK(Acknowledgement)フィールド、及び、EOF(End Of Frame)の各フィールドで構成される。
ここで、IDフィールドは、11ビットで構成された、CANフレームの種類を示す値であるID(いわゆる、CAN ID)を格納するためのフィールドである。複数のECU8の各々は、ID毎に予め定められた送信周期で、CANフレームをCANバス4に送信する。
電子制御装置10は、複数のECU8の各々から送信されたCANフレームを受信することにより、不正なCANフレームの侵入等の攻撃を検出するための装置である。電子制御装置10は、複数のCANバス4を介して、ゲートウェイECU6及び複数のECU8と接続されている。電子制御装置10の機能構成については後述する。
なお、電子制御装置10は、例えば、プロセッサ及びメモリ等で構成されたデジタル回路、アナログ回路及び通信回路等を含む。メモリは、ROM(Read Only Memory)又はRAM(Random Access Memory)等であり、プロセッサにより実行されるプログラム(すなわち、ソフトウェアとしてのコンピュータプログラム)を記憶する。例えばプロセッサがプログラムに従って動作することにより、電子制御装置10は各種機能を実現する。
[1−2.電子制御装置の機能構成]
次に、図1〜図2Bを参照しながら、実施の形態1に係る電子制御装置10の機能構成について説明する。図2Aは、実施の形態1に係るグループ情報20の一例を示す図である。図2Bは、実施の形態1に係る受信回数情報22の一例を示す図である。
次に、図1〜図2Bを参照しながら、実施の形態1に係る電子制御装置10の機能構成について説明する。図2Aは、実施の形態1に係るグループ情報20の一例を示す図である。図2Bは、実施の形態1に係る受信回数情報22の一例を示す図である。
図1に示すように、電子制御装置10は、受信部12と、記憶部14と、判定部16と、制御部18とを備えている。
受信部12は、複数のECU8からそれぞれ送信された複数のCANフレームを、複数のCANバス4を介して受信する。受信部12は、受信した複数のCANフレームを判定部16に出力する。
記憶部14は、グループ情報20及び受信回数情報22を記憶するためのメモリである。グループ情報20は、送信周期毎に、複数のECU8から同一送信周期で送信される複数のCANフレームをグルーピングしたグループを示す情報である。グループ情報20は、例えば図2Aに示すように、グループと当該グループに属するCANフレームとの対応関係を示すデータテーブルである。
図2Aに示す例では、CANフレームA(ID:0x100)、CANフレームB(ID:0x200)及びCANフレームC(ID:0x300)は、各々のIDにより予め定められた送信周期が同一(10ms)であるため、「グループA」としてグルーピングされている。すなわち、グループAに属するCANフレームの種類数は、「3個」である。なお、CANフレームA、CANフレームB及びCANフレームCは、同一のECU8から送信されてもよく、あるいは、互いに異なる複数のECU8からそれぞれ送信されてもよい。
また、図2Aに示す例では、CANフレームD(ID:0x400)及びCANフレームE(ID:0x500)は、各々のIDにより予め定められた送信周期が同一(30ms)であるため、「グループB」としてグルーピングされている。すなわち、グループBに属するCANフレームの種類数は、「2個」である。
受信回数情報22は、グループ情報20に記憶されたグループ毎に、判定期間(第1の判定期間の一例)内に受信部12で受信されたCANフレームの受信回数を記憶する。ここで、判定期間は、複数のECU8から同一送信周期で送信される複数のCANフレームの種類数と同数のCANフレームが受信部12で受信される期間であり、グループ情報20に記憶されたグループ毎に設定される。例えば、グループAについての判定期間では、グループAに属するCANフレームの種類数(3個)と同数の、グループAに属する3個のCANフレームが受信部12で受信される。同様に、グループBについての判定期間では、グループBに属するCANフレームの種類数(2個)と同数の、グループBに属する2個のCANフレームが受信部12で受信される。
受信回数情報22は、例えば図2Bに示すように、グループ情報20に記憶されたグループ毎に、各グループに属する複数のCANフレームの各受信回数を示すデータテーブルである。図2Bに示す例では、グループAについての判定期間内に、CANフレームA、CANフレームB及びCANフレームCがそれぞれ1回ずつ受信されたことを示している。
判定部16は、記憶部14に記憶されたグループ情報20に基づいて、受信部12で受信された複数のCANフレームの各々が属するグループを特定する。例えばCANフレームAが受信部12で受信された場合には、判定部16は、グループ情報20に基づいて、CANフレームAが属するグループとして「グループA」を特定する。なお、判定部16は、CANフレームが判定期間内に受信部12で受信される毎に、記憶部14に記憶された受信回数情報22のうち、受信された当該CANフレームの受信回数を「1回」加算する。
また、判定部16は、記憶部14に記憶された受信回数情報22に基づいて、特定したグループに属する複数のCANフレームの種類数と同数のCANフレームが判定期間内に受信部12で受信されたタイミングで、同一送信周期で送信された同一種類のCANフレームが判定期間内に2個以上受信部12で受信されたか否かを判定する。例えば、グループAに属する複数のCANフレームの種類数(3個)と同数の、グループAに属する3個のCANフレームが判定期間内に受信部12で受信されたタイミングで、判定部16は、CANフレームA、CANフレームB及びCANフレームCのうちいずれか1種類のCANフレームが2個以上受信部12で受信されたか否かを判定する。
判定部16は、同一送信周期で送信された同一種類のCANフレームが判定期間内に2個以上受信部12で受信された場合には、当該同一種類のCANフレームが異常であると判定する。例えば、CANフレームAが判定期間内に2個受信部12で受信された場合には、判定部16は、CANフレームが異常である(すなわち、車両が攻撃を受けた)と判定する。一方、判定部16は、同一送信周期で送信された同一種類のCANフレームが判定期間内に2個以上受信部12で受信されない場合には、当該判定期間内に受信された複数のCANフレームが全て正常である(すなわち、車両が攻撃を受けていない)と判定する。例えば、CANフレームA、CANフレームB及びCANフレームCが判定期間内にそれぞれ1個ずつ受信部12で受信された場合には、判定部16は、CANフレームA、CANフレームB及びCANフレームCが全て正常である(すなわち、車両が攻撃を受けていない)と判定する。なお、判定部16は、上述した判定を行った後に、記憶部14に記憶された受信回数情報22のうち、判定期間内に受信部12で受信された複数のCANフレームの各受信回数を「0回」にリセットする。
なお、本明細書において、「CANフレームが異常であると判定する」とは、車両が攻撃を受けたと判定することを意味し、「CANフレームが正常であると判定する」とは、車両が攻撃を受けていないと判定することを意味するものとする。
制御部18は、例えばCPU(Central Processing Unit)等で構成された制御回路であり、電子制御装置10の動作を統括的に制御する。
[1−3.電子制御装置の動作]
次に、図3〜図4Cを参照しながら、実施の形態1に係る電子制御装置10の動作について説明する。図3は、実施の形態1に係る電子制御装置10の動作の流れを示すフローチャートである。図4Aは、実施の形態1に係る通信システム2において車両が攻撃を受けていない正常時における、各CANフレームのグルーピング方法を示す図である。図4B及び図4Cは、実施の形態1に係る通信システム2において車両が攻撃を受けた異常時における、各CANフレームのグルーピング方法及び異常検出方法を示す図である。
次に、図3〜図4Cを参照しながら、実施の形態1に係る電子制御装置10の動作について説明する。図3は、実施の形態1に係る電子制御装置10の動作の流れを示すフローチャートである。図4Aは、実施の形態1に係る通信システム2において車両が攻撃を受けていない正常時における、各CANフレームのグルーピング方法を示す図である。図4B及び図4Cは、実施の形態1に係る通信システム2において車両が攻撃を受けた異常時における、各CANフレームのグルーピング方法及び異常検出方法を示す図である。
なお、説明の都合上、図4A〜図4Cにおいて、CANフレームAを「〇(丸)」、CANフレームBを「△(三角)」、CANフレームCを「□(四角)」でそれぞれ示している。
図3に示すように、まず、受信部12は、ECU8から送信されたCANフレームを受信する(S101)。受信部12は、受信したCANフレームを判定部16に出力する。なお、本実施の形態では、受信部12がグループAに属するCANフレーム(CANフレームA、CANフレームB及びCANフレームC)を受信する場合について説明する。
判定部16は、記憶部14に記憶されたグループ情報20に基づいて、受信部12で受信されたCANフレームが属するグループとして「グループA」を特定する(S102)。判定部16は、記憶部14に記憶された受信回数情報22に基づいて、特定したグループAについての判定期間が設定済みであるか否かを判定する(S103)。特定したグループAについての判定期間が設定済みでない、換言すると、受信回数情報22のうち特定したグループAに属する複数のCANフレームの各受信回数がいずれも「0回」である場合には(S103でNO)、判定部16は、新規にグループAについての判定期間を設定する(S104)。この場合、判定部16は、新規に設定した判定期間内に受信部12で受信されたCANフレームの受信個数を「1個」加算する(S105)。なお、この加算処理は、例えば記憶部14に記憶された受信回数情報22を用いて行われる。
一方、特定したグループAについての判定期間が設定済みである、換言すると、受信回数情報22のうち特定したグループAに属する複数のCANフレームのいずれかの受信回数が「1回」又は「2回」である場合には(S103でYES)、判定部16は、既に設定された判定期間内に受信部12で受信されたCANフレームの受信個数を「1個」加算する(S105)。
その後、判定部16は、特定したグループAに属する複数のCANフレームの種類数(3個)と同数の3個のCANフレームが判定期間内に受信部12で受信されたか否かを判定する(S106)。判定期間内におけるCANフレームの受信個数が3個未満である場合には(S106でNO)、ステップS101に戻り、上述と同様にステップS101〜S105を再度実行する。
一方、判定期間内におけるCANフレームの受信個数が3個に到達した場合には(S106でYES)、判定部16は、当該判定期間を完結する(S107)。その後、判定部16は、記憶部14に記憶された受信回数情報22に基づいて、同一送信周期で送信されたグループAに属する同一種類の(すなわち、同一IDの)のCANフレームが判定期間内に2個以上受信部12で受信されたか否かを判定する(S108)。
例えば図4Aに示すように、グループAに属する同一種類のCANフレームが判定期間T(T1,T2,T3)内に2個以上受信部12で受信されていない場合には(S108でNO)、判定部16は、当該判定期間T内に受信された複数のCANフレームが全て正常であると判定する(S109)。図4Aに示す例では、CANフレームA、CANフレームB及びCANフレームCが各判定期間T1,T2,T3内にそれぞれ1個ずつ受信部12で受信されている。この場合、判定部16は、判定期間T1,T2,T3内に受信部12で受信されたCANフレームA、CANフレームB及びCANフレームCが全て正常であると判定する。
なお、図4Aに示すように、判定期間T1内では、CANフレームA、CANフレームB及びCANフレームCの順に受信部12で受信され、判定期間T2内では、CANフレームB、CANフレームA及びCANフレームCの順に受信部12で受信され、判定期間T3内では、CANフレームB、CANフレームC及びCANフレームAの順に受信部12で受信されている。これは、ECU8によるCANフレームの送信周期の乱れに起因するものであるが、判定期間T1,T2,T3内におけるCANフレームの受信順序の入れ替わりは許容されるものとし、異常とは判定されない。
図3に戻り、ステップS109の後に、CANフレームの受信を継続する場合には(S110でYES)、ステップS101に戻る。一方、CANフレームの受信を継続しない場合には(S110でNO)、処理を終了する。
ステップS108に戻り、例えば図4B及び図4Cに示すように、グループAに属する同一種類のCANフレームが判定期間T内に2個以上受信部12で受信された場合には(S108でYES)、判定部16は、CANフレームが異常であると判定する(S111)。
図4Bに示す例では、判定期間T3内で不正なCANフレームCの侵入による攻撃(すなわち、不正なCANフレームをCANバス4に追加する攻撃)を受けたために、同一種類のCANフレームCが判定期間T3内に2個受信部12で受信されている。なお、不正なCANフレームCは、例えばハッキング等によりCANバス4に侵入した、正常なCANフレームCと同一IDのデータフレームである。この場合、判定部16は、CANフレームが異常であると判定する。
一方、図4Cに示す例では、判定期間T2内でECU8からのCANフレームCの送信を妨害する攻撃(すなわち、診断メッセージ等を送信することにより、ECU8によるCANフレームの送信を一時的に停止させる攻撃)を受けたために、判定期間T2内では、CANフレームCが受信部12で受信されずに、CANフレームB、CANフレームA及びCANフレームBの順に受信部12で受信される。その結果、同一種類のCANフレームBが判定期間T2内に2個受信部12で受信される。この場合、判定部16は、CANフレームが異常であると判定する。
図3に戻り、ステップS111の後に、CANフレームの受信を継続する場合には(S110でYES)、ステップS101に戻る。一方、CANフレームの受信を継続しない場合には(S110でNO)、処理を終了する。
[1−4.効果]
上述したように、判定部16は、同一送信周期で送信された同一種類のCANフレームが判定期間内に2個以上受信部12で受信された場合には、CANフレームが異常であると判定する。これにより、例えばCANフレームの受信時刻等の時間情報を用いることなく、不正なCANフレームの侵入等の攻撃を検出することができる。その結果、ECU8が時間情報を使用できない場合であっても、攻撃を検出することができる。
上述したように、判定部16は、同一送信周期で送信された同一種類のCANフレームが判定期間内に2個以上受信部12で受信された場合には、CANフレームが異常であると判定する。これにより、例えばCANフレームの受信時刻等の時間情報を用いることなく、不正なCANフレームの侵入等の攻撃を検出することができる。その結果、ECU8が時間情報を使用できない場合であっても、攻撃を検出することができる。
[1−5.変形例]
本実施の形態では、グループAに属する複数のCANフレームの種類数を3個としたが、これに限定されず、2個又は4個以上の任意の数でもよい。この時、グループAに属する複数のCANフレームの種類数を多くすることにより、グループAに属する全てのCANフレームを不正なCANフレームとしてCANバス4に侵入させる攻撃(すなわち、検出を回避する攻撃)を回避することができる。例えば、送信周期が20msである10個のCANフレームがグループAに属する場合、不正な10個のCANフレームを、正規の10個のCANフレームが受信される2つの判定期間の間に侵入させることは困難となる。
本実施の形態では、グループAに属する複数のCANフレームの種類数を3個としたが、これに限定されず、2個又は4個以上の任意の数でもよい。この時、グループAに属する複数のCANフレームの種類数を多くすることにより、グループAに属する全てのCANフレームを不正なCANフレームとしてCANバス4に侵入させる攻撃(すなわち、検出を回避する攻撃)を回避することができる。例えば、送信周期が20msである10個のCANフレームがグループAに属する場合、不正な10個のCANフレームを、正規の10個のCANフレームが受信される2つの判定期間の間に侵入させることは困難となる。
また、本実施の形態では、複数のECU8から同一送信周期で送信される複数のCANフレームの種類数と同数のCANフレームが判定期間内に受信部12で受信された際に、当該判定期間を完結したが、これに限定されない。例えば、グループAに属する全種類のCANフレーム(CANフレームA、CANフレームB及びCANフレームC)が判定期間内に受信部12で受信された際に、当該判定期間を完結してもよい。これにより、例えばCANフレームA、CANフレームB及びCANフレームCがこの順に判定期間内に受信部12で受信される場合に、当該判定期間内でCANフレームAとCANフレームBとの間に不正なCANフレームAが受信部12で受信されたとする。この場合、上記判定期間内に同一種類のCANフレームAが2個受信部12で受信されるため、判定部16は、CANフレームが異常であると判定することができる。
(実施の形態2)
[2−1.電子制御装置の機能構成]
次に、図1を参照しながら、実施の形態2に係る電子制御装置10Aの機能構成について説明する。図1は、実施の形態2に係る通信システム2Aの概要を示すブロック図である。なお、以下に示す各実施の形態において、上記実施の形態1と同一の構成要素には同一の符号を付して、その説明を省略する。
[2−1.電子制御装置の機能構成]
次に、図1を参照しながら、実施の形態2に係る電子制御装置10Aの機能構成について説明する。図1は、実施の形態2に係る通信システム2Aの概要を示すブロック図である。なお、以下に示す各実施の形態において、上記実施の形態1と同一の構成要素には同一の符号を付して、その説明を省略する。
図1に示すように、実施の形態2に係る通信システム2Aの電子制御装置10Aでは、判定部16Aによる判定のタイミングが上記実施の形態1と異なっている。具体的には、判定部16Aは、複数のECU8から同一送信周期で送信された複数のCANフレームの種類数よりも少ない数のCANフレームが判定期間内に受信部12で受信された状態(すなわち、判定期間が完結していない状態)で、同一送信周期で送信された同一種類のCANフレームが2回受信部12で受信されたタイミングで、CANフレームが異常であると判定する。
[2−2.電子制御装置の動作]
図5及び図6を参照しながら、実施の形態2に係る電子制御装置10Aの動作について説明する。図5は、実施の形態2に係る電子制御装置10Aの動作の流れを示すフローチャートである。図6は、実施の形態2に係る通信システム2Aにおいて車両が攻撃を受けた異常時における、各CANフレームのグルーピング方法及び異常検出方法を示す図である。なお、図5のフローチャートにおいて、図3のフローチャートの処理と同一の処理には同一のステップ番号を付して、その説明を省略する。
図5及び図6を参照しながら、実施の形態2に係る電子制御装置10Aの動作について説明する。図5は、実施の形態2に係る電子制御装置10Aの動作の流れを示すフローチャートである。図6は、実施の形態2に係る通信システム2Aにおいて車両が攻撃を受けた異常時における、各CANフレームのグルーピング方法及び異常検出方法を示す図である。なお、図5のフローチャートにおいて、図3のフローチャートの処理と同一の処理には同一のステップ番号を付して、その説明を省略する。
図5に示すように、上記実施の形態1と同様に、まず、ステップS101〜S105が実行される。なお、本実施の形態では、上記実施の形態1と同様に、ステップS101において受信部12がグループAに属するCANフレーム(CANフレームA、CANフレームB及びCANフレームC)を受信する場合について説明する。
ステップS105の後に、判定部16Aは、記憶部14に記憶された受信回数情報22に基づいて、同一送信周期で送信されたグループAに属する同一種類のCANフレームが判定期間内に2回受信部12で受信されたか否かを判定する(S201)。グループAに属する同一種類のCANフレームが判定期間内に2回受信部12で受信されていない場合には(S201でNO)、ステップS106に進み、ステップS106,S107及びS110が実行される。
一方、例えば図6に示すように、グループAに属する同一種類のCANフレームが判定期間T内に2回受信部12で受信された場合に(S201でYES)、判定部16Aは、当該同一種類のCANフレームを2回目に受信したタイミングで、CANフレームが異常であると判定する(S202)。
図6に示す例では、判定期間T2内で不正なCANフレームAの侵入による攻撃を受けたために、同一種類のCANフレームAが判定期間T2内に2個受信部12で受信されている。この場合、判定部16Aは、CANフレームを2回目に受信したタイミングで、CANフレームが異常であると判定する。その後、ステップS106に進む。
[2−3.効果]
上述したように、判定部16Aは、同一送信周期で送信された同一種類のCANフレームが2回受信部12で受信されたタイミングで、CANフレームが異常であると判定する。これにより、不正なCANフレームの侵入等の攻撃をリアルタイムに検出することができる。
上述したように、判定部16Aは、同一送信周期で送信された同一種類のCANフレームが2回受信部12で受信されたタイミングで、CANフレームが異常であると判定する。これにより、不正なCANフレームの侵入等の攻撃をリアルタイムに検出することができる。
(実施の形態3)
[3−1.電子制御装置の機能構成]
次に、図1を参照しながら、実施の形態3に係る電子制御装置10Bの機能構成について説明する。図1は、実施の形態3に係る通信システム2Bの概要を示すブロック図である。
[3−1.電子制御装置の機能構成]
次に、図1を参照しながら、実施の形態3に係る電子制御装置10Bの機能構成について説明する。図1は、実施の形態3に係る通信システム2Bの概要を示すブロック図である。
図1に示すように、実施の形態3に係る通信システム2Bの電子制御装置10Bでは、判定部16Bによる判定方法が上記実施の形態1と異なっている。具体的には、判定部16Bは、同一送信周期で送信された同一種類のCANフレームが判定期間内に2個以上受信部12で受信された場合に、当該判定期間内に複数のCANフレームがそれぞれ受信部12で受信された複数の受信タイミングをそれぞれ起点とする複数の検証用判定期間を設定する。判定部16Bは、これらの複数の検証用判定期間毎に、同一送信周期で送信された同一種類のCANフレームが当該検証用判定期間内に2個以上受信部12で受信されたか否かを判定する。これにより、判定部16Bは、過半数の検証用判定期間において、同一送信周期で送信された同一種類のCANフレームが2個以上受信部12で受信されたと判定した場合には、CANフレームが異常であると判定する。
[3−2.電子制御装置の動作]
図7〜図9を参照しながら、実施の形態3に係る電子制御装置10Bの動作について説明する。図7は、実施の形態3に係る電子制御装置10Bの動作の流れを示すフローチャートである。図8は、実施の形態3に係る通信システム2Bにおいて車両が攻撃を受けていない正常時における、各CANフレームのグルーピング方法を示す図である。図9は、実施の形態3に係る通信システム2Bにおいて車両が攻撃を受けた異常時における、各CANフレームのグルーピング方法及び異常検出方法を示す図である。なお、図7のフローチャートにおいて、図3のフローチャートの処理と同一の処理には同一のステップ番号を付して、その説明を省略する。
図7〜図9を参照しながら、実施の形態3に係る電子制御装置10Bの動作について説明する。図7は、実施の形態3に係る電子制御装置10Bの動作の流れを示すフローチャートである。図8は、実施の形態3に係る通信システム2Bにおいて車両が攻撃を受けていない正常時における、各CANフレームのグルーピング方法を示す図である。図9は、実施の形態3に係る通信システム2Bにおいて車両が攻撃を受けた異常時における、各CANフレームのグルーピング方法及び異常検出方法を示す図である。なお、図7のフローチャートにおいて、図3のフローチャートの処理と同一の処理には同一のステップ番号を付して、その説明を省略する。
図7に示すように、上記実施の形態1と同様に、まず、ステップS101〜S108が実行される。なお、本実施の形態では、上記実施の形態1と同様に、ステップS101において受信部12がグループAに属するCANフレーム(CANフレームA、CANフレームB及びCANフレームC)を受信する場合について説明する。
ステップS108において、例えば図8及び図9に示すように、グループAに属する同一種類のCANフレームが判定期間T内に2個以上受信部12で受信された場合には(S108でYES)、判定部16Bは、当該判定期間T内に複数のCANフレームがそれぞれ受信部12で受信された複数の受信タイミングをそれぞれ起点とする複数の検証用判定期間VT1,VT2,VT3を設定する(S301)。
図8に示す例では、ECU8によるCANフレームの送信周期の乱れにより、CANフレームA及びCANフレームCの各受信順序が入れ替わったために、同一種類のCANフレームAが判定期間T2内に2個受信部12で受信されている。この場合、図8の(a)〜(c)に示すように、判定部16Bは、判定期間T2内にCANフレームA、CANフレームB及びCANフレームAがそれぞれ受信部12で受信された複数の受信タイミングをそれぞれ起点とする複数の検証用判定期間VT1,VT2,VT3を設定する。判定部16Bは、複数の検証用判定期間VT1,VT2,VT3毎に、同一送信周期で送信された同一種類のCANフレームが当該検証用判定期間VT1,VT2,VT3内に2個以上受信部12で受信されたか否かを判定する。
図8の(a)〜(c)に示す例では、検証用判定期間VT1において、同一送信周期で送信された同一種類のCANフレームAが2個受信部12で受信されているが、検証用判定期間VT2,VT3では、同一送信周期で送信された同一種類のCANフレームAが2個以上受信部12で受信されていない。この場合、判定部16Bは、過半数の検証用判定期間において、同一送信周期で送信された同一種類のCANフレームが2個以上受信部12で受信されていないと判定し(S302でNO)、CANフレームが正常であると判定する(S109)。
一方、図9に示す例では、判定期間T2内で不正なCANフレームAの侵入による攻撃を受けたために、同一種類のCANフレームAが判定期間T2内に2個受信部12で受信されている。この場合、図9の(a)〜(c)に示すように、判定部16Bは、判定期間T2内にCANフレームA、CANフレームB及びCANフレームAがそれぞれ受信部12で受信された複数の受信タイミングをそれぞれ起点とする複数の検証用判定期間VT1,VT2,VT3を設定する。判定部16Bは、複数の検証用判定期間VT1,VT2,VT3毎に、同一送信周期で送信された同一種類のCANフレームが当該検証用判定期間VT1,VT2,VT3内に2個以上受信部12で受信されたか否かを判定する。
図9の(a)〜(c)に示す例では、全ての検証用判定期間VT1,VT2,VT3において、同一送信周期で送信された同一種類のCANフレームAが2個受信部12で受信されている。この場合、判定部16Bは、過半数の検証用判定期間において、同一送信周期で送信された同一種類のCANフレームが2個以上受信部12で受信されたと判定し(S302でYES)、CANフレームが異常であると判定する(S111)。
[3−3.効果]
例えばECU8によるCANフレームの送信周期の乱れが発生した際に、送信周期の乱れにより、正常なCANフレームを異常であると誤検出するのを回避することができる。
例えばECU8によるCANフレームの送信周期の乱れが発生した際に、送信周期の乱れにより、正常なCANフレームを異常であると誤検出するのを回避することができる。
(実施の形態4)
[4−1.電子制御装置の機能構成]
次に、図1を参照しながら、実施の形態4に係る電子制御装置10Cの機能構成について説明する。図1は、実施の形態4に係る通信システム2Cの概要を示すブロック図である。
[4−1.電子制御装置の機能構成]
次に、図1を参照しながら、実施の形態4に係る電子制御装置10Cの機能構成について説明する。図1は、実施の形態4に係る通信システム2Cの概要を示すブロック図である。
図1に示すように、実施の形態4に係る通信システム2Cの電子制御装置10Cでは、判定部16Cによる判定方法が上記実施の形態1と異なっている。具体的には、判定部16Cは、同一送信周期で送信された同一種類のCANフレームが判定期間内に2個以上受信部12で受信された際に、当該判定期間を拡張判定期間に拡張する。ここで、拡張判定期間とは、判定部16Cにより特定されたグループに属する複数のCANフレームの種類数のn倍(nは2以上の整数)の数のCANフレームが、受信部12で受信される期間をいう。判定部16Cは、同一送信周期で送信された複数のCANフレームが拡張判定期間内にCANフレームの種類毎にn個ずつ受信部12で受信された場合に、CANフレームが正常であると判定する。
[4−2.電子制御装置の動作]
図10〜図12を参照しながら、実施の形態4に係る電子制御装置10Cの動作について説明する。図10は、実施の形態4に係る電子制御装置10Cの動作の流れを示すフローチャートである。図11は、実施の形態4に係る通信システム2Cにおいて車両が攻撃を受けていない正常時における、各CANフレームのグルーピング方法を示す図である。図12は、実施の形態4に係る通信システム2Cにおいて車両が攻撃を受けた異常時における、各CANフレームのグルーピング方法及び異常検出方法を示す図である。なお、図10のフローチャートにおいて、図3のフローチャートの処理と同一の処理には同一のステップ番号を付して、その説明を省略する。
図10〜図12を参照しながら、実施の形態4に係る電子制御装置10Cの動作について説明する。図10は、実施の形態4に係る電子制御装置10Cの動作の流れを示すフローチャートである。図11は、実施の形態4に係る通信システム2Cにおいて車両が攻撃を受けていない正常時における、各CANフレームのグルーピング方法を示す図である。図12は、実施の形態4に係る通信システム2Cにおいて車両が攻撃を受けた異常時における、各CANフレームのグルーピング方法及び異常検出方法を示す図である。なお、図10のフローチャートにおいて、図3のフローチャートの処理と同一の処理には同一のステップ番号を付して、その説明を省略する。
図10に示すように、上記実施の形態1と同様に、まず、ステップS101〜S108が実行される。なお、本実施の形態では、上記実施の形態1と同様に、ステップS101において受信部12がグループAに属するCANフレーム(CANフレームA、CANフレームB及びCANフレームC)を受信する場合について説明する。
ステップS108において、例えば図11の(a)及び図12の(a)に示すように、グループAに属する同一種類のCANフレームが判定期間T2内に2個以上受信部12で受信された場合には(S108でYES)、判定部16Cは、図11の(b)及び図12の(b)に示すように、当該判定期間T2を拡張判定期間ETに拡張する(S401)。図11及び図12に示す例では、拡張判定期間ETでは、判定部16Cにより特定されたグループAに属する複数のCANフレームの種類数(3個)の3倍(n=3)の9個のCANフレームが受信部12で受信される。なお、本実施の形態では、拡張判定期間ETを設定する際の上記nの値としてn=3の場合について説明するが、これに限定されず、例えばn=2でもよく、nは2以上の任意の整数でよい。
図11の(a)に示す例では、ECU8によるCANフレームの送信周期の乱れにより、CANフレームA及びCANフレームCの各受信順序が入れ替わったために、同一種類のCANフレームAが判定期間T2内に2個受信部12で受信されている。この場合、同一送信周期で送信されたCANフレームA、CANフレームB及びCANフレームCがそれぞれ拡張判定期間ET内に3個ずつ受信部12で受信されるので(S402でYES)、判定部16Cは、CANフレームが正常であると判定する(S109)。
一方、図12の(a)に示す例では、判定期間T2内に不正なCANフレームAの侵入による攻撃を受けたために、同一種類のCANフレームAが判定期間T2内に2個受信部12で受信されている。この場合、同一送信周期で送信されたCANフレームA、CANフレームB及びCANフレームCがそれぞれ拡張判定期間ET内に3個ずつ受信部12で受信されないので(S402でNO)、判定部16Cは、CANフレームが異常であると判定する(S110)。
[4−3.効果]
例えばECU8によるCANフレームの送信周期の乱れが発生した際に、送信周期の乱れにより、正常なCANフレームを異常であると誤検出するのを回避することができる。
例えばECU8によるCANフレームの送信周期の乱れが発生した際に、送信周期の乱れにより、正常なCANフレームを異常であると誤検出するのを回避することができる。
(実施の形態5)
[5−1.電子制御装置の機能構成]
次に、図1を参照しながら、実施の形態5に係る電子制御装置10Dの機能構成について説明する。図1は、実施の形態5に係る通信システム2Dの概要を示すブロック図である。
[5−1.電子制御装置の機能構成]
次に、図1を参照しながら、実施の形態5に係る電子制御装置10Dの機能構成について説明する。図1は、実施の形態5に係る通信システム2Dの概要を示すブロック図である。
図1に示すように、実施の形態5に係る通信システム2Dの電子制御装置10Dでは、判定部16Dによる判定方法が上記実施の形態1と異なっている。具体的には、判定部16Dは、特定したグループについての判定期間内に、特定した当該グループ以外の他のグループに属するCANフレーム(すなわち、同一送信周期と異なる送信周期で送信されたCANフレーム)が受信部12で受信された個数をカウントする。判定部16Dは、カウントした個数が閾値(例えば8個)以上である場合に、当該判定期間の次の周期の判定期間の開始タイミングを変更する。
[5−2.電子制御装置の動作]
図13及び図14を参照しながら、実施の形態5に係る電子制御装置10Dの動作について説明する。図13は、実施の形態5に係る電子制御装置10Dの動作の流れを示すフローチャートである。図14は、実施の形態5に係る通信システム2Dにおいて車両が攻撃を受けていない正常時における、各CANフレームのグルーピング方法を示す図である。なお、図13のフローチャートにおいて、図3のフローチャートの処理と同一の処理には同一のステップ番号を付して、その説明を省略する。
図13及び図14を参照しながら、実施の形態5に係る電子制御装置10Dの動作について説明する。図13は、実施の形態5に係る電子制御装置10Dの動作の流れを示すフローチャートである。図14は、実施の形態5に係る通信システム2Dにおいて車両が攻撃を受けていない正常時における、各CANフレームのグルーピング方法を示す図である。なお、図13のフローチャートにおいて、図3のフローチャートの処理と同一の処理には同一のステップ番号を付して、その説明を省略する。
図13に示すように、上記実施の形態1と同様に、まず、ステップS101〜S109及びS111が実行される。なお、本実施の形態では、上記実施の形態1と同様に、ステップS101において受信部12がグループAに属するCANフレーム(CANフレームA、CANフレームB及びCANフレームC)を受信する場合について説明する。
ステップS109又はS111の後に、判定部16Dは、特定したグループAについての判定期間内に、グループA以外の他のグループに属するCANフレームが受信部12で受信された個数が閾値(例えば8個)以上であるか否かを判定する。なお、図14では、グループA以外の他のグループに属するCANフレームを「◇(菱形)」で示している。
グループA以外の他のグループに属するCANフレームが判定期間内に受信部12で受信された個数が閾値未満である場合には(S501でNO)、ステップS110に進む。この場合、判定部16Dは、当該判定期間の開始タイミングを変更しない。
一方、グループA以外の他のグループに属するCANフレームが判定期間内に受信部12で受信された個数が閾値以上である場合には(S501でYES)、判定部16Dは、当該判定期間の次の周期の判定期間の開始タイミングを変更する(S502)。図14の(a)に示す例では、グループAについての判定期間T2内に、グループA以外の他のグループに属するCANフレームが受信部12で受信された個数は8個であり、閾値以上となっている。この場合、判定部16Dは、当該判定期間T2の次の周期の判定期間T3の開始タイミングを変更する。
この時、判定部16Dは、判定期間T2内でCANフレームA、CANフレームB及びCANフレームCが受信部12でそれぞれ受信された複数の受信タイミングの中から、グループA以外の他のグループに属するCANフレームが判定期間T3内に受信部12で受信される個数が最も少なくなる受信タイミングを選択し、選択した受信タイミングを判定期間T3の開始タイミングとして決定する。
図14の(a)に示す例では、判定期間T3の開始タイミングをCANフレームAの受信タイミングとした場合には、グループA以外の他のグループに属するCANフレームが判定期間T3内に受信部12で受信される個数は8個となる。また、図14の(b)に示す例では、判定期間T3の開始タイミングをCANフレームBの受信タイミングとした場合には、グループA以外の他のグループに属するCANフレームが判定期間T3内に受信部12で受信される個数は6個となる。また、図14の(c)に示す例では、判定期間T3の開始タイミングをCANフレームCの受信タイミングとした場合には、グループC以外の他のグループに属するCANフレームが判定期間T3内に受信部12で受信される個数は0個となる。したがって、判定部16Dは、判定期間T2内でCANフレームA、CANフレームB及びCANフレームCが受信部12でそれぞれ受信された複数の受信タイミングの中から、CANフレームCの受信タイミングを判定期間T3の開始タイミングとして決定する。
[5−3.効果]
図14の(a)に示すように、判定期間T2の開始タイミングから終了タイミングまでの時間が比較的長い場合には、例えばECU8によるCANフレームの送信周期の乱れが発生した際に、送信周期の乱れた正常なCANフレームを異常であると誤検出するおそれがある。
図14の(a)に示すように、判定期間T2の開始タイミングから終了タイミングまでの時間が比較的長い場合には、例えばECU8によるCANフレームの送信周期の乱れが発生した際に、送信周期の乱れた正常なCANフレームを異常であると誤検出するおそれがある。
本実施の形態では、上述したように、判定期間T2の次の周期の判定期間T3の開始タイミングを変更することにより、判定期間T3の開始タイミングから終了タイミングまでの時間を短縮化することができる。その結果、送信周期の乱れにより、正常なCANフレームを異常であると誤検出するのを回避することができる。
(実施の形態6)
[6−1.電子制御装置の機能構成]
次に、図1及び図15を参照しながら、実施の形態6に係る電子制御装置10Eの機能構成について説明する。図1は、実施の形態6に係る通信システム2Eの概要を示すブロック図である。図15は、実施の形態6に係る通信システム2Eにより車両が攻撃を受けていない正常時における、各CANフレームのグルーピング方法を示す図である。
[6−1.電子制御装置の機能構成]
次に、図1及び図15を参照しながら、実施の形態6に係る電子制御装置10Eの機能構成について説明する。図1は、実施の形態6に係る通信システム2Eの概要を示すブロック図である。図15は、実施の形態6に係る通信システム2Eにより車両が攻撃を受けていない正常時における、各CANフレームのグルーピング方法を示す図である。
図1に示すように、実施の形態6に係る通信システム2Eの電子制御装置10Eでは、判定部16Eによる判定方法が上記実施の形態1と異なっている。具体的には、図15に示すように、判定部16Eは、同一のECU8から送信された複数のCANフレームの種類数(例えば3個)と同数のCANフレームが受信部12で受信される期間である判定期間T’(第2の判定期間の一例)内に、同一のECU8から送信された同一種類のCANフレームが2個以上受信部12で受信された場合に、CANフレームが異常であると判定する。さらに、判定部16Eは、上記実施の形態1と同様に、同一送信周期で送信された同一種類のCANフレームが受信部12で受信される判定期間T内に、同一送信周期で送信された同一のCANフレームが2個以上受信部12で受信された場合に、CANフレームが異常であると判定する。
図15に示す例では、CANフレームA(送信周期:10ms)、CANフレームB(送信周期:10ms)及びCANフレームC(送信周期:30ms)は、送信元であるECU8が同一であるため、「グループA」としてグルーピングされている。すなわち、グループAに属するCANフレームの種類数は、「3個」である。
図15に示す例では、判定期間T1,T2,T3,T4内には、同一送信周期(10ms)で送信されたCANフレームA及びCANフレームBが受信部12で受信される。また、判定期間T1’,T2’内には、同一のECU8から送信されたCANフレームA、CANフレームB及びCANフレームCが受信部12で受信される。この時、CANフレームCの送信周期は、CANフレームA及びCANフレームBの各送信周期の3倍であるため、判定期間T’の発生周期は、判定期間Tの発生周期の3倍となる。
なお、本実施の形態では、CANフレームCの送信周期がCANフレームA及びCANフレームBの各送信周期の整数倍である場合について説明したが、これに限定されない。例えば、CANフレームA及びCANフレームBの各送信周期を10ms、CANフレームCの送信周期を35msとしてもよい。このような場合であっても、CANフレームCをCANフレームA及びCANフレームBとグルーピングしてもよい。
[6−2.効果]
例えば送信周期が30msであるCANフレームがCANフレームCのみである場合であっても、CANフレームCをCANフレームA及びCANフレームBとグルーピングすることができる。これにより、不正なCANフレームCがCANバス4に侵入した場合であっても、不正なCANフレームCの侵入を検出することができる。
例えば送信周期が30msであるCANフレームがCANフレームCのみである場合であっても、CANフレームCをCANフレームA及びCANフレームBとグルーピングすることができる。これにより、不正なCANフレームCがCANバス4に侵入した場合であっても、不正なCANフレームCの侵入を検出することができる。
さらに、同一のECU8が送信するCANフレームでグルーピングすることにより、送信周期の乱れによるCANフレームの受信順序の入れ替わりが発生せず、正常なCANフレームを異常であると誤検出することを回避することができる。
(他の変形例)
以上、一つ又は複数の態様に係る電子制御装置について、上記各実施の形態に基づいて説明したが、本開示は、上記各実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思い付く各種変形を上記各実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、一つ又は複数の態様の範囲内に含まれてもよい。
以上、一つ又は複数の態様に係る電子制御装置について、上記各実施の形態に基づいて説明したが、本開示は、上記各実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思い付く各種変形を上記各実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、一つ又は複数の態様の範囲内に含まれてもよい。
上記各実施の形態では、電子制御装置10(10A,10B,10C,10D,10E(10A〜10E))とゲートウェイECU6とを別々に構成したが、これに限定されず、電子制御装置10(10A〜10E)の機能をゲートウェイECU6に搭載してもよい。
上記各実施の形態では、本開示に係る電子制御装置10(10A〜10E)の適用例として、自動車等の車両に搭載される車載ネットワークにおけるセキュリティ対策への適用について説明したが、本開示に係る電子制御装置10(10A〜10E)の適用範囲はこれに限定されない。本開示に係る電子制御装置10(10A〜10E)は、自動車等の車両に限定されず、例えば、建機、農機、船舶、鉄道又は飛行機等の任意のモビリティに適用してもよい。
なお、上記実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPU又はプロセッサ等のプログラム実行部が、ハードディスク又は半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
また、上記実施の形態に係る電子制御装置の機能の一部又は全てを、CPU等のプロセッサがプログラムを実行することにより実現してもよい。
上記の各装置を構成する構成要素の一部又は全部は、各装置に脱着可能なICカード又は単体のモジュールから構成されているとしても良い。前記ICカード又は前記モジュールは、マイクロプロセッサ、ROM、RAM等から構成されるコンピュータシステムである。前記ICカード又は前記モジュールは、上記の超多機能LSIを含むとしても良い。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、前記ICカード又は前記モジュールは、その機能を達成する。このICカード又はこのモジュールは、耐タンパ性を有するとしても良い。
本開示は、上記に示す方法であるとしても良い。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしても良いし、前記コンピュータプログラムからなるデジタル信号であるとしても良い。また、本開示は、前記コンピュータプログラム又は前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えばフレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−ray(登録商標) Disc)、半導体メモリ等に記録したものとしても良い。また、これらの記録媒体に記録されている前記デジタル信号であるとしても良い。また、本開示は、前記コンピュータプログラム又は前記デジタル信号を、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしても良い。また、本開示は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムにしたがって動作するとしても良い。また、前記プログラム又は前記デジタル信号を前記記録媒体に記録して移送することにより、又は前記プログラム又は前記デジタル信号を前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしても良い。
本開示に係る電子制御装置は、例えば車両に搭載された自動運転システム等に適用可能である。
2,2A,2B,2C,2D,2E 通信システム
4 CANバス
6 ゲートウェイECU
8 ECU
10,10A,10B,10C,10D,10E 電子制御装置
12 受信部
14 記憶部
16,16A,16B,16C,16D,16E 判定部
18 制御部
20 グループ情報
22 受信回数情報
T,T’,T1,T1’,T2,T2’,T3,T4 判定期間
ET 拡張判定期間
VT1,VT2,VT3 検証用判定期間
4 CANバス
6 ゲートウェイECU
8 ECU
10,10A,10B,10C,10D,10E 電子制御装置
12 受信部
14 記憶部
16,16A,16B,16C,16D,16E 判定部
18 制御部
20 グループ情報
22 受信回数情報
T,T’,T1,T1’,T2,T2’,T3,T4 判定期間
ET 拡張判定期間
VT1,VT2,VT3 検証用判定期間
Claims (11)
- ネットワークを介して通信装置と通信可能な電子制御装置であって、
前記通信装置から送信された複数のフレームを、前記ネットワークを介して受信する受信部と、
前記通信装置から同一送信周期で送信される複数のフレームの種類数と同数のフレームが前記受信部で受信される期間である第1の判定期間内に、前記同一送信周期で送信された同一種類のフレームが2個以上前記受信部で受信された場合に、フレームが異常であると判定する判定部と、
を備える電子制御装置。 - 前記電子制御装置は、さらに、前記通信装置から前記同一送信周期で送信される複数のフレームをグルーピングしたグループを示すグループ情報を記憶する記憶部を備え、
前記判定部は、前記グループ情報に基づいて前記受信部で受信されたフレームが属する前記グループを特定し、特定した前記グループに属する複数のフレームの種類数と同数のフレームが前記第1の判定期間内に前記受信部で受信された際に、前記同一送信周期で送信された同一種類のフレームが2個以上前記受信部で受信されたか否かを判定する、
請求項1に記載の電子制御装置。 - 前記判定部は、
前記同一送信周期で送信された同一種類のフレームが前記第1の判定期間内に2個以上前記受信部で受信された場合に、当該第1の判定期間内に複数のフレームがそれぞれ前記受信部で受信された複数の受信タイミングをそれぞれ起点とする複数の検証用判定期間毎に、前記同一送信周期で送信された同一種類のフレームが当該検証用判定期間内に2個以上前記受信部で受信されたか否かを判定し、
過半数の前記検証用判定期間において、前記同一送信周期で送信された同一種類のフレームが2個以上前記受信部で受信された場合には、フレームが異常であると判定する、
請求項1又は2に記載の電子制御装置。 - 前記判定部は、前記同一送信周期で送信された同一種類のフレームが前記第1の判定期間内に2個以上前記受信部で受信された際に、前記第1の判定期間を、前記種類数のn倍(nは2以上の整数)の数のフレームが前記受信部で受信される期間である拡張判定期間に拡張し、前記同一送信周期で送信された複数のフレームが前記拡張判定期間内にフレームの種類毎にn個ずつ前記受信部で受信された場合に、前記第1の判定期間内に受信されたフレームが正常であると判定する、
請求項1又は2に記載の電子制御装置。 - 前記判定部は、前記同一送信周期と異なる送信周期で送信されたフレームが前記第1の判定期間内に前記受信部で受信された個数が閾値以上である場合に、当該第1の判定期間の次の周期の前記第1の判定期間の開始タイミングを、前記同一送信周期で送信された複数のフレームが前記受信部でそれぞれ受信された複数の受信タイミングのいずれかに変更する、
請求項1又は2に記載の電子制御装置。 - 前記判定部は、前記複数の受信タイミングの中から、前記同一送信周期と異なる送信周期で送信されたフレームが前記第1の判定期間内に前記受信部で受信される個数が最も少なくなる前記受信タイミングを選択し、選択した前記受信タイミングを前記第1の判定期間の開始タイミングとして決定する、
請求項5に記載の電子制御装置。 - 前記判定部は、さらに、同一の前記通信装置から送信された複数のフレームの種類数と同数のフレームが前記受信部で受信される期間である第2の判定期間内に、前記同一の通信装置から送信された同一種類のフレームが2個以上前記受信部で受信された場合に、フレームが異常であると判定する、
請求項1又は2に記載の電子制御装置。 - 前記判定部は、前記通信装置から前記同一送信周期で送信される複数のフレームの種類数と同数のフレームが前記第1の判定期間内に前記受信部で受信されたタイミングで、前記同一送信周期で送信された同一種類のフレームが前記第1の判定期間内に2個以上前記受信部で受信されたか否かを判定する、
請求項1〜7のいずれか1項に記載の電子制御装置。 - 前記判定部は、前記通信装置から前記同一送信周期で送信された複数のフレームの種類数よりも少ない数のフレームが前記第1の判定期間内に前記受信部で受信された状態で、前記同一送信周期で送信された同一種類のフレームが2回前記受信部で受信されたタイミングで、フレームが異常であると判定する、
請求項1に記載の電子制御装置。 - ネットワークを介して通信装置と通信可能な電子制御装置の制御方法であって、
前記通信装置から送信された複数のフレームを、前記ネットワークを介して受信するステップと、
前記通信装置から同一送信周期で送信される複数のフレームの種類数と同数のフレームが前記受信部で受信される期間である第1の判定期間内に、前記同一送信周期で送信された同一種類のフレームが2個以上前記受信部で受信された場合に、フレームが異常であると判定するステップと、
を含む電子制御装置の制御方法。 - 通信装置から送信された複数のフレームを、ネットワークを介して受信する処理と、
前記通信装置から同一送信周期で送信される複数のフレームの種類数と同数のフレームが前記受信部で受信される期間である第1の判定期間内に、前記同一送信周期で送信された同一種類のフレームが2個以上前記受信部で受信された場合に、フレームが異常であると判定する処理と、
をコンピュータに実行させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018240039A JP2020102771A (ja) | 2018-12-21 | 2018-12-21 | 電子制御装置、電子制御装置の制御方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018240039A JP2020102771A (ja) | 2018-12-21 | 2018-12-21 | 電子制御装置、電子制御装置の制御方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2020102771A true JP2020102771A (ja) | 2020-07-02 |
Family
ID=71139999
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018240039A Pending JP2020102771A (ja) | 2018-12-21 | 2018-12-21 | 電子制御装置、電子制御装置の制御方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2020102771A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022185566A1 (ja) * | 2021-03-01 | 2022-09-09 | 株式会社オートネットワーク技術研究所 | 車載装置、プログラム及び情報処理方法 |
-
2018
- 2018-12-21 JP JP2018240039A patent/JP2020102771A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022185566A1 (ja) * | 2021-03-01 | 2022-09-09 | 株式会社オートネットワーク技術研究所 | 車載装置、プログラム及び情報処理方法 |
WO2022185370A1 (ja) * | 2021-03-01 | 2022-09-09 | 株式会社オートネットワーク技術研究所 | 車載装置、プログラム及び情報処理方法 |
JP7184225B1 (ja) * | 2021-03-01 | 2022-12-06 | 株式会社オートネットワーク技術研究所 | 車載装置、プログラム及び情報処理方法 |
JP2023010792A (ja) * | 2021-03-01 | 2023-01-20 | 株式会社オートネットワーク技術研究所 | 車載装置、プログラム及び情報処理方法 |
JP7444223B2 (ja) | 2021-03-01 | 2024-03-06 | 株式会社オートネットワーク技術研究所 | 車載装置、プログラム及び情報処理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10902109B2 (en) | Misuse detection method, misuse detection electronic control unit, and misuse detection system | |
JP6203365B2 (ja) | 不正検知電子制御ユニット、車載ネットワークシステム及び不正検知方法 | |
US10992688B2 (en) | Unauthorized activity detection method, monitoring electronic control unit, and onboard network system | |
JP6836340B2 (ja) | 不正検知電子制御ユニット、車載ネットワークシステム及び通信方法 | |
US10462226B2 (en) | Method for detecting fraudulent frame sent over an in-vehicle network system | |
US10277598B2 (en) | Method for detecting and dealing with unauthorized frames in vehicle network system | |
US10454957B2 (en) | Method for preventing electronic control unit from executing process based on malicious frame transmitted to bus | |
US10187406B2 (en) | Method for sensing fraudulent frames transmitted to in-vehicle network | |
US20190141070A1 (en) | Anomaly detection electronic control unit, onboard network system, and anomaly detection method | |
US10142358B1 (en) | System and method for identifying an invalid packet on a controller area network (CAN) bus | |
JP6566400B2 (ja) | 電子制御装置、ゲートウェイ装置、及び検知プログラム | |
WO2017038005A1 (ja) | 不正検知方法、不正検知電子制御ユニット及び不正検知システム | |
KR20180137306A (ko) | Can 통신 기반 해킹공격 탐지 방법 및 시스템 | |
US9499174B2 (en) | Method and apparatus for isolating a fault-active controller in a controller area network | |
JP2020102771A (ja) | 電子制御装置、電子制御装置の制御方法及びプログラム | |
JP5892890B2 (ja) | 通信制御装置 | |
JP6913869B2 (ja) | 監視装置、監視システムおよびコンピュータプログラム | |
JP6874102B2 (ja) | 不正検知電子制御ユニット、車載ネットワークシステム及び不正検知方法 | |
CN117749555A (zh) | 控制器区域网络系统和用于系统的方法 | |
WO2017104122A1 (ja) | 通信装置、通信方法、及び通信プログラム |