(57)【要約】【課題】車両のセキュリティを効率的に向上する。【解決手段】ゲートウェイＥＣＵ１２は、車両１０の外部装置（例えば不正装置２６）から送信されたフレームを受信する。ゲートウェイＥＣＵ１２は、受信フレームに設定されたＩＤに基づいて、受信フレームが正当か不正かを判定する。ゲートウェイＥＣＵ１２は、受信フレームを正当と判定した場合、受信フレームを処理ＥＣＵ１４へ転送し、受信フレームを不正と判定した場合、受信フレームをダミーＥＣＵ１６へ転送する。ダミーＥＣＵ１６は、不正と判定されたフレームに対する肯定的な応答を、当該フレームの送信元である外部装置（例えば不正装置２６）へ送信する。【選択図】図１
2018164232.tif 000002
【特許請求の範囲】
【請求項１】
車両に搭載された電子制御装置と、ダミー装置と、中継装置と、
を備え、
前記中継装置は、
前記車両の外部装置から送信されたフレームを受信する受信部と、
前記受信部により受信されたフレームに設定されたＩＤに基づいて、前記フレームが正当か、または、不正かを判定する判定部と、
前記判定部により前記フレームが正当と判定された場合、前記フレームに設定されたＩＤにより特定される送信先の電子制御装置へ前記フレームを転送し、前記フレームが不正と判定された場合、前記フレームを前記ダミー装置へ転送する転送部と、を含み、
前記ダミー装置は、前記中継装置において不正と判定されたフレームに対する肯定的な応答を前記外部装置へ送信する、
通信システム。
【請求項２】
前記ダミー装置は、
前記電子制御装置のメモリに記憶されたデータに対応するダミーデータを記憶する記憶部と、
前記中継装置において不正と判定されたフレームがメモリに記憶されたデータの提供指示を含む場合、前記記憶部に記憶されたダミーデータを含む応答を前記外部装置へ送信する送信部と、を含む、
請求項１に記載の通信システム。
【請求項３】
前記ダミー装置は、前記フレームがメモリに記憶されたデータの書き換え指示を含む場合、前記データの書き換えに成功したことを示す応答を前記外部装置へ送信する送信部を含む、
請求項１または２に記載の通信システム。
【請求項４】
車両に搭載された中継装置であって、
前記車両の外部装置から送信されたフレームを受信する受信部と、
前記受信部により受信されたフレームに設定されたＩＤに基づいて、前記フレームが正当か、または、不正かを判定する判定部と、
前記判定部により前記フレームが正当と判定された場合、前記フレームに設定されたＩＤにより特定される送信先の電子制御装置へ前記フレームを転送する転送部と、
前記フレームが不正と判定された場合、前記フレームに対する肯定的な応答を前記外部装置へ送信するダミー部と、
を備える中継装置。
【請求項５】
車両に搭載された中継装置が、
前記車両の外部装置から送信されたフレームを受信し、
受信した前記フレームに設定されたＩＤに基づいて、前記フレームが正当か、または、不正かを判定し、
前記フレームを正当と判定した場合、前記フレームに設定されたＩＤにより特定される送信先の電子制御装置へ前記フレームを転送し、前記フレームを不正と判定した場合、前記フレームをダミー装置へ転送し、
前記ダミー装置が、前記中継装置において不正と判定されたフレームに対する肯定的な応答を前記外部装置へ送信する、
通信方法。
【請求項６】
車両に搭載された中継装置に、
前記車両の外部装置から送信されたフレームを受信し、
受信した前記フレームに設定されたＩＤに基づいて、前記フレームが正当か、または、不正かを判定し、
前記フレームを正当と判定した場合、前記フレームに設定されたＩＤにより特定される送信先の電子制御装置へ前記フレームを転送し、
前記フレームを不正と判定した場合、前記フレームに対する肯定的な応答を前記外部装置へ送信するダミー装置へ前記フレームを転送する、
ことを実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ処理技術に関し、特に通信システム、中継装置、通信方法およびコンピュータプログラムに関する。
【背景技術】
【０００２】
近年、自動車には、多数の電子制御ユニット（Electronic Control Unit、以下「ＥＣＵ」と呼ぶ。）が搭載されている。これらのＥＣＵを繋ぐネットワークは車載ネットワークと呼ばれる。車載ネットワークには多数の規格が存在するが、広く普及した規格としてＣＡＮ（Controller Area Network）がある。
【０００３】
従来、車両制御装置のメモリの書き換え許可を判断する既存のセキュリティ情報（例えばセキュリティ関数）が第三者に知られてしまった場合でも、そのセキュリティ情報を変更することで、不正なメモリ書き換えの拡大を防止するメモリ書き換えシステムが知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−１８８５２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
複数のＥＣＵが車載ネットワークに繋がるシステムでは、システムのセキュリティを複数のＥＣＵが相互に診断することがある。この場合、１つのＥＣＵのセキュリティ情報を書き換えると、他のＥＣＵの診断アルゴリズムにも更新が必要になり、システム全体へ大きな影響を与えることがある。
【０００６】
本発明は上記課題に鑑みたもので、１つの目的は、車両のセキュリティを効率的に向上することである。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明のある態様の通信システムは、車両に搭載された電子制御装置と、ダミー装置と、中継装置と、を備える。中継装置は、車両の外部装置から送信されたフレームを受信する受信部と、受信部により受信されたフレームに設定されたＩＤに基づいて、フレームが正当か、または、不正かを判定する判定部と、判定部によりフレームが正当と判定された場合、フレームに設定されたＩＤにより特定される送信先の電子制御装置へフレームを転送し、フレームが不正と判定された場合、フレームをダミー装置へ転送する転送部と、を含む。ダミー装置は、中継装置において不正と判定されたフレームに対する肯定的な応答を外部装置へ送信する。
【０００８】
本発明の別の態様は、中継装置である。この装置は、車両に搭載された中継装置であって、車両の外部装置から送信されたフレームを受信する受信部と、受信部により受信されたフレームに設定されたＩＤに基づいて、フレームが正当か、または、不正かを判定する判定部と、判定部によりフレームが正当と判定された場合、フレームに設定されたＩＤにより特定される送信先の電子制御装置へフレームを転送する転送部と、フレームが不正と判定された場合、フレームに対する肯定的な応答を外部装置へ送信するダミー部と、を備える。
【０００９】
本発明のさらに別の態様は、通信方法である。この方法は、車両に搭載された中継装置が、車両の外部装置から送信されたフレームを受信し、受信したフレームに設定されたＩＤに基づいて、フレームが正当か、または、不正かを判定し、フレームを正当と判定した場合、フレームに設定されたＩＤにより特定される送信先の電子制御装置へフレームを転送し、フレームを不正と判定した場合、フレームをダミー装置へ転送し、ダミー装置が、中継装置において不正と判定されたフレームに対する肯定的な応答を外部装置へ送信する。
【００１０】
なお、以上の構成要素の任意の組合せ、本発明の表現を、コンピュータプログラム、コンピュータプログラムを記録した記録媒体、本装置を搭載した車両などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１１】
本発明によれば、車両のセキュリティを効率的に向上することができる。
【図面の簡単な説明】
【００１２】
【図１】実施例の車両の構成を示す図である。
【図２】図１のゲートウェイＥＣＵの機能構成を示すブロック図である。
【図３】図１のダミーＥＣＵの機能構成を示すブロック図である。
【図４】ゲートウェイＥＣＵの動作を示すフローチャートである。
【図５】ダミーＥＣＵの動作を示すフローチャートである。
【発明を実施するための形態】
【００１３】
実施例の車両１０に搭載されたゲートウェイＥＣＵは、外部ツールから攻撃のコマンドを受信したと判断した場合に、攻撃のコマンドをダミーＥＣＵへ転送する。ダミーＥＣＵは、コマンドの攻撃目標のＥＣＵになりすまして、あたかも攻撃が成功したように見せる応答を外部ツールへ返す。これにより、攻撃のコマンドが攻撃目標のＥＣＵに届くことを防止できる。また、攻撃が成功したと外部ツールに誤認識させ、以降の攻撃を抑制させることができる。
【００１４】
図１は、実施例の車両１０の構成を示す。車両１０は、ゲートウェイＥＣＵ１２、処理ＥＣＵ１４ａ、処理ＥＣＵ１４ｂ（総称する場合「処理ＥＣＵ１４」と呼ぶ。）、ダミーＥＣＵ１６、ＯＢＤ（On Board Diagnostics）コネクタ１８を備える。各ＥＣＵは、第１ＣＡＮ２０または第２ＣＡＮ２２に接続され、車載ネットワークを用いた通信システムである車載ネットワークシステム２４を構成する。
【００１５】
複数の処理ＥＣＵ１４は、第１ＣＡＮ２０に接続される。複数の処理ＥＣＵ１４は、少なくとも、各種の電装品を制御するボディコントロールモジュール（以下「ＢＣＭ」とも呼ぶ。）を含み、例えば、ドアロック、イモビライザー、イグニッションスイッチを制御するＢＣＭを含む。実施例では、ＢＣＭとして機能する処理ＥＣＵ１４（以下「ＢＣＭ−ＥＣＵ」とも呼ぶ。）が、外部装置により攻撃される対象となる。
【００１６】
また、複数の処理ＥＣＵ１４は、不図示のセンサ（温度センサ、速度センサ等）と接続され、センサによる検知内容を示すデータを外部装置へ送信するＥＣＵを含んでもよい。また、複数の処理ＥＣＵ１４は、不図示のアクチュエータ（ブレーキ、ステアリング等）と接続され、外部装置から受信したデータに基づいてアクチュエータを制御するＥＣＵを含んでもよい。
【００１７】
ダミーＥＣＵ１６は、第２ＣＡＮ２２に接続される。ダミーＥＣＵ１６は、処理ＥＣＵ１４に代わって、攻撃のコマンドを含むフレームの転送先となるＥＣＵである。ダミーＥＣＵ１６は、処理ＥＣＵ１４と異なり、センサとアクチュエータのいずれにも接続されない。ゲートウェイＥＣＵ１２は、第１ＣＡＮ２０と第２ＣＡＮ２２の両方に接続され、第１ＣＡＮ２０と第２ＣＡＮ２２を流れるフレームを中継し、またルーティングする。
【００１８】
ゲートウェイＥＣＵ１２は、車両１０の外部ネットワーク２８（４Ｇ網、インターネット等）と接続され、外部ネットワーク２８を介して、車両１０の外部装置と通信する。不正装置２６ａは、処理ＥＣＵ１４を不正に制御するためのコマンドを含むイーサネット（登録商標）フレームを、外部ネットワーク２８を介して車両１０へ送信する。
【００１９】
また、ゲートウェイＥＣＵ１２は、ＯＢＤコネクタ１８に接続された外部装置から入力されたＣＡＮフレームを受信する。不正装置２６ｂは、処理ＥＣＵ１４を不正に制御するためのコマンドを含むＣＡＮフレームを、ＯＢＤコネクタ１８を介して車両１０へ入力する。以下、不正装置２６ａと不正装置２６ｂを総称する場合「不正装置２６」と呼ぶ。
【００２０】
図２は、図１のゲートウェイＥＣＵ１２の機能構成を示すブロック図である。本明細書のブロック図において示される各ブロックは、ハードウェア的には、コンピュータのＣＰＵ・メモリをはじめとする素子や機械装置で実現でき、ソフトウェア的にはコンピュータプログラム等によって実現されるが、ここでは、それらの連携によって実現される機能ブロックを描いている。これらの機能ブロックはハードウェア、ソフトウェアの組合せによっていろいろなかたちで実現できることは、当業者には理解されるところである。
【００２１】
ゲートウェイＥＣＵ１２は、外部ＩＦ（インタフェース）３０、ＯＢＤ−ＩＦ３１、第１ＣＡＮ−ＩＦ３２、第２ＣＡＮ−ＩＦ３４、ＩＤ記憶部３６、フレーム受信部３８、判定部４０、フレーム転送部４２を備える。これらのブロックに対応する複数のモジュールを含むコンピュータプログラムがゲートウェイＥＣＵ１２のメモリに格納され、ゲートウェイＥＣＵ１２のＣＰＵがそのコンピュータプログラムを実行することにより、これらのブロックの機能が発揮されてもよい。
【００２２】
外部ＩＦ３０は、イーサネットプロトコルにしたがって、外部ネットワーク２８に接続された外部装置との間でイーサネットフレームを送受信する。ＯＢＤ−ＩＦ３１は、所定の通信プロトコルにしたがって、ＯＢＤコネクタ１８に接続された外部装置との間でＣＡＮフレームを送受信する。
【００２３】
第１ＣＡＮ−ＩＦ３２は、ＣＡＮプロトコルにしたがって、第１ＣＡＮ２０との間でＣＡＮフレームを送受信する。第２ＣＡＮ−ＩＦ３４は、ＣＡＮプロトコルにしたがって、第２ＣＡＮ２２との間でＣＡＮフレームを送受信する。
【００２４】
実施例のＣＡＮフレームは、少なくとも、ＣＡＮ−ＩＤ（言い換えればメッセージＩＤまたはフレームＩＤ）と、コマンドとを含む。また、実施例のイーサネットフレームは、少なくとも、送信元装置のＩＤ（送信元装置のアドレスでもよい。）と、送信先装置のＩＤ（送信先装置のアドレスでもよい。）と、コマンドとを含む。コマンドは、例えば、フレームの送信先装置に対する命令または指示を示すデータである。以下、単に「フレーム」と呼ぶ場合、ＣＡＮフレームとイーサネットフレームの両方を含む。
【００２５】
ＩＤ記憶部３６は、受信したフレームが正当なフレームか不正なフレームかを識別するためのＩＤ情報を記憶する。正当なフレームは、正当な装置から送信されたフレームと言え、不正なフレームは、不正な装置から送信されたフレームと言える。ＩＤ情報は、予め登録された正当なＣＡＮ−ＩＤのリストを含む。また、ＩＤ情報は、予め登録された正当な送信元装置（例えば正当な処理ＥＣＵ１４を含む）のＩＤのリストを含む。また、ＩＤ情報は、予め登録された正当な送信先装置（例えば正当な処理ＥＣＵ１４を含む）のＩＤのリストを含む。いずれのＩＤも複数登録されてよい。
【００２６】
フレーム受信部３８は、車両１０の外部装置から送信されたフレームを受信する。実施例では、フレーム受信部３８は、外部ＩＦ３０を介して、外部ネットワーク２８からイーサネットフレームを受信する。また、フレーム受信部３８は、ＯＢＤ−ＩＦ３１を介してＯＢＤコネクタ１８へ入力されたＣＡＮフレームを受信する。また、フレーム受信部３８は、第１ＣＡＮ−ＩＦ３２および第２ＣＡＮ−ＩＦ３４を介して、第１ＣＡＮ２０および第２ＣＡＮ２２を流れるＣＡＮフレームを受信する。
【００２７】
判定部４０は、フレーム受信部３８により受信されたフレーム（以下「受信フレーム」とも呼ぶ。）に設定されたＩＤに基づいて、受信フレームが正当なフレームか、または不正なフレームかを判定する。言い換えれば、判定部４０は、受信フレームが正当な装置から送信されたフレームか、または、受信フレームが不正な装置から送信されたフレームかを判定する。
【００２８】
具体的には、判定部４０は、受信フレームがＣＡＮフレームの場合、受信フレームに設定されたＣＡＮ−ＩＤが、ＩＤ記憶部３６に記憶された正当なＣＡＮ−ＩＤのリストに含まれるか否かを判定する。受信フレームに設定されたＣＡＮ−ＩＤがリスト内のＣＡＮ−ＩＤに合致する場合、判定部４０は、受信フレームを正当なフレームと判定する。一方、受信フレームに設定されたＣＡＮ−ＩＤがリスト内のＣＡＮ−ＩＤのいずれにも不一致の場合、判定部４０は、受信フレームを不正なフレームと判定する。
【００２９】
また、判定部４０は、受信フレームがイーサネットフレームの場合、受信フレームに設定された送信元装置ＩＤが、ＩＤ記憶部３６に記憶された正当な送信元装置ＩＤのリストに含まれるか否かを判定する。また、判定部４０は、受信フレームに設定された送信先装置ＩＤが、ＩＤ記憶部３６に記憶された正当な送信先装置ＩＤのリストに含まれるか否かを判定する。受信フレームに設定された送信元装置ＩＤと送信先装置ＩＤの両方がＩＤ記憶部３６に登録済みの場合、判定部４０は、受信フレームを正当なフレームと判定する。一方、送信元装置ＩＤと送信先装置ＩＤの少なくとも一方がＩＤ記憶部３６に未登録の場合、判定部４０は、受信フレームを不正なフレームと判定する。
【００３０】
フレーム転送部４２は、判定部４０により受信フレームが正当と判定された場合、受信フレームに設定されたＩＤ（例えばＣＡＮ−ＩＤまたは送信先装置ＩＤ）により特定される送信先の処理ＥＣＵ１４へ受信フレームを転送する。例えば、フレーム転送部４２は、外部ＩＦ３０で受信されたイーサネットフレームを変換したＣＡＮフレーム、または、ＯＢＤ−ＩＦ３１で受信されたＣＡＮフレームに対応するＣＡＮフレームを、第１ＣＡＮ−ＩＦ３２を介して第１ＣＡＮ２０へ出力する。すなわち、フレーム転送部４２は、判定部４０により受信フレームが正当と判定された場合、受信フレームに対する通常の転送処理を実行する。
【００３１】
フレーム転送部４２は、判定部４０により受信フレームが不正と判定された場合、受信フレームに設定されたＩＤにより特定される送信先の処理ＥＣＵ１４に代えて、ダミーＥＣＵ１６へ受信フレームを転送する。例えば、フレーム転送部４２は、外部ＩＦ３０で受信されたイーサネットフレームを変換したＣＡＮフレーム、または、ＯＢＤ−ＩＦ３１で受信されたＣＡＮフレームに対応するＣＡＮフレームを、第２ＣＡＮ−ＩＦ３４を介して第２ＣＡＮ２２へ出力する。
【００３２】
図１に示したように、第２ＣＡＮ２２には、ゲートウェイＥＣＵ１２とダミーＥＣＵ１６が接続されるが、処理ＥＣＵ１４は接続されない。したがって、不正なフレームを第２ＣＡＮ２２へ出力することで、処理ＥＣＵ１４が不正なフレームを受信してしまうことを防止できる。
【００３３】
図３は、図１のダミーＥＣＵ１６の機能構成を示すブロック図である。ダミーＥＣＵ１６は、ＣＡＮ−ＩＦ５０、他装置データ記憶部５２、フレーム受信部５４、コマンド処理部５６、フレーム送信部５８を備える。これらのブロックに対応する複数のモジュールを含むコンピュータプログラムがダミーＥＣＵ１６のメモリに格納され、ダミーＥＣＵ１６のＣＰＵがそのコンピュータプログラムを実行することにより、これらのブロックの機能が発揮されてもよい。
【００３４】
ＣＡＮ−ＩＦ５０は、ＣＡＮプロトコルにしたがって、第２ＣＡＮ２２との間でＣＡＮフレームを送受信する。フレーム受信部５４は、ＣＡＮ−ＩＦ５０を介して、第２ＣＡＮ２２を流れるＣＡＮフレームを受信する。フレーム受信部５４が受信するＣＡＮフレームのデータ（コマンド等）は、ゲートウェイＥＣＵ１２により不正と判定されたフレームのデータ（コマンド等）を含む。
【００３５】
他装置データ記憶部５２は、不正装置２６により攻撃対象とされる処理ＥＣＵ１４のメモリに記憶されるデータ（以下「メモリデータ」とも呼ぶ。）に対応するダミーデータを記憶する。ダミーデータは、攻撃対象とされる処理ＥＣＵ１４のメモリデータと少なくとも構造が一致するよう定められ、例えば、アドレスとデータ項目の対応関係が一致するよう定められる。ただし、ダミーデータにおける各項目の値は、攻撃対象とされる処理ＥＣＵ１４のメモリデータの値と異なることが望ましい。この理由は、攻撃対象とされる処理ＥＣＵ１４のメモリデータの値が漏洩することを防止するためである。
【００３６】
実施例の他装置データ記憶部５２は、ＢＣＭ−ＥＣＵのメモリデータに対応する（言い換えれば構造が一致する）ダミーデータを記憶する。また、他装置データ記憶部５２は、予め定められたＢＣＭ−ＥＣＵの装置ＩＤをさらに記憶する。
【００３７】
コマンド処理部５６は、フレーム受信部５４により受信されたフレーム（以下「受信フレーム」と呼ぶ。）に含まれるコマンドに応じたデータ処理を実行する。また、コマンド処理部５６は、応答生成部としても機能し、受信フレームに対する肯定的な応答を生成する。肯定的な応答は、例えば、コマンドに応じたデータ処理を実行したことを示すデータを含んでよく、コマンドに応じたデータ処理の結果を含んでもよい。
【００３８】
コマンドの３つのパターンを説明する。例えば、（１）コマンドが装置ＩＤの提供を要求するものである場合、コマンド処理部５６は、予め定められたＢＣＭ−ＥＣＵの装置ＩＤを他装置データ記憶部５２から取得し、取得した装置ＩＤを含む応答フレームを生成する。
【００３９】
また、（２）コマンドが特定アドレスのメモリデータの提供を要求するものである場合、コマンド処理部５６は、他装置データ記憶部５２に記憶されたダミーデータを参照し、コマンドが指定するアドレスのデータを取得する。コマンド処理部５６は、取得したダミーデータを含む応答フレームを生成する。
【００４０】
また、（３）コマンドがメモリデータの書き換えを要求するものである場合、コマンド処理部５６は、コマンドが指定する書き換え用データに基づいて、他装置データ記憶部５２のダミーデータを更新する。コマンド処理部５６は、メモリデータの書き換えに成功したことを示すデータを含む応答フレームを生成する。変形例として、コマンド処理部５６は、ダミーデータの更新をスキップして、メモリデータの書き換えに成功した旨の応答フレームを生成するだけでもよい。
【００４１】
フレーム送信部５８は、コマンド処理部５６により生成された応答フレームを、ゲートウェイＥＣＵ１２を介して不正装置２６へ送信する。具体的には、フレーム送信部５８は、ＣＡＮ−ＩＦ５０を介して、応答フレームを第２ＣＡＮ２２へ出力する。ゲートウェイＥＣＵ１２は、第２ＣＡＮ２２から応答フレームを取得し、不正フレームの送信元である不正装置２６ａまたは不正装置２６ｂへ応答フレームを転送する。
【００４２】
以上の構成による車両１０の動作を説明する。
図４は、ゲートウェイＥＣＵ１２の動作を示すフローチャートである。フレーム受信部３８がフレームを受信し（Ｓ１０のＹ）、受信フレームがＣＡＮフレームであれば（Ｓ１２のＹ）、判定部４０は、ＩＤ記憶部３６を参照して、受信フレームに含まれるＣＡＮ−ＩＤが登録済みの正当なＩＤか否かを判定する。
【００４３】
受信フレームに含まれるＣＡＮ−ＩＤが正当なＩＤであれば（Ｓ１４のＹ）、判定部４０は、受信フレームを正当なフレームと判定する。フレーム転送部４２は、受信フレームに含まれるＣＡＮ−ＩＤにより特定される送信先の処理ＥＣＵ１４（例えばＢＣＭ−ＥＣＵ）へ受信フレームを転送する（Ｓ１６）。受信フレームに含まれるＣＡＮ−ＩＤが不正なＩＤであれば（Ｓ１４のＮ）、判定部４０は、受信フレームを不正なフレームと判定する。フレーム転送部４２は、受信フレームに含まれるＣＡＮ−ＩＤに関わらず、ダミーＥＣＵ１６へ受信フレームを転送する（Ｓ１８）。
【００４４】
受信フレームがイーサネットフレームであれば（Ｓ１２のＮ）、判定部４０は、ＩＤ記憶部３６を参照して、受信フレームに含まれる送信元装置ＩＤと送信先装置ＩＤとが登録済みの正当なＩＤか否かを判定する。送信元装置ＩＤが正当なＩＤであり（Ｓ２０のＹ）、かつ、送信先装置ＩＤが正当なＩＤであれば（Ｓ２２のＹ）、判定部４０は、受信フレームが正当なフレームであると判定する。フレーム転送部４２は、受信フレームに含まれる送信先装置ＩＤにより特定される送信先の処理ＥＣＵ１４（例えばＢＣＭ−ＥＣＵ）へ受信フレームを転送する（Ｓ１６）。
【００４５】
送信元装置ＩＤが不正なＩＤであり（Ｓ２０のＮ）、または、送信先装置ＩＤが不正なＩＤであれば（Ｓ２２のＮ）、判定部４０は、受信フレームが不正なフレームであると判定する。フレーム転送部４２は、受信フレームに含まれる送信先装置ＩＤに関わらず、受信フレームに対応するＣＡＮフレームをダミーＥＣＵ１６へ転送する（Ｓ１８）。フレーム受信部３８がフレームを未受信であれば（Ｓ１０のＮ）、Ｓ１２以降の処理をスキップして本図のフローを終了する。ゲートウェイＥＣＵ１２は、電源オンの間、図４に示す動作を繰り返し実行する。
【００４６】
図５は、ダミーＥＣＵ１６の動作を示すフローチャートである。フレーム受信部５４がフレームを受信すると（Ｓ３０のＹ）、コマンド処理部５６は、受信フレームに含まれるコマンドに応じたデータ処理を実行する。具体的には、受信フレームのコマンドが攻撃対象ＥＣＵのＩＤを要求するものであれば（Ｓ３２のＹ）、コマンド処理部５６は、攻撃対象ＥＣＵ（実施例ではＢＣＭ−ＥＣＵ）のＩＤを含む応答フレームを生成する。フレーム送信部５８は、不正フレーム送信元の不正装置２６へ応答フレームを送信する（Ｓ３４）。コマンドがＥＣＵのＩＤを要求するものでなければ（Ｓ３２のＮ）、Ｓ３４をスキップする。
【００４７】
受信フレームのコマンドが攻撃対象ＥＣＵのメモリデータの提供を要求するものであれば（Ｓ３６のＹ）、コマンド処理部５６は、攻撃対象ＥＣＵ（実施例ではＢＣＭ−ＥＣＵ）のメモリデータに対応するダミーデータを参照して、ダミーデータの少なくとも一部を含む応答フレームを生成する。フレーム送信部５８は、不正フレーム送信元の不正装置２６へ応答フレームを送信する（Ｓ３８）。コマンドがメモリデータの提供を要求するものでなければ（Ｓ３６のＮ）、Ｓ３８をスキップする。
【００４８】
受信フレームのコマンドが攻撃対象ＥＣＵのメモリデータの書き換えを要求するものであれば（Ｓ４０のＹ）、コマンド処理部５６は、コマンドに応じてダミーデータを更新し（Ｓ４２）、メモリデータの書き換え成功を示す応答フレームを生成する。フレーム送信部５８は、不正フレーム送信元の不正装置２６へ応答フレームを送信する（Ｓ４４）。コマンドがメモリデータの書き換えを要求するものでなければ（Ｓ４０のＮ）、Ｓ４２およびＳ４４をスキップする。フレーム受信部５４がフレームを未受信であれば（Ｓ３０のＮ）、Ｓ３２以降をスキップして本図のフローを終了する。ダミーＥＣＵ１６は、電源オンの間、図５に示す動作を繰り返し実行する。
【００４９】
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素あるいは各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【００５０】
変形例を説明する。実施例では、ゲートウェイＥＣＵ１２とダミーＥＣＵ１６を別装置としたが、変形例として、ゲートウェイＥＣＵ１２とダミーＥＣＵ１６を一体化してもよい。例えば、ゲートウェイＥＣＵ１２は、実施例のダミーＥＣＵ１６の機能を含むダミー部をさらに備えてもよい。例えば、図３に示すダミーＥＣＵ１６の機能ブロックに対応する複数のモジュールを含むプログラムがゲートウェイＥＣＵ１２のメモリに記憶され、ゲートウェイＥＣＵ１２のＣＰＵがそのプログラムを実行することによりダミー部の機能が発揮されてもよい。
【００５１】
本変形例では、ゲートウェイＥＣＵ１２の判定部４０は、受信フレームを不正と判定した場合、当該受信フレームをフレーム転送部４２に渡すことに代えて、ダミー部に渡してもよい。ゲートウェイＥＣＵ１２のダミー部は、判定部４０により不正と判定された受信フレームに対する肯定的な内容を示す応答フレームを生成し、受信フレームの送信元装置（例えば不正装置２６）へ当該応答フレームを送信してもよい。この変形例によると、ゲートウェイＥＣＵ１２と別個にダミーＥＣＵ１６を設けることが不要になり、車載ネットワークシステム２４の構築コストを低減することができる。
【００５２】
別の変形例を説明する。実施例では、不正装置２６による攻撃対象をＢＣＭ−ＥＣＵとしたが、実施例に記載の技術は、他の種類のＥＣＵ（各種のセンサＥＣＵ、アクチュエータＥＣＵ等）が攻撃対象となる場合にも適用可能である。この場合、ダミーＥＣＵ１６は、攻撃対象となるＥＣＵのメモリデータに対応するダミーデータを記憶すればよい。
【００５３】
なお、不正と判定された受信フレームの内容（例えばペイロードに設定されたパラメータ値）により攻撃対象のＥＣＵが識別可能な場合、ダミーＥＣＵ１６は、複数種類のＥＣＵのメモリデータに対応する複数種類のダミーデータと、複数種類のＥＣＵのＩＤを記憶してもよい。ダミーＥＣＵ１６は、不正と判定された受信フレームの内容に基づいて攻撃対象のＥＣＵを識別し、攻撃対象のＥＣＵに対応するＩＤおよびダミーデータを使用して、当該受信フレームに対する肯定的な応答を生成してもよい。
【００５４】
実施例および変形例に記載の技術は、以下の項目によって特定されてもよい。
［項目１］
車両に搭載された電子制御装置と、ダミー装置と、中継装置と、を備え、
前記中継装置は、
前記車両の外部装置から送信されたフレームを受信する受信部と、
前記受信部により受信されたフレームに設定されたＩＤに基づいて、前記フレームが正当か、または、不正かを判定する判定部と、
前記判定部により前記フレームが正当と判定された場合、前記フレームに設定されたＩＤにより特定される送信先の電子制御装置へ前記フレームを転送し、前記フレームが不正と判定された場合、前記フレームを前記ダミー装置へ転送する転送部と、を含み、
前記ダミー装置は、前記中継装置において不正と判定されたフレームに対する肯定的な応答を前記外部装置へ送信する、通信システム。
この通信システムによると、外部装置からの攻撃が電子制御装置に届くことを防止できる。また、攻撃側の外部装置に肯定的な応答を返すことで、攻撃が成功したと外部装置に誤認識させ、例えば、以降の攻撃を抑制させることができる。また、この通信システムは、既存の通信システムをベースに、中継装置にプログラムを追加し、また、ダミー装置を追加することで実現できる。すなわち、多大な構築コストを要さず、効率的に車両のセキュリティを向上することができる。
［項目２］
前記ダミー装置は、
前記電子制御装置のメモリに記憶されたデータに対応するダミーデータを記憶する記憶部と、
前記中継装置において不正と判定されたフレームがメモリに記憶されたデータの提供指示を含む場合、前記記憶部に記憶されたダミーデータを含む応答を前記外部装置へ送信する送信部と、を含む、項目１に記載の通信システム。
この態様によると、攻撃側の外部装置に、攻撃が成功したと誤認識させ、例えば、以降の攻撃を抑制させることができる。
［項目３］
前記ダミー装置は、前記フレームがメモリに記憶されたデータの書き換え指示を含む場合、前記データの書き換えに成功したことを示す応答を前記外部装置へ送信する送信部を含む、項目１または２に記載の通信システム。
この態様によると、攻撃側の外部装置に、攻撃が成功したと誤認識させ、例えば、以降の攻撃を抑制させることができる。
［項目４］
車両に搭載された中継装置であって、
前記車両の外部装置から送信されたフレームを受信する受信部と、
前記受信部により受信されたフレームに設定されたＩＤに基づいて、前記フレームが正当か、または、不正かを判定する判定部と、
前記判定部により前記フレームが正当と判定された場合、前記フレームに設定されたＩＤにより特定される送信先の電子制御装置へ前記フレームを転送する転送部と、
前記フレームが不正と判定された場合、前記フレームに対する肯定的な応答を前記外部装置へ送信するダミー部と、を備える中継装置。
この中継装置によると、外部装置からの攻撃が電子制御装置に届くことを防止できる。また、攻撃側の外部装置に肯定的な応答を返すことで、攻撃が成功したと外部装置に誤認識させ、例えば、以降の攻撃を抑制させることができる。また、この中継装置は、既存の中継装置をベースに、プログラム（例えばダミー部を実装したプログラム）を追加することで実現できる。すなわち、多大な構築コストを要さず、効率的に車両のセキュリティを向上することができる。
［項目５］
車両に搭載された中継装置が、
前記車両の外部装置から送信されたフレームを受信し、
受信した前記フレームに設定されたＩＤに基づいて、前記フレームが正当か、または、不正かを判定し、
前記フレームを正当と判定した場合、前記フレームに設定されたＩＤにより特定される送信先の電子制御装置へ前記フレームを転送し、前記フレームを不正と判定した場合、前記フレームをダミー装置へ転送し、
前記ダミー装置が、前記中継装置において不正と判定されたフレームに対する肯定的な応答を前記外部装置へ送信する、通信方法。
この通信方法によると、項目１の通信システムと同様の効果を奏する。
［項目６］
車両に搭載された中継装置に、
前記車両の外部装置から送信されたフレームを受信し、
受信した前記フレームに設定されたＩＤに基づいて、前記フレームが正当か、または、不正かを判定し、
前記フレームを正当と判定した場合、前記フレームに設定されたＩＤにより特定される送信先の電子制御装置へ前記フレームを転送し、
前記フレームを不正と判定した場合、前記フレームに対する肯定的な応答を前記外部装置へ送信するダミー装置へ前記フレームを転送する、ことを実行させるためのコンピュータプログラム。
このコンピュータプログラムによると、項目１の通信システムと同様の効果を奏する。
【００５５】
上述した実施例および変形例の任意の組み合わせもまた本発明の実施の形態として有用である。組み合わせによって生じる新たな実施の形態は、組み合わされる実施例および変形例それぞれの効果をあわせもつ。また、請求項に記載の各構成要件が果たすべき機能は、実施例および変形例において示された各構成要素の単体もしくはそれらの連携によって実現されることも当業者には理解されるところである。
【符号の説明】
【００５６】
１０  車両、  １２  ゲートウェイＥＣＵ、  １４  処理ＥＣＵ、  １６  ダミーＥＣＵ、  ２４  車載ネットワークシステム、  ３８  フレーム受信部、  ４０  判定部、  ４２  フレーム転送部、  ５２  他装置データ記憶部、  ５４  フレーム受信部、  ５６  コマンド処理部、  ５８  フレーム送信部。
【図１】
2018164232.tif 000003
【図２】
2018164232.tif 000004
【図３】
2018164232.tif 000005
【図４】
2018164232.tif 000006
【図５】
2018164232.tif 000007