JP6286749B2 - 通信システム、制御装置、及び制御方法 - Google Patents

通信システム、制御装置、及び制御方法 Download PDF

Info

Publication number
JP6286749B2
JP6286749B2 JP2015207267A JP2015207267A JP6286749B2 JP 6286749 B2 JP6286749 B2 JP 6286749B2 JP 2015207267 A JP2015207267 A JP 2015207267A JP 2015207267 A JP2015207267 A JP 2015207267A JP 6286749 B2 JP6286749 B2 JP 6286749B2
Authority
JP
Japan
Prior art keywords
message
ecu
predetermined
network
information
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.)
Active
Application number
JP2015207267A
Other languages
English (en)
Other versions
JP2017079429A (ja
Inventor
和慶 脇田
和慶 脇田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP2015207267A priority Critical patent/JP6286749B2/ja
Priority to CN201610901703.0A priority patent/CN107018122A/zh
Priority to US15/296,108 priority patent/US20170118230A1/en
Publication of JP2017079429A publication Critical patent/JP2017079429A/ja
Application granted granted Critical
Publication of JP6286749B2 publication Critical patent/JP6286749B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1483Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing

Description

本発明は、通信システム、制御装置、及び制御方法に関する。
近年、車両内に設けた複数の制御装置同士が車両内のネットワークを介して通信して、車両における各種機能を制御するための通信システムがある。このような通信システムにおいて、ネットワークにおける不正行為がなされた際に、その影響を低減させるための技術が知られている(例えば、特許文献1参照。)。
特許文献1には、通信路と、その通信路に接続された複数のECUとを含むCAN通信システムにおいて、なりすましの存在を検出して、なりすましの存在を表すメッセージを利用して報知することが開示されている。
特開2014−11621号公報
しかしながら、特許文献1によれば、なりすましの存在の報知を受けるためには、なりすましの存在を表すメッセージを送信し、送信されたメッセージを受信して判読する。このような方法でネットワークにおける不正な行為(不正行為)から各制御装置を守る場合、不正な行為を表すメッセージを送受信する処理を新たに追加することが必要とされ、ネットワークに接続された装置の処理が煩雑になるという問題がある。
本発明は、このような事情を考慮してなされたものであり、より簡便な構成により、ネットワークにおける不正な行為から制御装置を守ることができる通信システム、制御装置、及び通信制御方法を提供することを目的の一つとする。
請求項1記載の発明は、ネットワークに接続され、自装置が所定の異常状態にある場合に前記ネットワークに送信するメッセージに所定の欠損が生じる送信装置(例えば実施形態のECU10−1)と、前記ネットワークに接続され、前記ネットワークから受信するメッセージにおいて前記所定の欠損が検出された場合に所定のフェイルセーフ処理を行う受信装置(例えば実施形態のECU10−2)と、を備え、前記送信装置は、識別情報とともにメッセージを送信するとともに、自装置になりすました装置があることを検出した場合に、前記自装置が所定の異常状態にある場合と同様の所定の欠損が生じたメッセージを生成して送信し、前記受信装置は、前記なりすました装置からメッセージを受信するとともに、前記所定のフェイルセーフ処理として、前記所定の欠損を検出したメッセージと同じ識別子を含むメッセージを受信した場合に、当該受信したメッセージに含まれた情報を前記受信装置における処理に用いないようにする、ことを特徴とする通信システム(例えば実施形態の車両用通信システム1)である。
この発明によれば、通信システムは、ネットワークに接続される送信装置と受信装置を備える。送信装置は、自装置が所定の異常状態にある場合に前記ネットワークに送信するメッセージに所定の欠損が生じる。受信装置は、前記ネットワークから受信するメッセージにおいて前記所定の欠損が検出された場合に所定のフェイルセーフ処理を行う。送信装置は、ネットワークにおける不正行為を検出した場合にも、前記自装置が所定の異常状態にある場合と同様の所定の欠損が生じたメッセージを生成して送信する。
請求項2記載の発明における前記送信装置は、前記受信装置は、前記所定の欠損を検出したメッセージと同じ識別子を含むメッセージを受信した場合に、当該メッセージを破棄または当該メッセージの値を別の値に置換することで、前記受信したメッセージに含まれた情報を前記受信装置における処理に用いないようにすることを特徴とする。
請求項3記載の発明における前記送信装置は、自装置が送信元であることを示す識別子が付されたメッセージが他の装置から送信されたことを検出して、前記ネットワークにおける不正行為を検出したと判定することを特徴とする。
請求項記載の発明における前記送信装置は、前記送信するメッセージの伝送誤りを検出するための情報を正当な値と異なる値にして、前記所定の欠損を生じたメッセージとすることを特徴とする。
請求項記載の発明における前記送信装置は、前記送信するメッセージによって送信される情報が更新されたことを示す情報を、正当な値と異なる値にして、前記所定の欠損を生じたメッセージとすることを特徴とする。
請求項記載の発明は、ネットワークから受信したメッセージに所定の欠損が検出された場合に所定のフェイルセーフ処理を行う受信装置宛に、メッセージを送信する制御装置(例えば実施形態のECU10−1)であって、前記ネットワークに接続され、自制御装置が所定の異常状態にある場合に前記ネットワークに送信するメッセージが所定の欠損が生じたメッセージとなり、識別情報とともにメッセージを送信するとともに、自装置になりすました装置があることを検出した場合に、前記自装置が所定の異常状態にある場合と同様の所定の欠損が生じたメッセージを生成して送信する制御部(例えば実施形態の制御部30)を備え、前記受信装置は、前記なりすました装置からメッセージを受信するとともに、前記所定のフェイルセーフ処理として、前記所定の欠損を検出したメッセージと同じ識別子を含むメッセージを受信した場合に、当該受信したメッセージに含まれた情報を前記受信装置における処理に用いないようにすることを特徴とする制御装置である。
請求項記載の発明は、ネットワークに接続され、自装置が所定の異常状態にある場合に前記ネットワークに送信するメッセージに所定の欠損が生じる送信装置と、前記ネットワークに接続され、前記ネットワークから受信するメッセージにおいて前記所定の欠損が検出された場合に所定のフェイルセーフ処理を行う受信装置と、を含む通信システムの制御方法であって、前記送信装置は、識別情報とともにメッセージを送信するとともに、自装置になりすました装置があることを検出した場合に、前記自装置が所定の異常状態にある場合と同様の所定の欠損が生じたメッセージを生成して送信する過程(例えば実施形態のS132−134と、前記受信装置は、前記なりすました装置からメッセージを受信するとともに、前記所定のフェイルセーフ処理として、前記所定の欠損を検出したメッセージと同じ識別子を含むメッセージを受信した場合に、当該受信したメッセージに含まれた情報を前記受信装置における処理に用いないようにする過程(例えば実施形態のS235)とを含むことを特徴とする制御方法である。
請求項1から請求項11に記載の発明によれば、ネットワークに接続され、自装置が所定の異常状態にある場合に前記ネットワークに送信する前記メッセージに所定の欠損が生じる送信装置と、前記ネットワークに接続され、前記ネットワークから受信するメッセージにおいて前記所定の欠損が検出された場合に所定のフェイルセーフ処理を行う受信装置と、を備え、前記送信装置は、前記ネットワークにおける不正行為を検出した場合にも、前記自装置が所定の異常状態にある場合と同様の所定の欠損が生じたメッセージを生成して送信することにより、より簡便な構成により、ネットワークにおける不正な行為から制御装置を守ることができる。
実施形態の車両用通信システム1の構成を示す図である。 ECU10の構成例を示す図である。 ECU10がバス2に送信するフレームFの形式例である。 ECU10における受信処理の概要を示すフローチャートである。 情報の欠損が生じたことを検出する判定処理の一例を示す図である。 ネットワークNWにおける不正な行為が検出されない場合の車両用通信システムの動作を示すシーケンス図である(その1)。 ネットワークNWにおける不正な行為が検出されない場合の車両用通信システムの動作を示すシーケンス図である(その2)。 比較例の車両用通信システムの動作を例示する図である。 実施形態のECU10−1の構成を示す図である。 ECU10−1が不正な行為を検出する際に実施する処理の概要を示すフローチャートである。 なりすましが実施された場合の車両用通信システム1の動作を示すシーケンス図である。 なりすましが実施された場合の車両用通信システム1の動作を示す図である。 ネットワークNWにおいて、DoSが実施された場合の車両用通信システム1Aの動作を示すシーケンス図である。 不正アクセスが実施された場合の車両用通信システム1の動作を示すシーケンス図である。
以下、図面を参照し、本発明の通信システム、制御装置、及び制御方法の実施形態について説明する。
(第1の実施形態)
図1は、本実施形態の車両用通信システム1(通信システム)の構成を示す図である。車両用通信システム1は、例えば車両に搭載される。車両用通信システム1は、少なくとも車両内にネットワークNWを構成する。ネットワークNWでは、例えば、バス2を介してCAN(Controller Area Network)に基づく通信が行われる。
車両用通信システム1は、バス2に接続されたECU10−1からECU10−3を備える。以下、ECU10−1からECU10−3を区別しない場合は、単にECU10と表記する。バス2は、例えば、ツイストペアケーブルであり、差動電圧方式によって信号を伝達する。ECU10−1からECU10−3等の装置は、共通のバス2に接続されたものとして説明するが、不図示の中継装置等により互いに通信可能に接続された異なるバスに接続されていてもよい。
ECU10は、例えばエンジンを制御するエンジンECUや、シートベルトを制御するシートベルトECU等である。ECU10は、自装置が所属するネットワークNWに送信されたフレームを受信する。以下、ネットワークNWに送信される各フレームのことをフレームFという。フレームFは、それぞれに附された識別子(以下、IDという。)により識別される。ECU10は、受信したフレームFに附されたID(以下、受信IDという)を参照して、受信したフレームFのうちから、自ECU10に係るフレームFを識別するID(以下、登録IDという)を記憶部20(図2)に格納しておき、登録IDと同じ値の受信IDが附されたフレームを抽出して取得する。また、ECU10は、例えば、自ECU10の登録IDと同じ値の受信IDを含むフレームFを受信したことを条件として、予め設定された優先度に応じてフレームをバス2に送信する。
ネットワークNWには、検証装置等の外部装置が接続されるDLC3が設けられている。DLC3は、外部装置と通信するための接続端子を有している。車両の点検時等にDLC3に接続される検証装置等は、バス2に接続されたECU10と通信して、車両用通信システム1の状態を検査・検証する。車両の点検時等を除けば、DLC3に検証装置等を接続することなく、車両用通信システム1を機能させることができる。
このネットワークNWに送信される各フレームFにはそれぞれ優先度が設定されており、車両用通信システム1では、優先度が高いフレームFから送信されるように優先度制御が行われる。
図2は、ECU10の構成例を示す図である。ECU10は、例えば、記憶部20と、制御部30と、CANコントローラ36と、CANトランシーバ38とを備える。制御部30は、例えば、CPU(Central Processing Unit)等のプロセッサを有する。
記憶部20は、例えば、ROM(Read Only Memory)、EEPROM(Electrically Erasable and Programmable Read Only Memory)、HDD(Hard Disk Drive)等の不揮発性の記憶装置と、RAM(Random Access Memory)、レジスタ等の揮発性の記憶装置によって実現される。記憶部20は、アプリケーションプログラム22や、通信制御プログラム24等のプログラムと、上記のプログラムが参照する各種情報を格納する。また、記憶部20は、送信バッファ(不図示)と、受信バッファ(不図示)とを含む一時記憶領域26を有する。また、記憶部20は、各種情報として、例えばネットワークNWを介して送受信するフレームFのIDが格納されたIDテーブルを記憶する。例えば、フレームFのIDは、送信元、宛先、フレームFの種類等を示す情報を含む。より具体的には、IDテーブルには、ECU10−1が受信すべきフレームFのIDとECU10−1が送信すべきフレームFのIDとが含まれる。また、記憶部20には、ネットワークNWに送信されるフレームFの送信スケジュールおよびフレームFの優先度を示す情報である優先度情報が記憶されている。
アプリケーションプログラム22は、ECU10にそれぞれ割り当てられた情報処理を行うためのプログラムである。通信制御プログラム24は、アプリケーションプログラム22からの指示に応じてCANコントローラ36を制御して通信処理を実施させるとともに、CANコントローラ36を介した通信に係る通信処理の結果を管理情報として取得するためのプログラムである。通信制御プログラム24は、CANコントローラ36自身が実行する制御プログラムを含めて構成してもよく、或いは、CANコントローラ36自身が実行する制御プログラムをCANコントローラ36が有する場合には、CANコントローラ36自身が実行する制御プログラムを含まずに構成してもよい。以下の説明では、通信制御プログラム24は、CANコントローラ36の制御プログラムを含めて構成した場合を例示する。
制御部30は、中央制御部32と、通信制御部34とを備える。中央制御部32は、アプリケーションプログラム22を実行することにより機能し、ECU10に与えられた制御を実行する。
通信制御部34は、通信制御プログラム24を実行することにより機能し、中央制御部32からの制御を受けECU10の通信処理を実行する。通信制御部34は、CANトランシーバ38を介して受信されたフレームFの受信IDとIDテーブルに格納された登録IDとを参照し、受信されたフレームFに関して自装置の中央制御部32が使用する情報が含まれたフレームFであるか否かを判定する。IDテーブルに格納された登録IDには、ECU10−1が受信すべきフレームFのID(登録受信ID)とECU10−1が送信すべきフレームFのID(登録送信ID)とが含まれる。通信制御部34は、上記の判定を実施する際に、例えば、IDテーブルにおける登録受信IDを利用する。
通信制御部34は、自ECU10が使用する情報がフレームFに含まれる場合、フレームFに含まれた情報を取得し、記憶部20の一時記憶領域26に格納する。一方、通信制御部34は、自ECU10が使用する情報がフレームFに含まれていない場合、例えば、フレームFに含まれた情報を破棄するように制御する。
CANトランシーバ38を介して受信されたフレームFには、送信側のECU10からのメッセージが含まれる場合がある。通信制御部34は、フレームFを構成する情報の少なくとも一部、例えば、送信側のECU10からのメッセージを含む部分に所定の欠損が生じていることを検出する。通信制御部34は、上記の所定の欠損が生じていることを検出した場合、ECU10におけるフェイルセーフ処理を実施するように制御する。ECU10におけるフェイルセーフ処理とは、異常を検知したECU10が車両の走行等に対する影響を低減させて、車両の制御状態を安全な状態を維持するために実施する処理のことである。
ECU10におけるフェイルセーフ処理として、例えば、通信制御部34は、所定の欠損を検出したとき以降の少なくとも一定時間の間においては、少なくとも新たにフレームFを受信しないように制御する。通信制御部34が受信しないようにするフレームFは、上記の所定の欠損が生じたことを検出したフレームFに附されていた送信元を示すIDが附されたフレームFに限定してもよい。上記のように、ECU10は、フェイルセーフ処理により、受信するフレームFを制限することで、故障等が発生した可能性が有るECU10からの情報の受信を制限できる。なお、通信制御部34が上記の判定条件にする所定の欠損の詳細については、後述する。
通信制御部34は、CANコントローラ36にCANトランシーバ38からフレームFを送信させる。例えば通信制御部34は、自装置がフレームFを送信することを示すIDが付されたフレームF(要求フレーム)をバス2に送信し、送信された要求フレームを受信した場合に、自装置が送信することを示すIDを含めたフレームF(応答フレーム)をバス2に送信する。
CANコントローラ36は、CANトランシーバ38を介して、バス2との間で種々のフレームFを送受信する。CANコントローラ36は、バス2にフレームFを送信する際には、一時記憶領域26の送信バッファに格納されたフレームFを、例えばNRZ(Non‐Return‐to‐Zero)方式でシリアルの送信信号に変換し、CANトランシーバ38に出力する。CANコントローラ36は、変換後の信号が「0」(ドミナント)のビットには論理レベルがLowの電圧を出力し、「1」(レセシブ)のビットには論理レベルがHighの電圧を出力する。また、CANコントローラ36は、CANトランシーバ38からフレームFを受信する際には、CANトランシーバ38から供給される受信信号からフレームFを抽出して、抽出したフレームFを一時記憶領域26の受信バッファに格納する。CANコントローラ36は、フレームFにおける誤り検出処理を実行する誤り検出処理部(不図示)を含む。誤り検出処理部は、フレームFを送信する際には、フレームFの一部に含めて送信させる所定の誤り検出符号を生成する。誤り検出処理部は、フレームFを受信する際には、フレームFの一部に含まれた誤り検出情報の検出の結果を出力する。
CANトランシーバ38は、フレームFを送信する送信部、またはフレームFを受信する受信部として機能する。CANトランシーバ38は、バス2にフレームFを送信する際には、CANコントローラ36から取得した送信信号の論理状態に応じた差動電圧を生成してバス2に出力する。また、CANトランシーバ38は、バス2からフレームFを取得する際には、バス2の差動電圧から所定の電圧範囲に含まれるように整形した受信信号を生成して、CANコントローラ36に送信する。CANコントローラ36は、CANトランシーバ38から信号からフレームFを抽出して記憶部20に格納する。
以上に示すように、各ECU10は、上記の通信処理に関する共通の構成を有する。
図3は、ECU10がバス2に送信するフレームFの形式例である。図3(a)に、1回の送信において送信されるフレームFを示す。フレームFは、フレームFの開始を表すスタートオブフレーム(SOF)、フレームFのID及びフレームFとリモートフレームを識別するためのリモートトランスミッションリクエスト(RTR)を含むアービトレーションフィールド、フレームFのバイト数等を表すコントロールフィールド、転送するフレームFの実体であるデータフィールド、フレームFの誤りを検出するための誤り検出符号(CRC)を付加するCRCフィールド、正しいフレームFを受信したユニットからの通知(ACK)を受けるACKスロット及びACKデリミタ、フレームFの終了を表すエンドオブフレーム(EOF)等を含む。
ECU10は、フレームFのデータフィールド内の所定の位置にユーザデータを割り付けて通信する。データフィールドには、ユーザデータの他に、ユーザデータの信頼度を検証するための管理情報を含めてもよい。信頼度を検証するための管理情報には、例えば、単一のフレームF内のユーザデータまたは複数のフレームFを纏めたユーザデータの誤りを検査するための誤り検査用情報、データフィールドの値が更新されていることを検査するための更新検査情報等を含めてもよい。
図3(b)に、誤り検査用情報をデータフィールドに割り付けた一例を示す。誤り検査用情報は、例えば、SUM値(check sum)やパリティ等の誤り検出符号により構成される。図3(c)に、データフィールドの値が更新されていることを検査するための更新検査情報をデータフィールドに割り付けた一例を示す。更新検査情報には、フレームFを送信する度に変化する情報が含まれる。フレームFを送信する度に変化する情報は、フレームFの送信回数に対応する値を示すアライブカウンタであってもよい。
上記のフレームFの一例に従って、ECU10は、ユーザデータの信頼度を検証するための管理情報と、これに対応するユーザデータとを、一つの同じフレームFに含めて送信してもよく、複数のフレームFに振り分けて送信してもよい。なお、管理情報とユーザデータのデータフィールドへの割り付けは任意であり、例えば、予め決定されているものとする。以下の説明において、フレームFと、フレームFに割り付けられたユーザデータと、ユーザデータの信頼度を検証するための管理情報とを纏めてメッセージという。
図4から図7を参照して、車両用通信システムの処理を説明する。図4から図7に示す処理は、本実施形態におけるネットワークNWにおいて特段の不正な行為(不正行為ともいう。)が実施されない場合を示すものである。
図4は、ECU10における受信処理の概要を示すフローチャートである。通信制御部34は、ECU10における受信処理により、ネットワークNWから受信するメッセージに所定の欠損が検出された場合に、下記の手順に従って所定のフェイルセーフ処理を実施する。
通信制御部34は、CANトランシーバ38により受信したメッセージ(受信メッセージ)のフレームFに附された受信IDを参照して、受信メッセージに対するフィルタ処理を実施する(S10)。通信制御部34が実施するフィルタ処理には、受信IDと、記憶部20に記憶されているIDテーブルの登録受信IDとを照合して、自ECU10が使用する情報が含まれたフレームFであるか否かの判定する処理が含まれる。受信IDと同じ値の登録受信IDが上記のIDテーブルに含まれる場合、通信制御部34は、登録受信IDと一致した受信IDが附されたフレームFを、受信メッセージとして抽出し、記憶部20の一時記憶領域26に格納する。
次に、通信制御部34は、上記S10におけるフィルタ処理によって抽出された受信メッセージを判定の対象にした判定処理を実施する(S11)。上記の判定処理の詳細については、後述する。
次に、通信制御部34は、上記S11における判定の結果により、判定の対象にした受信メッセージに関して情報が欠損しているか否かを判定する(S12)。上記S12における判定の結果により、情報が欠損していないと判定した場合(S12:No)、通信制御部34は、上記S11の判定処理の対象にした受信メッセージに対する応答処理において、受信メッセージを正常に受信したこと(受信正常)を通知する(S13)。中央制御部32は、上記の受信メッセージにより指示された事項の処理を実施する(S14)。
一方、上記S12における判定の結果により、情報が欠損していると判定した場合(S12:Yes)、通信制御部34は、上記S11の判定処理の対象にした受信メッセージに対する応答処理において、受信メッセージを受信する際に異常が検出されたこと(受信異常)を通知する(S15)。中央制御部32は、上記の受信メッセージにおける情報の欠損に対するフェイルセーフ処理を実施する(S16)。
以下の説明において、メッセージの送信側の装置としてECU10−1を例示し、メッセージの受信側の装置としてECU10−2を例示して説明する。
(ECU10の異常/故障と、その通知の方法について)
ECU10の異常/故障は、自装置内で検出されずとも、他のECU10に対して、下記のような、異常/故障により生じるメッセージの欠損による方法で通知される。他のECU10は、その通知を受けて、通知元のECU10の異常/故障を検出する。ECU10の異常/故障の種類と、その検出結果の通知の方法について一例を挙げて説明する。なお、当例ではECU10の異常/故障は、自装置内で検出しないが、自装置内で検出したうえで同様の方法を用いるものでもよい。
(1)送信装置になるECU10のハードウェアの故障
例えば、ECU10−1は、自装置のハードウェアが故障することにより、送信するユーザデータと誤り検査用情報の何れかに情報の欠損が生じるように構成されている。すなわち、ECU10−1のハードウェアが故障した場合、送信されるユーザデータと誤り検査用情報の何れかに情報に欠損、すなわちユーザデータと誤り検査用情報との間で保たれるべき規則性の欠損が生じる。ユーザデータと誤り検査用情報との間で保たれるべき規則性とは、例えば、メッセージの所定の一部のサム値と誤り検査用情報が示す値とが同一であるとの規則性のことである。ECU10−1は、欠損が生じた情報を自己の異常/故障の通知に利用する。通知を受けたECU10−2は、上記の情報の欠損や規則性の欠損が生じたメッセージに対する誤り検出の結果により、ECU10−1側に異常、すなわちハードウェアの故障が生じている可能性があると判定する。
(2)送信機器になるECU10の過負荷状態
例えば、ネットワークNWにおいて何らかの異常状態が生じたことにより、ECU10の処理が過負荷状態になり、ECU10は、正当なメッセージを送信できなくなることがある。ECU10−2の制御部30が実施する処理が過負荷状態になっていると、例えば、制御部30は、応答メッセージとして送信するためのユーザデータを記憶部20に書き込むことができなくなる。その結果、ECU10−2は、情報を更新した正当な応答メッセージを送信できなくなることがある。例えば、ECU10は、フレームFを送信する度に変化する情報、すなわち更新検査情報を、ユーザデータを送信するフレームFに含めて送信するが、上記のような状況が生じると、ユーザデータを更新したことを示す更新検査情報の規則性が乱れ、規則性が保たれるべき更新検査情報の規則性の欠損が生じる。
ユーザデータを更新したことを示す更新検査情報の規則性とは、例えば、ユーザデータが更新されるたびに更新検査情報が示す値が所定値ずつ加算されるとの規則性のことである。ECU10−2は、欠損が生じた情報を自己の異常/故障の通知に利用する。通知を受けたECU10−1は、受信したメッセージにおける情報の欠損や規則性の欠損を検出して、ECU10−2側に異常、すなわち過負荷状態が生じている可能性があると判定する。
(情報の欠損が生じたことを検出する判定処理)
ECU10は、情報の欠損が生じたことを検出する判定処理を、例えば、図5に示す判定規則に従って実施する。図5は、情報の欠損が生じたことを検出する判定処理の一例を示す図である。ECU10は、誤り検査用情報の異常と更新検査情報の異常の少なくとも何れかを検出した場合に、受信メッセージに異常があったと判定する。
例えば、上記「(1)送信装置になるECU10のハードウェアの故障」を検出する場合には、ECU10−2は、上記の誤り検出処理の対象として、ECU10−1から受信したメッセージの誤り検査用情報を検査の対象に含めた検査を実施する。ECU10−2は、メッセージの誤り検査用情報として、ECU10−1から受信したメッセージのフレームFにおけるCRC、ユーザデータに付与されるSUM値やパリティ等の各種誤り検査用情報のうちの少なくとも何れかを検査の対象に含める。
ECU10−2は、これらの各種誤り検査用情報のうちから少なくとも何れかを上記の誤り検出処理の対象として選択して、上記の検出を実施してもよく、或いは、複数の種類の誤り検査用情報を組み合わせて上記の検出を実施してもよい。
また、例えば、上記「(2)送信機器になるECU10の過負荷状態」を検出する場合には、ECU10−2は、フレームFを送信する度に変化する情報、すなわち規則性が保たれた更新検査情報を付与したフレームFを送信する。ECU10−1は、更新検査情報が示す規則性を検出することにより、規則性が保たれた更新検査情報が示す規則性に欠損が生じたことを検出できる。ECU10−1は、応答メッセージにおける更新検査情報の欠損の検出結果から、ECU10−1の過負荷状態を検出してもよい。
なお、ECU10は、更新検査情報の異常の検出については、予め定められた期間にN回以上の異常の検出が累積された場合に、異常の発生と判定するように、異常検出時の保護段数に従って検出するようにしてもよい。このように、ECU10は、保護段数を定めることにより異常状態の過検知を防ぎつつ、情報の欠損が生じたことを検出する判定を実施できる。
(フェイルセーフ処理)
上記のとおり本実施形態におけるECU10は、フェイルセーフ処理を実施するために、自ら何らかの異常状態を検知して、或いは、他のECU10からの情報の欠損や規則性の欠損による異常の通知を受けて、そのECU10の異常を検知する。何らかの異常が生じていることを検知したECU10、或いは、他のECU10の異常の通知を受けたECU10は、少なくとも自らの制御状態を安全な状態を維持するようにフェイルセーフ処理を実施する。ECU10におけるフェイルセーフ処理は、各ECU10に共通するものと、ECU10のそれぞれに割り付けられた機能の種類に応じて予め決定されるものがある。
以下、各ECU10が共通して実施するフェイルセーフ処理を例示して説明する。各ECU10は、ネットワークNWにおける不正な行為が実施されるか否かに関係なく、検出された情報の欠損や規則性の欠損に応じたフェイルセーフ処理をそれぞれ実施する。
ECU10−2は、ECU10−1から受信したメッセージから情報の欠損や規則性の欠損を検出した場合、ECU10−1から送信された制御情報(ユーザデータ)等をECU10−2の処理に用いない、というルールにのっとったフェイルセーフ処理を実施する。このようなECU10−2は、上記の制御情報を含むメッセージを受信した場合、上記のメッセージを受信したこと自体を取り消すように処理したり、或いは、受信したメッセージに含まれる制御情報を破棄したりするなどの予め定められた処理を実施してもよい。
上記のように、ECU10−2は、送信された制御情報等を処理に用いないようにする。ただし、処理を実施するには、上記の制御情報に代わる何らかの情報が必要になる。ECU10−2は、処理に用いない制御情報等を、所望の動作を実施させるための標準的な値に置き換えてもよい。この場合、ECU10−2は、例えば、所望の動作を実施させるための標準的な値を記憶部20に記憶させておき、メッセージに含まれた制御情報等が示す値を上記の標準的な値に置き換える。ECU10−2は、制御情報等が示す値を置き換えるための仮の値として標準的な値を予め用意しておくことで、上記の仮の値を利用することが可能になり、安全な状態を維持して所定の処理を実施することができる。
図6と図7を参照して、上記の受信処理を実施するECU10の動作を説明する。図6と図7は、ネットワークNWにおける不正な行為が検出されない場合の車両用通信システムの動作を示すシーケンス図である。
各ECU10は、宛先のECU等を識別可能なIDを含むメッセージをネットワークNWに送信する(S101)。例えば、図6に例示するECU10−1から送るメッセージのIDは、ECU10−2宛のメッセージであることを示す。
次に、ECU10−2は、ECU10−1から送信されたメッセージを受信して(S201)、受信メッセージに対応する応答メッセージをネットワークNWに送信する(S202)。ECU10−2は、受信したメッセージに異常を示す情報が含まれるか否かの判定を実施する。ECU10−2は、その判定の結果、受信したメッセージに情報の欠損や規則性の欠損がないことを検出する。これにより、ECU10−2は、少なくとも、ECU10−1が正常に稼働中であると判定して、ECU10−2自身の処理として、フェイルセーフ処理を実施しない。
次に、ECU10−1は、ECU10−2から応答メッセージを受信する(S102)。これにより、ECU10−1は、ECU10−2が正常にメッセージを受信できたことを検知できる。
上記のとおり、S101からS102までの一連の手順で、ECU10−1からECU10−2に対するメッセージの送信が完了する。さらに、上記のS101からS102までの一連のシーケンスを繰り返すことにより、ECU10−1からECU10−2に対するメッセージの送信を繰り返すことができる。
一方、図7に示すように、ECU10−1が所定の異常な状態にある場合には、ECU10−1がメッセージをネットワークNWに送信すると、そのメッセージには所定の欠損が生じる(S111)。
次に、ECU10−2は、ECU10−1から送信されたメッセージを受信して(S211)、受信メッセージに対応する応答メッセージをネットワークNWに送信する(S212)。さらに、ECU10−2は、受信したメッセージに情報の欠損や規則性の欠損があるか否かの判定を実施する。ECU10−2は、その判定の結果、受信したメッセージに情報の欠損や規則性の欠損があったことを検出して、ECU10−2自身の処理として、フェイルセーフ処理を実施する(S213)。
次に、ECU10−1は、ECU10−2から応答メッセージを受信する(S112)。これにより、ECU10−1は、ECU10−2が正常にメッセージを受信できなかったことを検知できる。
なお、ECU10−2は、S213において、受信したメッセージに異常すなわち情報の欠損や規則性の欠損があったことを検出した場合には、異常を検出した以降の受信処理を制限する。例えば、ECU10−2は、異常を起こしている送信側の装置のECU10−1と同一のIDを用いる装置(例えば不正にECU10−1と同一のIDを用いるノード50)から受信するデータを、ECU10−2の処理に用いないようにする。例えば、ECU10−2は、受信したメッセージを破棄する、或いは、受信したメッセージが示す情報を、同情報が示す値とは別の値に置換して、受信したメッセージに係る処理を実行する。
次に、図8から図12を参照して、ネットワークNWにおける不正な行為が実施された場合の車両用通信システムについて説明する。
ここでは、正規な外部装置ではないノード50がDLC3に接続された場合を例示する。ノード50は、ネットワークNWにおける不正な行為として、なりすまし、DoS攻撃、不正アクセス等のネットワークNWにおける不正な行為を実施し、例えば、ノード50は、車両の走行時等に活性化し、車両用通信システム1の処理に影響を及ぼすような処理を実施する。
以下、ネットワークNWにおける不正な行為として、なりすましが実施された場合について説明する。
比較例の車両用通信システムに係るネットワークNWにおいて、なりすましが実施された場合を図8に例示する。図8は、比較例の車両用通信システムの動作を例示する図である。ノード50は、ECU10−1になりすまして、ECU10−2宛に「なりすましフレームA」を送信する。ECU10−2は、「なりすましフレームA」を受信しても、正当なフレームFとの違いを識別することができず、「なりすましフレームA」による不正なメッセージを受信してしまう。ECU10−2以外の他のECU10も、ECU10−1になりすましたノード50がネットワークNWに接続されていることを検出することができないことから、比較例の車両用通信システムは、ノード50によるなりすましの影響を低減することができない。
これに対し、本実施形態の車両用通信システム1におけるECU10−1は、自ECU10−1になりすますノード50がネットワークNWに接続されていることを検出する。以下、EUC10−1の詳細について説明する。
図9は、本実施形態のECU10−1の構成を示す図である。図2と同じ構成には、上記の符号と同じ符号を附す。「k−1」と記載する符号を附した構成は、図2において符号「k」を附した構成に対応する。
ECU10−1は、記憶部20−1と、制御部30−1と、CANコントローラ36と、CANトランシーバ38とを備える。以下、ECU10−1について、上記のECU10と異なる点を中心に説明する。
記憶部20−1は、アプリケーションプログラム22、通信制御プログラム24−1等のプログラム、上記のプログラムが参照する各種情報などを格納する。
通信制御プログラム24−1は、通信制御プログラム24と同様のプログラムと、ネットワークNWにおける不正な行為として、なりすましが実施されたことを検出する処理を実行するためのプログラムとを含む。なりすましを検出する処理の詳細は後述する。
制御部30−1は、中央制御部32と、通信制御部34−1とを備える。
通信制御部34−1は、通信制御プログラム24−1を実行することにより機能し、中央制御部32からの制御を受けECU10−1の通信処理を実行する。通信制御部34−1は、CANトランシーバ38により受信されたフレームFの受信IDとIDテーブルの登録送信IDとを参照し、なりすましが実施されたか否かと、受信されたフレームFに関して自装置の中央制御部32が使用する情報が含まれたフレームFであるか否かとの双方の判定を実施する。
図10は、ECU10−1が不正な行為を検出する際に実施する処理の概要を示すフローチャートである。ECU10−1における通信制御部34−1は、下記の手順に従って所定の処理を実施する。
まず、通信制御部34−1は、ネットワークNWにおける不正な行為(本実施形態であれば、なりすまし)の検出処理を実施する(S20)。例えば、通信制御部34−1は、ECU10−1が送信元であることを示すIDが付されたメッセージが、自ECU10−1以外の他の装置から送信されたことを検出して、なりすましというネットワークNWにおける不正な行為が実施されたと判定する。
上記の判定の際に、通信制御部34−1は、IDテーブルに格納されている登録IDのうち登録送信IDを利用する。通信制御部34−1は、受信されたフレームFに関して、登録送信IDと同じ値の受信IDが附されたフレームFであるか否かを判定することで、ネットワークNWにおける不正な状況が検出されたか否か、要するに、なりすましが実施されたか否かを判定する(S22)。
S22における判定により、なりすましが実施されたと判定した場合に(S22:Yes)、通信制御部34−1は、不正な行為に対するフェイルセーフ処理を、他のECU10に対して実施させるように制御する(S26)。
例えば、通信制御部34−1は、上記のようにネットワークにおける不正な行為を検出した場合にも、所定の異常状態が生じた場合と同様の方法を利用して、他のECU10に対してフェイルセーフ処理を実施させるように制御する。通信制御部34−1は、所定の異常状態が生じた場合と同様に、情報の欠損や規則性の欠損といった所定の欠損が生じたメッセージを生成する。所定の異常状態には、例えば、装置が故障した状態、装置の処理が過負荷になった状態等が含まれる。所定の欠損が生じたメッセージとは、メッセージに含まれる全ての情報のうち少なくとも一部の値を他の値に変更することにより、ECU10−2が正当なメッセージであると判定できないようにしたメッセージのことである。所定の欠損が生じるようにECU10−1が値を変更する情報には、ECU10−2宛にメッセージを送達可能とするために必要とされるID等の情報は含まれない。例えば、ECU10−1は、誤り検出に用いる情報、データを更新したことを示す更新検査情報等の情報に欠損を生じさせる。
より具体的な一例を示す。通信制御部34−1は、送信するメッセージの伝送誤りを検出するために付加するCRC、SUM値、パリティ等の誤り検出符号を、正当な値と異なる値にして、所定の欠損を生じたメッセージを生成する。或いは、通信制御部34−1は、メッセージに含めて送信される情報が更新されたことを示す更新検査情報を、正当な値と異なる値にして、所定の欠損を生じたメッセージを生成する。
通信制御部34−1は、上記の所定の欠損が生じたメッセージを、CANコントローラ36を介してバス2に送信する。これにより、通信制御部34−1は、宛先として選択した他のECU10、例えばECU10−2に対してフェイルセーフ処理を実施させるように制御する。
ECU10−2は、上記のような所定の欠損が生じたメッセージを受信することで、フェイルセーフ処理を実施する。ECU10−2は、所定の欠損が生じたメッセージを受信したことに応じて、受信エラーを示す応答メッセージをECU10−1宛に送信する。
次に、通信制御部34−1は、受信エラーを示す応答メッセージをECU10−2から受信して(S27)、ECU10−2において受信処理の過程でエラーが検出されたことを検出し、この図に示す手順の処理を終える。
一方、S22における判定により、なりすましが実施されなかったと判定した場合に(S22:No)、通信制御部34−1は、受信されたフレームFに関して、自装置のフェイルセーフ処理が必要とされている状況か否かを判定する処理を含む通常の受信処理を実施する(S24)。例えば、通信制御部34−1は、前述の図4におけるS11からS16までの処理を実施する。通信制御部34−1は、受信メッセージに対する受信処理を完了させて、この図に示す手順の処理を終える。
図11と図12を参照して、ネットワークNWにおけるなりすましに対する対策を実施する車両用通信システム1について説明する。図11は、なりすましが実施された場合の車両用通信システム1の動作を示すシーケンス図である。図12は、ネットワークNWにおいて、なりすましが実施された場合の車両用通信システム1の動作を示す図である。
図11に示すように、ノード50は、ECU10−1になりすまして送信元になり、ECU10−2宛のメッセージをネットワークNWに送信する(S521)。上記メッセージを含むフレームF(以下、なりすましフレームAという。)のIDから、送信元がECU10−1であり、宛先がECU10−2であることがわかる。ただし、上記のとおりメッセージの真の送信元は、ノード50でありECU10−1ではない。
同メッセージは、ネットワークNWに接続された各ECU10に届く。ECU10−2は、なりすましフレームAのIDが示す宛先が自装置を指定しているので、同メッセージを受信する(S221)。ECU10−3は、なりすましフレームAのIDが示す宛先が自装置を示す値とは異なる値であるので、同メッセージを受信しない(S321)。一方、ECU10−1は、上記メッセージを含むなりすましフレームAに、送信元が自装置であることを示す値のIDが付されていることを検出して、検出の結果により送信元がなりすまされたメッセージであると識別して、同メッセージを受信する(S121)。
次に、ECU10−2は、ノード50から送信されたメッセージに対応する応答メッセージをネットワークNWに送信する(S222)。ECU10−1は、ECU10−2から応答メッセージを受信する(S122)。なお、以下に示す処理は、S222とS122の処理と独立させて実施することができ、ECU10−1は、S122の完了を待たずに以下の処理を実施することができる。
次に、ECU10−1は、S121において受信したメッセージが、自ECU10−1にとって送信元がなりすまされたメッセージとして検出することを通して、ECU10−1は、なりすましというネットワークNWにおける不正な行為が実施されたと判定する(S123)。
次に、ECU10−1は、ECU10−2にフェイルセーフ処理を実施させるために、自装置が所定の異常状態にある場合と同様の所定の欠損が生じたメッセージを生成して、生成したメッセージを含むフレームBをECU10−2宛に送信する(S124)。
次に、ECU10−2は、ECU10−1から、メッセージを受信して(S224)、受信したメッセージに異常があるか否かの判定を実施する。ECU10−2は、受信したメッセージに欠損が有ったことを検出し、このメッセージに対する応答メッセージを生成して送信する(S225)。ECU10−2は、上記の応答メッセージを、再送を要求するメッセージとして送信してもよい。
次に、ECU10−1は、ECU10−2から応答メッセージを受信する(S125)。これにより、ECU10−1は、ECU10−2が正常にメッセージを受信できなかったことを検知できる。
さらに、ECU10−2は、その判定の結果に基づいたECU10−2自身の処理としてのフェイルセーフ処理を実施する(S226)。
以上に説明した、第1の実施形態によれば、車両用通信システム1は、少なくともECU10−1とECU10−2とを備える。ECU10−1は、ネットワークNWに接続され、自ECU10−1が所定の異常状態にある場合に、ネットワークNWに送信するメッセージに所定の欠損が生じる。ECU10−2は、ネットワークNWに接続され、ネットワークNWから受信するメッセージにおいて所定の欠損が検出された場合に所定のフェイルセーフ処理を行う。さらにECU10−1は、ネットワークNWにおける不正な行為を検出した場合にも、自装置が所定の異常状態にある場合と同様の所定の欠損が生じたメッセージを生成して送信する。これにより、車両用通信システム1は、不正な行為の対象とされたECU10に不正な行為の影響がおよぶことを軽減し、より簡便な構成により、ネットワークNWにおける不正な行為からECU10を守ることができる。
(第2の実施形態)
以下、第2の実施形態について説明する。第2の実施形態において、ネットワークNWにおける不正な行為がDoS(Denial of Service)攻撃である場合について説明する。より具体的には、第1の実施形態において、車両用通信システム1がノード50によるなりすまし対する処理を実施する場合を示したが、これに代えて、本実施形態の車両用通信システム1Aは、不正な行為がノード50によるDoS攻撃に対する処理を実施する。以下、この点を中心に説明する。
車両用通信システム1Aは、ECU10−1AとECU10−2とECU10−3とを備える。ECU10−1Aは、第1の実施形態のECU10−1に対応する。ECU10−1は、なりすましを検出したが、これに代えて、ECU10−1Aは、DoS攻撃を検出する。ECU10−1Aは、記憶部20−1Aと、制御部30−1Aと、CANコントローラ36と、CANトランシーバ38とを備える。以下、ECU10−1Aについて、上記のECU10−1と異なる点を中心に説明する。
記憶部20−1Aは、アプリケーションプログラム22や、通信制御プログラム24−1A等のプログラムと、上記のプログラムが参照する各種情報を格納する。
通信制御プログラム24−1Aは、通信制御プログラム24と同様のプログラムと、ネットワークNWにおける不正な行為として、DoS攻撃が実施されたことを検出する処理を実行するためのプログラムとを含む。DoS攻撃を検出する処理の詳細は後述する。
制御部30−1Aは、中央制御部32と、通信制御部34−1Aとを備える。
通信制御部34−1Aは、通信制御プログラム24−1Aを実行することにより機能し、中央制御部32からの制御を受けECU10−1Aの通信処理を実行する。通信制御部34−1Aは、他のECU10に対するDoS攻撃が実施されているか否かを判定する。
例えば、前述の図10を参照して、ECU10−1Aの処理について説明する。
通信制御部34−1Aは、ネットワークNWにおける不正な行為の検出処理(S20)として、他のECU10に対して送信したメッセージに対応する応答メッセージの受信状況を検出する。通信制御部34−1Aは、他のECU10に対して送信したメッセージに対応する応答メッセージを所定の時間内に受信したか否かの判定により、不正な状況を検出したか否かを判定する(S22)。通信制御部34−1Aは、応答メッセージを所定の時間内に受信できなかった場合に、メッセージを先に送付した他のECU10が応答メッセージを返信できない状況にあると判定し、他のECU10に対するDoS攻撃が実施されている可能性が有ると判定する。S22における判定により、ネットワークNWにおける不正な行為の一種であるDoS攻撃が実施されている可能性が有ると判定した(S22:Yes)後、通信制御部34−1Aは、前述の通信制御部34−1と同様の処理を実施する(S26、S27)。
一方、S22における判定により、応答メッセージを所定の時間内に受信できた場合に(S22:No)、通信制御部34−1Aは、メッセージを先に送付した他のECU10が正常に稼働しており、他のECU10に対するDoS攻撃が実施されていないと判定し、前述のS24の処理と同様に処理を実施する。
図13を参照して、ネットワークNWにおけるDoS攻撃に対する対策を実施する車両用通信システム1Aについて説明する。図13は、DoS攻撃が実施された場合の車両用通信システム1Aの動作を示すシーケンス図である。なお、以下の説明において、ノード50は、ECU10−2に対するDoS攻撃を行うためのフレームDoSをネットワークNWに送信するものと仮定する。
図13に示すように、ECU10−1Aは、ECU10−2宛のメッセージであることを示すIDを含むメッセージをネットワークNWに送信する(S131)。
次に、ECU10−2は、ECU10−1Aから送信されたメッセージを受信して(S231)、受信メッセージに対応する応答メッセージをネットワークNWに送信しようとするが(S231)、ノード50によるECU10−2に対するDoS攻撃を受け、応答の送信ができない状況に陥る(S222)。
そのため、ECU10−1Aは、ECU10−2から応答メッセージの到来を待機するが、所定の時間内に応答メッセージを検出できない(S132)。これにより、ECU10−1は、ノード50によるECU10−2に対するDoS攻撃(ネットワークNWにおける不正な行為)が生じているものと判定する(S133)。
次に、ECU10−1Aは、ECU10−2にフェイルセーフ処理を実施させるために、自装置が所定の異常状態にある場合と同様の所定の欠損が生じたメッセージを生成して、ECU10−2宛に送信する(S134)。
次に、ECU10−2は、ECU10−1Aから、メッセージを受信して(S234)、受信したメッセージに異常があるか否かの判定を実施する。ECU10−2は、受信したメッセージに欠損が有ったことを検出し、このメッセージに対する応答メッセージを生成して送信する(S235)。ECU10−2は、上記の応答メッセージを、再送を要求するメッセージとして送信してもよい。
次に、ECU10−1Aは、ECU10−2から応答メッセージを受信する(S135)。これにより、ECU10−1Aは、ECU10−2が正常にメッセージを受信できなかったことを検知できる。
さらに、ECU10−2は、その判定の結果に基づいたECU10−2自身の処理としてのフェイルセーフ処理を実施する(S236)。
以上に説明した、第2の実施形態によれば、車両用通信システム1において、ECU10−1Aは、車両用通信システム1を構成するECU10宛に所定量のメッセージが送信されたことを検出したことにより、ネットワークNWにおける不正な行為を検出したと判定する。車両用通信システム1は、このようなDoS攻撃によりECU10−2の処理が滞っている状況を検出したECU10−1Aから、ECU10−2にフェイルセーフ処理を実施させて、その制御状態を安全な状態を維持できるようにする。
(第3の実施形態)
以下、第3の実施形態について説明する。第3の実施形態において、ネットワークNWにおける不正な行為が不正アクセスである場合について説明する。より具体的には、第1の実施形態において、車両用通信システム1がノード50によるなりすまし対する処理を実施する場合を示したが、これに代えて、本実施形態の車両用通信システム1Bは、ノード50によるECU10−1に対する不正アクセスに対する処理を実施する。例えば、自ECU10宛の正当なメッセージと異なるメッセージがECU10宛に送信されたことは、上記の不正アクセスに含まれる。以下、この点を中心に説明する。
車両用通信システム1Bは、ECU10−1BとECU10−2とECU10−3とを備える。ECU10−1Bは、第1の実施形態のECU10−1に対応する。ECU10−1は、なりすましを検出したが、これに代えて、ECU10−1Bは、自装置に対する不正アクセスを検出する。ECU10−1Bは、記憶部20−1Bと、制御部30−1Bと、CANコントローラ36と、CANトランシーバ38とを備える。以下、ECU10−1Bについて、上記のECU10−1と異なる点を中心に説明する。
記憶部20−1は、アプリケーションプログラム22や、通信制御プログラム24−1B等のプログラムと、上記のプログラムが参照する各種情報を格納する。
通信制御プログラム24−1Bは、通信制御プログラム24と同様のプログラムと、ネットワークNWにおける不正な行為として、不正アクセスが実施されたことを検出する処理を実行するためのプログラムとを含む。不正アクセスを検出する処理の詳細は後述する。
制御部30−1Bは、中央制御部32と、通信制御部34−1Bとを備える。
通信制御部34−1Bは、通信制御プログラム24−1Bを実行することにより機能し、中央制御部32からの制御を受けECU10−1Bの通信処理を実行する。通信制御部34−1Bは、次装置に対する不正アクセスが実施されているか否かを判定する。
例えば、前述の図10を参照して、ECU10−1Bの処理について説明する。
通信制御部34−1Bは、ネットワークNWにおける不正な行為の検出処理(S20)として、到来したフレームFのIDと記憶部20のIDテーブルに格納されている登録受信IDとを対比して、自装置に対する不正なメッセージが到来したことを検出する。通信制御部34−1Bは、自装置に対する不正なメッセージが到来したことを検出することより、不正な行為(不正アクセス)が実施されている状況を検出したか否かを判定する(S22)。S22における判定により、ネットワークNWにおける不正な行為の一種である不正アクセスが実施されている可能性が有ると判定し(S22:Yes)、通信制御部34−1Bは、不正な行為に対するフェイルセーフ処理を、自装置において実施するように制御するとともに、自装置がメッセージを送る宛先のECU10においても同様に、不正な行為に対するフェイルセーフ処理を実施するように制御する(S26)。
例えば、通信制御部34−1Bは、上記のようにネットワークにおける不正な行為を検出した場合にも、所定の異常状態が生じた場合と同様の方法を利用して、自装置がメッセージを送る宛先のECU10に対してフェイルセーフ処理を実施させるように制御する。通信制御部34−1Bは、前述の通信制御部34−1と同様の方法で、所定の異常状態が生じた場合と同様に、情報の欠損や規則性の欠損といった所定の欠損が生じたメッセージを生成する。
以降の処理は、前述の通信制御部34−1と同様の処理を実施する(S27)。
一方、S22における判定により、不正な状況を検出しなかった場合に(S22:No)、通信制御部34−1Bは、不正アクセスが実施されていないと判定し、前述のS24の処理と同様の処理を実施する。
図14を参照して、ネットワークNWにおける不正アクセスに対する対策を実施する車両用通信システム1Bについて説明する。図14は、不正アクセスが実施された場合の車両用通信システム1の動作を示すシーケンス図である。
図14に示すように、ノード50は、ECU10−1に不正アクセスを試みるためのメッセージを含むフレームFをネットワークNWに送信する(S541)。上記メッセージを含むフレームFのIDによれば、少なくとも宛先がECU10−1であることを示すものである。
同メッセージは、ネットワークNWに接続された各ECU10に届く。ECU10−1は、フレームFのIDが示す宛先に一致しているので、同メッセージを受信する(S141)。他のECU10は、フレームFのIDが示す宛先と異なるため、同メッセージを受信しない(S241、S341)。
次に、ECU10−1は、S141において受信したメッセージが、自ECU10−1に対する不正アクセスを目的としたメッセージを検出することを通して、ECU10−1は、不正アクセスというネットワークNWにおける不正な行為が実施されたと判定する(S143)。
次に、ECU10−1は、他のECU10にフェイルセーフ処理を実施させるために、自装置が所定の異常状態にある場合と同様の所定の欠損が生じたメッセージを生成して、生成したメッセージを含むフレームを、例えばECU10−2宛に送信する(S144)。
次に、ECU10−2は、ECU10−1から、メッセージを受信して(S244)、受信したメッセージに異常があるか否かの判定を実施する。ECU10−2は、受信したメッセージに欠損が有ったことを検出し、その結果に基づいたECU10−2自身の処理としてのフェイルセーフ処理を実施する(S226)。
さらに、ECU10−1は、自装置におけるフェイルセーフ処理を実施する(S146)。
以上に説明した、第3の実施形態によれば、車両用通信システム1Bにおいて、ECU10−1は、自ECU10−1宛の正当なメッセージと異なるメッセージがECU10−1宛に送信されたことを検出したことにより、ネットワークNWにおける不正な行為を検出したと判定する。
なお、なりすましの検知方法、DoS攻撃の検知方法、不正アクセスの検知方法は上記の例に限らずその他の方法を用いることができる。
以上説明した少なくともひとつの実施形態によれば、通信システムは、送信装置と受信装置とを有する。送信装置は、ネットワークに接続され、自装置が所定の異常状態にある場合に前記ネットワークに送信するメッセージが所定の欠損が生じたメッセージとなる。受信装置は、前記ネットワークに接続され、前記ネットワークから受信するメッセージにおいて前記所定の欠損が検出された場合に所定のフェイルセーフ処理を行う。送信装置は、前記ネットワークにおける不正な行為を検出した場合にも、前記自装置が所定の異常状態にある場合と同様の所定の欠損が生じたメッセージを生成して送信する。これにより、通信システムは、より簡便な構成により、ネットワークにおける不正な行為から制御装置を守ることができる。
なお、上記の実施形態において、欠損を生じたメッセージを受信した受信側ECU10は、送信側ECU10における故障に起因して生じた欠損の場合と送信側ECU10が不正な行為を検出したことに起因して生じた欠損の場合とのいずれの場合も、図4に示す共通したプロセスによりフェイルセーフ処理を実行する。これにより、車両用通信システム1(1A、1B)は、フェイルセーフ処理を実施するための判断プロセスをECU10の処理に追加する必要もなく、より簡便な構成により、ネットワークにおける不正な行為からECU10を守ることができる。
また、受信装置になるECU10が異常検知等の目的で有する検出機能を兼用することで、なりすましなどのネットワークNWにおける不正な行為が実施されたことを通知する新たなメッセージを、ECU10間の通信のメッセージとして用意する必要がない。また、新たなメッセージを異常の通知に利用するための通信処理をECU10の処理に追加することなく、ECU10は不正な行為が実施されたことを示す情報を伝達することができる。ECU10間で仮に新たなメッセージを利用することにした場合には、ECU10およびECU10に関連する各装置に上記の通信処理の機能をそれぞれ追加することが必要となる。ECU10およびECU10に関連する装置のメーカーが異なる場合には、車両用通信システム1の設計から検証までに要する労力が必要とされるが、本実施形態の車両用通信システム1であれば、上記のような煩雑な処理を要することなく、実施することができる。
以上の観点からも、本実施形態の車両用通信システム1は、より簡便な構成を用いて、ネットワークにおける不正な行為から車両制御装置を守ることができるものである。
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
1、1A、1B‥車両用通信システム(通信システム)、2…バス、3…DLC、10…ECU(制御装置)、10−1…ECU(送信装置)、10−2…ECU(受信装置)、10−3…ECU、20…記憶部、30…制御部、36…CANコントローラ、38…CANトランシーバ、50…ノード、NW…ネットワーク

Claims (7)

  1. ネットワークに接続され、自装置が所定の異常状態にある場合に前記ネットワークに送信するメッセージが所定の欠損が生じたメッセージとなる送信装置と、
    前記ネットワークに接続され、前記ネットワークから受信するメッセージにおいて前記所定の欠損が検出された場合に所定のフェイルセーフ処理を行う受信装置と、
    を備え、
    前記送信装置は、識別情報とともにメッセージを送信するとともに、自装置になりすました装置があることを検出した場合に、前記自装置が所定の異常状態にある場合と同様の所定の欠損が生じたメッセージを生成して送信し、
    前記受信装置は、前記なりすました装置からメッセージを受信するとともに、前記所定のフェイルセーフ処理として、前記所定の欠損を検出したメッセージと同じ識別子を含むメッセージを受信した場合に、当該受信したメッセージに含まれた情報を前記受信装置における処理に用いないようにする
    ことを特徴とする通信システム。
  2. 前記受信装置は、前記所定の欠損を検出したメッセージと同じ識別子を含むメッセージを受信した場合に、当該メッセージを破棄または当該メッセージの値を別の値に置換することで、前記受信したメッセージに含まれた情報を前記受信装置における処理に用いないようにする
    ことを特徴とする請求項1に記載の通信システム。
  3. 前記送信装置は、
    自装置が送信元であることを示す識別子が付されたメッセージが他の装置から送信されたことを検出して、前記ネットワークにおける不正行為を検出したと判定する
    ことを特徴とする請求項1または請求項2に記載の通信システム。
  4. 前記送信装置は、
    前記送信するメッセージの伝送誤りを検出するための情報を正当な値と異なる値にして、前記所定の欠損を生じたメッセージとする
    ことを特徴とする請求項1から請求項の何れか1項に記載の通信システム。
  5. 前記送信装置は、
    前記送信するメッセージによって送信される情報が更新されたことを示す情報を、正当な値と異なる値にして、前記所定の欠損を生じたメッセージとする
    ことを特徴とする請求項1から請求項の何れか1項に記載の通信システム。
  6. ネットワークから受信したメッセージに所定の欠損が検出された場合に所定のフェイルセーフ処理を行う受信装置宛に、メッセージを送信する制御装置であって、
    前記ネットワークに接続され、自装置が所定の異常状態にある場合に前記ネットワークに送信するメッセージが所定の欠損が生じたメッセージとなり、
    識別情報とともにメッセージを送信するとともに、自装置になりすました装置があることを検出した場合に、前記自装置が所定の異常状態にある場合と同様の所定の欠損が生じたメッセージを生成して送信する制御部
    を備え、
    前記受信装置は、前記なりすました装置からメッセージを受信するとともに、前記所定のフェイルセーフ処理として、前記所定の欠損を検出したメッセージと同じ識別子を含むメッセージを受信した場合に、当該受信したメッセージに含まれた情報を前記受信装置における処理に用いないようにする
    ことを特徴とする制御装置。
  7. ネットワークに接続され、自装置が所定の異常状態にある場合に前記ネットワークに送信するメッセージが所定の欠損が生じたメッセージとなる送信装置と、
    前記ネットワークに接続され、前記ネットワークから受信するメッセージにおいて前記所定の欠損が検出された場合に所定のフェイルセーフ処理を行う受信装置と、を含む通信システムの制御方法であって、
    前記送信装置は、識別情報とともにメッセージを送信するとともに、自装置になりすました装置があることを検出した場合に、前記自装置が所定の異常状態にある場合と同様の所定の欠損が生じたメッセージを生成して送信する過程と、
    前記受信装置は、前記なりすました装置からメッセージを受信するとともに、前記所定のフェイルセーフ処理として、前記所定の欠損を検出したメッセージと同じ識別子を含むメッセージを受信した場合に、当該受信したメッセージに含まれた情報を前記受信装置における処理に用いないようにする過程と
    を含むことを特徴とする制御方法。
JP2015207267A 2015-10-21 2015-10-21 通信システム、制御装置、及び制御方法 Active JP6286749B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2015207267A JP6286749B2 (ja) 2015-10-21 2015-10-21 通信システム、制御装置、及び制御方法
CN201610901703.0A CN107018122A (zh) 2015-10-21 2016-10-17 通信系统、控制装置和控制方法
US15/296,108 US20170118230A1 (en) 2015-10-21 2016-10-18 Communication system, control device, and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015207267A JP6286749B2 (ja) 2015-10-21 2015-10-21 通信システム、制御装置、及び制御方法

Publications (2)

Publication Number Publication Date
JP2017079429A JP2017079429A (ja) 2017-04-27
JP6286749B2 true JP6286749B2 (ja) 2018-03-07

Family

ID=58562136

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015207267A Active JP6286749B2 (ja) 2015-10-21 2015-10-21 通信システム、制御装置、及び制御方法

Country Status (3)

Country Link
US (1) US20170118230A1 (ja)
JP (1) JP6286749B2 (ja)
CN (1) CN107018122A (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018216959B4 (de) * 2018-10-02 2020-11-12 Continental Automotive Gmbh Verfahren zur Absicherung eines Datenpakets durch eine Vermittlungsstelle in einem Netzwerk, Vermittlungsstelle und Kraftfahrzeug
US10677350B2 (en) 2018-10-23 2020-06-09 Allison Transmission, Inc. Method of controlling transmission range in response to a loss of communication with an engine and system thereof
JP7409247B2 (ja) * 2020-07-14 2024-01-09 株式会社デンソー 不正侵入防止装置、不正侵入防止方法、及び不正侵入防止用プログラム
WO2022124069A1 (ja) * 2020-12-10 2022-06-16 株式会社オートネットワーク技術研究所 車載装置、不正検知方法及びコンピュータプログラム
JPWO2022239159A1 (ja) * 2021-05-12 2022-11-17

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4600158B2 (ja) * 2005-06-01 2010-12-15 トヨタ自動車株式会社 車両の電子制御装置
DE102011081452B3 (de) * 2011-08-24 2013-02-21 Conti Temic Microelectronic Gmbh Verfahren zum Übertragen von Botschaften in einem Kommunikationsnetzwerk.
US8925083B2 (en) * 2011-10-25 2014-12-30 GM Global Technology Operations LLC Cyber security in an automotive network
JP5522160B2 (ja) * 2011-12-21 2014-06-18 トヨタ自動車株式会社 車両ネットワーク監視装置
EP3651437B1 (en) * 2012-03-29 2021-02-24 Arilou Information Security Technologies Ltd. Protecting a vehicle electronic system
JP5935543B2 (ja) * 2012-06-29 2016-06-15 トヨタ自動車株式会社 通信システム
JP5617875B2 (ja) * 2012-08-10 2014-11-05 株式会社デンソー 車載ネットワークシステム
JP2014058210A (ja) * 2012-09-18 2014-04-03 Hitachi Automotive Systems Ltd 車両制御装置および車両制御システム
KR101371902B1 (ko) * 2012-12-12 2014-03-10 현대자동차주식회사 차량 네트워크 공격 탐지 장치 및 그 방법
JP5919205B2 (ja) * 2013-01-28 2016-05-18 日立オートモティブシステムズ株式会社 ネットワーク装置およびデータ送受信システム
US9401923B2 (en) * 2013-10-23 2016-07-26 Christopher Valasek Electronic system for detecting and preventing compromise of vehicle electrical and control systems
JP6126980B2 (ja) * 2013-12-12 2017-05-10 日立オートモティブシステムズ株式会社 ネットワーク装置およびネットワークシステム
US20150191151A1 (en) * 2014-01-06 2015-07-09 Argus Cyber Security Ltd. Detective watchman
KR101519777B1 (ko) * 2014-01-29 2015-05-12 현대자동차주식회사 차량 네트워크 내의 제어기간의 데이터 송신 방법 및 수신 방법
CN104301177B (zh) * 2014-10-08 2018-08-03 清华大学 Can报文异常检测方法及系统
US9843597B2 (en) * 2015-01-05 2017-12-12 International Business Machines Corporation Controller area network bus monitor

Also Published As

Publication number Publication date
CN107018122A (zh) 2017-08-04
US20170118230A1 (en) 2017-04-27
JP2017079429A (ja) 2017-04-27

Similar Documents

Publication Publication Date Title
CN111344192B (zh) 禁用恶意电子控制单元的系统、方法和计算机程序产品
JP6286749B2 (ja) 通信システム、制御装置、及び制御方法
US11356475B2 (en) Frame transmission prevention apparatus, frame transmission prevention method, and in-vehicle network system
US10911182B2 (en) In-vehicle information processing for unauthorized data
JP2020102886A (ja) 不正検知方法、監視電子制御ユニット及び車載ネットワークシステム
JP6566400B2 (ja) 電子制御装置、ゲートウェイ装置、及び検知プログラム
CN111147437B (zh) 基于错误帧归因总线断开攻击
JP7121737B2 (ja) 異常検知装置、異常検知方法およびプログラム
WO2017119027A1 (ja) 不正検知方法、監視電子制御ユニット及び車載ネットワークシステム
US11843477B2 (en) Anomaly determination method, anomaly determination device, and recording medium
CN109104352B (zh) 车辆网络操作协议和方法
JP7280082B2 (ja) 不正検知方法、不正検知装置及びプログラム
WO2018168291A1 (ja) 情報処理方法、情報処理システム、及びプログラム
US20210144124A1 (en) Security apparatus, attack detection method, and storage medium
US10721241B2 (en) Method for protecting a vehicle network against manipulated data transmission
US11218501B2 (en) Detector, detection method, and detection program
JP6527647B1 (ja) 不正検知方法、不正検知装置及びプログラム
KR102204656B1 (ko) 일반 can 메시지의 전송지연을 예측하는 can 네트워크에 대한 메시지플러딩 공격 완화 시스템
JP2018157339A (ja) 通信装置、および受信装置
WO2018020833A1 (ja) フレーム伝送阻止装置、フレーム伝送阻止方法及び車載ネットワークシステム
JP2017085197A (ja) 通信システム、送信装置、及び通信方法
US20220394470A1 (en) Method and control unit for detecting unauthorised data traffic in a packet-oriented data network of a motor vehicle, and corresponding motor vehicle
WO2017104122A1 (ja) 通信装置、通信方法、及び通信プログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170728

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170815

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170914

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180109

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180116

R150 Certificate of patent or registration of utility model

Ref document number: 6286749

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150