(57)【特許請求の範囲】
【請求項１】
複数の車載制御装置の間でデータの通信が行われる車両ネットワークにあってその通信データの監視を行う車両ネットワーク監視装置であって、
前記車両ネットワークで用いられる通信プロトコルを運用する上で規定されたデータの通信形式の監視を通じて不正データを検知する監視部と、
前記複数の車載制御装置の間でのデータの中継用として前記車両ネットワークに設けられ、該車両ネットワーク内で送受信されるデータの送信先が予め規定されたルーティングテーブルを保有するゲートウェイと、を備え、
前記監視部は、前記不正データを検知したとき、該検知した不正データの前記車両ネットワーク内への侵入に起因する前記複数の車載制御装置の不正動作を抑止する抑止処理として、前記複数の車載制御装置に対して警告情報を送信する処理、及び前記データの中継用として前記車両ネットワークに設けられたゲートウェイに対して前記検知した不正データのルーティングを禁止する禁止情報を送信する処理の少なくとも１つの処理を実行し、
前記複数の車載制御装置は、前記警告情報を受信したとき、前記検知された不正データに基づく動作を禁止する処理を行い、前記ゲートウェイは、前記禁止情報を受信したとき、当該ゲートウェイが有するルーティングテーブルを変更する処理を行う
ことを特徴とする車両ネットワーク監視装置。
【請求項２】
前記監視部及び前記複数の車載制御装置は、特定の演算コードを予め保有し、
前記監視部は、前記警告情報を送信する処理として、前記警告情報をメッセージコードとして作成するとともに、該作成したメッセージコードに前記演算コードを用いた演算処理を施して変換した変換コードを前記複数の車載制御装置に送信する処理を行い、
前記複数の車載制御装置は、前記監視部から受信した変換コードを当該車載制御装置が保有する演算コードを用いて前記変換コードを前記メッセージコードに復元する処理を行う
請求項１に記載の車両ネットワーク監視装置。
【請求項３】
複数の車載制御装置の間でデータの通信が行われる車両ネットワークにあってその通信データの監視を行う車両ネットワーク監視装置であって、
前記車両ネットワークで用いられる通信プロトコルを運用する上で規定されたデータの
通信形式の監視を通じて不正データを検知する監視部と、
前記複数の車載制御装置の間でのデータの中継用として前記車両ネットワークに設けられ、該車両ネットワーク内で送受信されるデータの送信先が予め規定されたルーティングテーブルを保有するゲートウェイと、を備え、
前記監視部は、前記不正データを検知したとき、該検知した不正データの前記車両ネットワーク内への侵入に起因する前記複数の車載制御装置の不正動作を抑止する抑止処理として、前記複数の車載制御装置に対して警告情報を送信する処理、及び前記データの中継用として前記車両ネットワークに設けられたゲートウェイに対して前記検知した不正データのルーティングを禁止する禁止情報を送信する処理の少なくとも１つの処理を実行するとともに、
前記監視部及び前記複数の車載制御装置は、特定の演算コードを予め保有し、
前記監視部は、前記警告情報を送信する処理として、前記警告情報をメッセージコードとして作成するとともに、該作成したメッセージコードに前記演算コードを用いた演算処理を施して変換した変換コードを前記複数の車載制御装置に送信する処理を行い、
前記複数の車載制御装置は、前記監視部から受信した変換コードを当該車載制御装置が保有する演算コードを用いて前記変換コードを前記メッセージコードに復元する処理を行う
ことを特徴とする車両ネットワーク監視装置。
【請求項４】
前記監視部は、正常時における通信形式として予め規定された規定の通信形式とは異なる通信形式のデータを検知したとき、該検知したデータを不正データとして特定する
請求項１〜３のいずれか一項に記載の車両ネットワーク監視装置。
【請求項５】
前記監視部は、前記データの通信形式として前記車両ネットワークに送信されるデータの周期を監視し、周期異常の検知を通じて前記不正データを検知する
請求項１〜４のいずれか一項に記載の車両ネットワーク監視装置。
【請求項６】
前記監視部は、前記車載制御装置に対してデータを要求するトリガ信号の応答として前記車載制御装置から送信される応答信号の送信回数を前記データの通信形式として監視し、前記トリガ信号の受信後から次のトリガ信号を受信するまでの期間に同一の応答信号を複数受信したとき、複数受信した応答信号の一部を不正データとして検知する
請求項１〜５のいずれか一項に記載の車両ネットワーク監視装置。
【請求項７】
前記監視部は、エラーの検出に基づき前記車載制御装置が送信するエラーフレームの送信回数を前記データの通信形式として監視し、該監視するエラーフレームの送信回数が規定の送信回数を超えたことをもって、前記車両ネットワークに不正データが送信されている旨検知する
請求項１〜６のいずれか一項に記載の車両ネットワーク監視装置。
【請求項８】
前記車両ネットワークがコントロール・エリア・ネットワークであり、
前記監視部は、前記車載制御装置によるデータの送信及び受信が不可能になるバスオフ状態に遷移したことを検知し、該検知したバスオフ状態の認識を通じて前記車両ネットワークに不正データが送信されている旨検知する
請求項１〜７のいずれか一項に記載の車両ネットワーク監視装置。
【請求項９】
前記監視部は、監視用の車載制御装置として前記車両ネットワークに設けられてなる
請求項１〜８のいずれか一項に記載の車両ネットワーク監視装置。
【請求項１０】
前記車両ネットワークは、該車両ネットワークを構成する通信線が一つのゲートウェイに集約して接続されたネットワークからなり、前記監視部は、この通信線が集約して接続
されたゲートウェイに設けられてなる
請求項１〜９のいずれか一項に記載の車両ネットワーク監視装置。
【請求項１１】
前記車両ネットワークが、車両に搭載された車両駆動系の制御を行う駆動制御系の車載制御装置が接続された制御系ネットワークからなり、前記監視部は、前記制御系ネットワークに送信される不正データを検知する
請求項１〜１０のいずれか一項に記載の車両ネットワーク監視装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自動車等の車両に搭載された車両ネットワークに送信されるデータの監視を行う車両ネットワーク監視装置に関する。
【背景技術】
【０００２】
近年の自動車等の車両には、ナビゲーションシステムを構成する車載制御装置をはじめ、エンジンやブレーキ等の各種車載機器を電子的に制御する車載制御装置、車両の各種状態を表示するメータ等の機器を制御する車載制御装置などの多くの車載制御装置が搭載されている。そして、車両内では、それら各車載制御装置が通信線により電気的に接続されて車両ネットワークが形成されており、この車両ネットワークを介して各車載制御装置間での各種データの送受信が行われている。
【０００３】
また、こうした車両ネットワークは、同車両ネットワークに接続される各車載制御装置が車両に搭載されるエンジンやブレーキ等の各種車載機器の制御を担っていることから、極めて高いセキュリティーが要求される。しかし、こうした車両ネットワークは本来、外部のネットワークとは隔離されていることから、例えばコントロール・エリア・ネットワーク（ＣＡＮ）等をはじめとする車両ネットワークは、同車両ネットワークで送受信されるデータが正規の車載制御装置から送信される正規のデータであることを前提に設計されている。
【０００４】
一方、最近は、こうした車両ネットワークと外部のネットワークとの各種データの授受や、車両に設けられたデータ・リンク・コネクタ（ＤＬＣ）に接続された外部機器との各種データの授受を可能とするシステムの開発が進められている。そして、こうしたシステムでは、そのセキュリティーを確保すべく、例えば、予め登録されたデータとシグネチャマッチングを行う不正検出や、通常とは異なる動作を異常として検出する異常検出といった手法により、不正アクセスを検知する侵入検知を導入することも検討されている。
【０００５】
その一例として、例えば特許文献１に記載のシステムでは、図１１に示すように、内部ネットワークＢ３０と外部ネットワークＢ２０との間に、データ通信を中継するおとり誘導装置Ｂ１を設けるようにしている。このおとり誘導装置Ｂ１は、不正アクセスの疑いのあるデータをおとりネットワークＢ４０に誘導するおとり誘導部Ｂ３、外部ネットワークＢ２０から送信されたデータをフィルタリングするフィルタリング処理部Ｂ５、及び大量の不正データを送りつけるいわゆるＤｏＳ攻撃（Ｄｅｎｉａｌ  ｏｆ  Ｓｅｒｖｉｃｅ  ａｔｔａｃｋ）等の攻撃を検出する侵入検知部Ｂ４からなるパケット中継部Ｂ２等を備えて構成されている。このように構成されるおとり誘導装置Ｂ１では、外部ネットワークＢ２０から送信されたデータを受信すると、フィルタリングテーブルＢ６に基づきデータの信頼性を判断し、不正データを破棄するとともに、不正アクセスの疑いのあるデータをおとりネットワークＢ４０に誘導するようにしている。そして、おとり誘導装置Ｂ１は、不正アクセスの疑いのない通常のデータのみを内部ネットワークＢ３０に転送するようにしている。これにより、不正データや不正アクセスの疑いのあるデータが内部ネットワークＢ３０に取り込まれることが抑制されるようになる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００３−２６４５９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、侵入検知のうち、不正検出による侵入検知手法では、未登録の不正データによる攻撃に対しては対応できず、また異常検出による侵入検知手法では、車両内のＣＡＮ信号で行う方法が確立されていない。そして、上記特許文献１に記載のシステムにしろ、内部ネットワークＢ３０内に不正データが取り込まれることを抑止するためにはおとりネットワークＢ４０、おとり誘導部Ｂ３、フィルタリング処理部Ｂ５、及び侵入検知部Ｂ４等といった各構成要素が必要となり、セキュリティーを維持する上で構成が複雑とならざるを得ない。すなわち、同システムを車両に搭載することは実現性に乏しい。
【０００８】
本発明は、このような実情に鑑みてなされたものであり、その目的は、特に複雑な構成を要することなく車両ネットワークに取り込まれるデータの監視を通じて、車両ネットワークのセキュリティーを高く維持することのできる車両ネットワーク監視装置を提供することにある。
【課題を解決するための手段】
【０００９】
以下、上記課題を解決するための手段及びその作用効果について記載する。
請求項１に記載の発明は、複数の車載制御装置の間でデータの通信が行われる車両ネットワークにあってその通信データの監視を行う車両ネットワーク監視装置であって、前記車両ネットワークで用いられる通信プロトコルを運用する上で規定されたデータの通信形式の監視を通じて不正データを検知する監視部と、前記複数の車載制御装置の間でのデータの中継用として前記車両ネットワークに設けられ、該車両ネットワーク内で送受信されるデータの送信先が予め規定されたルーティングテーブルを保有するゲートウェイと、を備え、前記監視部は、前記不正データを検知したとき、該検知した不正データの前記車両ネットワーク内への侵入に起因する前記複数の車載制御装置の不正動作を抑止する抑止処理として、前記複数の車載制御装置に対して警告情報を送信する処理、及び前記データの中継用として前記車両ネットワークに設けられたゲートウェイに対して前記検知した不正データのルーティングを禁止する禁止情報を送信する処理の少なくとも１つの処理を実行し、前記複数の車載制御装置は、前記警告情報を受信したとき、前記検知された不正データに基づく動作を禁止する処理を行い、前記ゲートウェイは、前記禁止情報を受信したとき、当該ゲートウェイが有するルーティングテーブルを変更する処理を行うことを要旨とする。
【００１０】
通常、車両ネットワークに接続された車載制御装置は、同車両ネットワークの通信プロトコル上で予め規定された通信形式でデータの送受信を行う。このため、この通信形式に従っていないデータが車両ネットワークに送信されたときには、車両ネットワーク内に不正データが送信されていたり、この不正データを車載制御装置が受信したこと等に起因して同車載制御装置が異常な状態になっている可能性が高い。
【００１１】
そこで、上記構成によるように、上記データの通信形式を上記監視部に監視させる。このため、監視部は、車両ネットワークに送信されるデータの通信形式を監視するだけで、車両ネットワーク内に不正データが送信されていることを検知することができる。これにより、特に複雑な構成を要することなく車両ネットワークのセキュリティーを高く維持することが可能となる。
【００１３】
また、上記不正データとして想定されるデータには、同データを受信した車載制御装置に予めインストールされているプログラム等を書き換えるものが存在する。そして、こうしたデータにより、車載制御装置に予めインストールされているプログラム等が書き換えられると、車載制御装置は、同車載制御装置に規定された正常な動作以外の不正動作を行う可能性がある。
【００１４】
この点、上記構成によれば、たとえ車両ネットワークに不正データが侵入したとしても、上記抑止処理が実行されることによって、不正データを受信した車載制御装置が不正動作を行うことが抑止される。これにより、不正データの侵入後においても、その影響を最小限に抑制して各車載制御装置の正常な動作を担保することが可能となる。また、これにより、不正データの送信元となる不正な制御装置等が車両ネットワーク内に組み込まれたとしても、同制御装置等を車両ネットワークから物理的に取り外さずとも、同不正な制御装置等が送信する不正データが各車載制御装置や車両ネットワークに及ぼす影響を抑止することが可能となる。
【００１６】
さらに、上記構成によれば、上記監視部による抑止処理の一つとして、複数の車載制御装置に対して警告情報を送信する処理が実行される。これにより、この警告情報を受信した各車載制御装置に対して不正データの存在を認知させることが可能となり、車両ネットワーク上に送信されている不正データの影響を抑止し得る各種処理を各車載制御装置に行わせることが可能となる。
【００１７】
また、上記構成によれば、上記監視部による抑止処理の一つとして、車両ネットワーク内に設けられたゲートウェイによる不正データのルーティングを禁止する処理が行われる。このため、不正データが当該ゲートウェイを経由しようとしても、ゲートウェイが不正データのルーティングを禁止することにより、この不正データが各車載制御装置に送信されない。これにより、不正データがゲートウェイを経由する途中で遮断されることとなり、このゲートウェイを介して不正データが拡散することが抑止される。
【００１９】
しかも、上記構成によれば、各車載制御装置は、例えば不正データの侵入や不正データの送信元等を示す警告情報を監視部から受信すると、例えば、受信した不正データの実行を禁止する処理等、不正データに基づく動作を禁止する処理を行う。これにより、車両ネットワーク内に不正データが送信されたとしても、この不正データが車載制御装置の動作に影響を及ぼすことを抑止できる。
【００２０】
また、上記構成によれば、不正データの侵入が検知されると、ゲートウェイは、自身が有するルーティングテーブルを変更する処理を行う。これにより、ルーティングテーブルの変更を通じて、不正データが拡散することが抑止され、ゲートウェイに接続された車両ネットワークのセキュリティーを高く維持することが可能となる。
【００２１】
請求項２に記載の発明は、請求項１に記載の車両ネットワーク監視装置において、前記監視部及び前記複数の車載制御装置は、特定の演算コードを予め保有し、前記監視部は、前記警告情報を送信する処理として、前記警告情報をメッセージコードとして作成するとともに、該作成したメッセージコードに前記演算コードを用いた演算処理を施して変換した変換コードを前記複数の車載制御装置に送信する処理を行い、前記複数の車載制御装置は、前記監視部から受信した変換コードを当該車載制御装置が保有する演算コードを用いて前記変換コードを前記メッセージコードに復元する処理を行うことを要旨とする。
請求項３に記載の発明は、複数の車載制御装置の間でデータの通信が行われる車両ネットワークにあってその通信データの監視を行う車両ネットワーク監視装置であって、前記車両ネットワークで用いられる通信プロトコルを運用する上で規定されたデータの通信形式の監視を通じて不正データを検知する監視部と、前記複数の車載制御装置の間でのデータの中継用として前記車両ネットワークに設けられ、該車両ネットワーク内で送受信されるデータの送信先が予め規定されたルーティングテーブルを保有するゲートウェイと、を備え、前記監視部は、前記不正データを検知したとき、該検知した不正データの前記車両ネットワーク内への侵入に起因する前記複数の車載制御装置の不正動作を抑止する抑止処理として、前記複数の車載制御装置に対して警告情報を送信する処理、及び前記データの中継用として前記車両ネットワークに設けられたゲートウェイに対して前記検知した不正データのルーティングを禁止する禁止情報を送信する処理の少なくとも１つの処理を実行するとともに、前記監視部及び前記複数の車載制御装置は、特定の演算コードを予め保有し、前記監視部は、前記警告情報を送信する処理として、前記警告情報をメッセージコー
ドとして作成するとともに、該作成したメッセージコードに前記演算コードを用いた演算処理を施して変換した変換コードを前記複数の車載制御装置に送信する処理を行い、前記複数の車載制御装置は、前記監視部から受信した変換コードを当該車載制御装置が保有する演算コードを用いて前記変換コードを前記メッセージコードに復元する処理を行うことを要旨とする。
【００２２】
上記構成によれば、不正データの侵入を各車載制御装置に警告するための警告情報が上記監視部及び各車載制御装置、すなわち、正当な装置のみが保有する演算コードによって秘匿化される。そして、この秘匿化された警告情報（変換コード）が、各車載制御装置に送信されると、各車載制御装置は、自身が保有する演算コードを用いて変換コードを、解読可能な状態に復元することが可能となる。一方、たとえば車両ネットワークに不正に組み込まれた不正な制御装置は、演算コードを保有していないために警告情報の内容を認識することができず、自身の存在が各車載制御装置に認知されていることを把握することができない。よって、不正な制御装置が、自身の存在が各車載制御装置に認知されたことを検知して正当な車載制御装置になりすますことが抑止される。これにより、不正データや同不正データの送信源となる制御装置の存在が一旦検知されて以降は、これら検知された不正データや同不正データの送信源となる制御装置を安定して監視することが促進される。
【００２３】
請求項４に記載の発明は、請求項１〜３のいずれか一項に記載の車両ネットワーク監視装置において、前記監視部は、正常時における通信形式として予め規定された規定の通信形式とは異なる通信形式のデータを検知したとき、該検知したデータを不正データとして特定することを要旨とする。
【００２４】
車両ネットワークでは、通常、送信され得る通信形式が規定されており、この規定された通信形式とは異なる通信形式のデータが車両ネットワークに送信されたときには、同データが車両ネットワークに本来送信されることのない不正なデータである蓋然性が高い。
【００２５】
そこで、上記構成によるように、規定の通信形式とは異なる通信形式のデータが車両ネットワークに送信されたことをもって不正データを検知することとすれば、監視部は、既知の通信形式を把握するだけで不正データを検知することが可能となる。すなわち、監視部は、不正データが未知のデータであっても、車両ネットワークに不正なデータが送信されたことを検知することが可能となる。
【００２６】
請求項５に記載の発明は、請求項１〜４のいずれか一項に記載の車両ネットワーク監視装置において、前記監視部は、前記データの通信形式として前記車両ネットワークに送信されるデータの周期を監視し、周期異常の検知を通じて前記不正データを検知することを要旨とする。
【００２７】
例えば、車両ネットワークとして一般に採用されるコントロール・エリア・ネットワーク（ＣＡＮ）等にあっては、上記通信データを構成する送信フレームデータの周期が規定されている。よって、例えば、この規定された周期とは異なる周期のもとにデータが車両ネットワークに送信されたときは、このデータが、車両ネットワーク内の規定を知り得ない不正な制御装置等によって送信されたデータである可能性が高い。
【００２８】
そこで、上記構成によれば、データの通信形式としてデータの送信周期を監視するだけで不正データを検知することが可能となる。これにより、車両ネットワークに侵入した不正データをより容易かつ的確に検知することが可能となる。
【００２９】
請求項６に記載の発明は、請求項１〜５のいずれか一項に記載の車両ネットワーク監視装置において、前記監視部は、前記車載制御装置に対してデータを要求するトリガ信号の応答として前記車載制御装置から送信される応答信号の送信回数を前記データの通信形式として監視し、前記トリガ信号の受信後から次のトリガ信号を受信するまでの期間に同一の応答信号を複数受信したとき、複数受信した応答信号の一部を不正データとして検知することを要旨とする。
【００３０】
例えば、不正データを送信する不正な制御装置等が、車両ネットワーク内に組み込まれたり、外部ネットワークを介して車両ネットワークにアクセス可能になったときには、予め車両ネットワーク内に組み込まれている正規の車載制御装置のみならず、不正な制御装置等も上記トリガ信号に応答することが想定される。そして、正規な車載制御装置とともに制御装置等が上記トリガ信号に応答すると、車両ネットワークには、一つのトリガ信号に対して複数の応答信号が送信される。
【００３１】
そこで、上記構成によるように、上記監視部により、トリガ信号に対する応答信号を監視することとすれば、この応答信号の送信回数をカウントするだけで、車両ネットワーク内に不正データが送信されているか否かを検知することが可能となる。これにより、不正データの検知をより容易かつ的確に行うことが可能となる。
【００３２】
請求項７に記載の発明は、請求項１〜６のいずれか一項に記載の車両ネットワーク監視装置において、前記監視部は、エラーの検出に基づき前記車載制御装置が送信するエラーフレームの送信回数を前記データの通信形式として監視し、該監視するエラーフレームの送信回数が規定の送信回数を超えたことをもって、前記車両ネットワークに不正データが送信されている旨検知することを要旨とする。
【００３３】
上記車載制御装置には通常、例えば、各車載制御装置が送信するデータの衝突に反応してエラーフレームを送信する機能が設けられている。そして、データの衝突の発生頻度が所定の頻度未満で安定する傾向にあることから、エラーフレームの送信回数は、所定の回数未満になる傾向にある。
【００３４】
そこで、上記構成によるように、例えば、通常想定され得るエラーフレームの送信回数を上記規定の送信回数として設定し、この設定した送信回数を超えるエラーフレームが送信されたことをもって不正データの侵入を検知する。このため、監視部は、各車載制御装置から送信されるエラーフレームの送信回数を監視するだけで車両ネットワークに不正データが送信されているか否かを検知することが可能となる。
【００３５】
また、通常、車載制御装置には、所定回数以上のエラーフレームを送信すると、異常が発生したとしてバスオフ状態に遷移する機能が設けられている。この点、上記構成によれば、車載制御装置がバスオフ状態に遷移するエラーフレームの送信回数として設定されている回数よりも少ない回数を不正データ検知用のエラーフレームの送信回数として設定することで、車載制御装置がバスオフ状態に遷移する以前に不正データを検知することが可能となる。そして、この検知した結果に対する各種処置を行うことで、不正データを受信した車載制御装置がバスオフ状態に遷移することを抑制することが可能となり、各車載制御装置の通信状態を好適に維持することが可能ともなる。
【００３６】
請求項８に記載の発明は、請求項１〜７のいずれか一項に記載の車両ネットワーク監視装置において、前記車両ネットワークがコントロール・エリア・ネットワークであり、前記監視部は、前記車載制御装置によるデータの送信及び受信が不可能になるバスオフ状態に遷移したことを検知し、該検知したバスオフ状態の認識を通じて前記車両ネットワークに不正データが送信されている旨検知することを要旨とする。
【００３７】
上記コントロール・エリア・ネットワーク（ＣＡＮ）にあっては、車載制御装置が、自身が不正動作していることを検知したとき、その影響が他の車載制御装置に波及することを抑止すべく、他の車載制御装置との通信を停止するバスオフ機能が設けられている。よって、車載制御装置がバスオフしたときには、同車載制御装置が不正データを受信したことに基づいて不正動作している可能性が高い。
【００３８】
この点、上記構成によれば、車載制御装置がバスオフ状態に遷移したことに基づいて、車両ネットワークに不正データが送信されていることが検知される。このため、監視部は、車載制御装置がバスオフ状態に遷移し、同車載制御装置との通信が不可能になっている旨と併せて、車両ネットワークに不正データが送信されている旨を検知することが可能となる。これにより、監視部は、各車載制御装置との通信状態を監視するだけで、車両ネットワークに不正データが送信されているか否かを検知することが可能となる。
【００３９】
なお、上記請求項５〜請求項８にかかる各検知態様を組み合わせて不正データの検知を行うことで、複数の観点から不正データを検知することが可能となる。これにより、車両ネットワーク内に不正データが送信されているか否かを様々な見地から監視することが可能となり、上記車両ネットワーク監視装置としての信頼性が好適に高められるようになる。
【００４０】
請求項９に記載の発明は、請求項１〜８のいずれか一項に記載の車両ネットワーク監視装置において、前記監視部は、監視用の車載制御装置として前記車両ネットワークに設けられてなることを要旨とする。
【００４１】
上記構成によれば、本来、車両ネットワークに接続される車載制御装置の一部を監視用の車載制御装置として機能させることで、同車両ネットワークの監視を通じてそのセキュリティーを維持することが可能となる。これにより、車両ネットワークを監視するための装置を別途に設ける必要もなく、車両ネットワークに接続される汎用性の高い車載制御装置を用いて車両ネットワークの監視を実現することが可能となる。
【００４２】
請求項１０に記載の発明は、請求項１〜９のいずれか一項に記載の車両ネットワーク監視装置において、前記車両ネットワークは、該車両ネットワークを構成する通信線が一つのゲートウェイに集約して接続されたネットワークからなり、前記監視部は、この通信線が集約して接続されたゲートウェイに設けられてなることを要旨とする。
【００４３】
上記構成によれば、通信線が集約されるゲートウェイに上記監視部を設けることで、監視部は、車両ネットワーク全体の通信状況を監視することが可能となる。このため、一つの監視部によって、車両ネットワーク全体のセキュリティーを一括して管理することが可能となり、より簡易な構成のもとに車両ネットワークのセキュリティーを維持することが可能となる。
【００４４】
請求項１１に記載の発明は、請求項１〜１０のいずれか一項に記載の車両ネットワーク監視装置において、前記車両ネットワークが、車両に搭載された車両駆動系の制御を行う駆動制御系の車載制御装置が接続された制御系ネットワークからなり、前記監視部は、前記制御系ネットワークに送信される不正データを検知することを要旨とする。
【００４５】
上記制御系ネットワークには、例えば、エンジンやブレーキ、ステアリング等といった車両の駆動状態を担う駆動制御系の車載制御装置が接続されており、そのセキュリティーを維持する必要性が特に強い。
【００４６】
この点、上記構成によれば、上記監視部によって制御系ネットワークが監視されることで、必要最小限の構成により制御系ネットワークのセキュリティーを担保することが可能となる。
【図面の簡単な説明】
【００４７】
【図１】本発明にかかる車両ネットワーク監視装置の一実施の形態について、同装置が適用される車両ネットワークの概略構成を示すブロック図。
【図２】不正データの検知態様の一例を示す図であり、（ａ）は、正規のデータフレームの送信周期の一例を示すタイムチャート。（ｂ）は、不正なデータフレームの送信周期の一例を示すタイムチャート。
【図３】不正データの検知態様の一例を示す図であり、（ａ）は、正常時におけるトリガ信号に対する応答信号の送信態様の一例を示すタイムチャート。（ｂ）は、異常発生時におけるトリガ信号に対する応答信号の送信態様の一例を示すタイムチャート。
【図４】不正データの検知態様の一例を示す図であり、（ａ）は、正常時におけるエラーフレームの送信態様の一例を示すタイムチャート。（ｂ）は、異常発生時におけるエラーフレームの一例を示すタイムチャート。
【図５】不正データの検知態様の一例を示す図であり、（ａ）は、正規の車載制御装置が送信したデータに基づき変化するバスレベルの一例を示すタイムチャート。（ｂ）は、正規の車載制御装置になりすました不正な制御装置が送信したデータの一例を示すタイムチャート。
【図６】（ａ）は、監視用の車載制御装置による警告情報の送信態様の一例を示すブロック図。（ｂ）は、監視用の車載制御装置が送信する警告情報のデータ構造の一例を図。
【図７】監視用の車載制御装置による不正データの監視処理及び不正データの抑止処理の一例を示すフローチャート。
【図８】同実施の形態の車両ネットワーク監視装置の動作例を示すシーケンス図。
【図９】本発明にかかる車両ネットワーク監視装置の他の実施の形態について、同装置が適用される車両ネットワークの概略構成を示すブロック図。
【図１０】本発明にかかる車両ネットワーク監視装置の他の実施の形態について、同装置が適用される車両ネットワークの概略構成を示すブロック図。
【図１１】従来のおとり誘導装置が適用されるネットワークの概略構成を示すブロック図。
【発明を実施するための形態】
【００４８】
以下、本発明にかかる車両ネットワーク監視装置を具体化した一実施の形態について図１〜図８を参照して説明する。なお、本実施の形態の車両ネットワーク監視装置は、車両ネットワークとして車両に搭載されたコントロール・エリア・ネットワーク（ＣＡＮ）に送信されるデータの監視を通じて、同ネットワークを監視するものである。また、ＣＡＮにより構成される車両ネットワークでは、その通信プロトコルに従ったデータ通信が行われる。
【００４９】
図１に示すように、本実施の形態の車両ネットワーク監視装置が適用される車両１００には、エンジンやブレーキ、ステアリング等の各種車両駆動系の機器を電子的に制御する車載制御装置（ＥＣＵ）１１〜１３が搭載されている。各車載制御装置１１〜１３は、ＣＡＮバスを構成する通信線１０に接続されることにより、制御系ネットワークを構成する。
【００５０】
また、車両１００には、エアコンや車両１００の各種状態を表示するメータ等のボディ系の機器を制御する車載制御装置２１〜２３が搭載されている。各車載制御装置２１〜２３は、通信線２０に接続されることにより、ボディ系ネットワークを構成する。
【００５１】
さらに、車両１００には、例えば現在地から目的地までの経路案内等を行うカーナビゲーションシステムをはじめとする各種情報系の車載制御装置３１〜３３が搭載されている。各車載制御装置３１〜３３は、通信線３０に接続されることにより、情報系ネットワークを構成する。
【００５２】
また、制御系ネットワークを構成する通信線１０とボディ系ネットワークを構成する通信線２０との間には、各ネットワーク間のデータ通信を中継するゲートウェイ４１が接続されている。同様に、ボディ系ネットワークを構成する通信線２０と情報系ネットワークを構成する通信線３０との間には、各ネットワーク間のデータ通信を中継するゲートウェイ４２が接続されている。ゲートウェイ４１及び４２は、中継するデータの送信先が予め登録されたルーティングテーブル４１ａ及び４２ａを保有している。そして、こうしたゲートウェイ４１及び４２を介して各車載制御装置１１〜１３、２１〜２３、及び３１〜３３の間で、各ネットワークの通信プロトコルを運用する上で規定されたデータの通信形式に従ったデータ通信が行われる。これにより、例えば上記カーナビゲーションシステムでは、エンジン制御装置やブレーキ制御装置等の各種車載制御装置から取得される車両操作に関する情報に基づいてドライバに対する各種表示支援などが行われるようになる。
【００５３】
また、本実施の形態では、各ネットワークの間に、各ネットワークで送信されるデータを監視する監視用の車載制御装置（監視ＥＣＵ）５０が設けられている。監視用の車載制御装置５０には、通信線１０から延設された通信線１０ａ、通信線２０から延設された通信線２０ａ、及び通信線３０から延設された通信線３０ａが接続されている。これにより、監視用の車載制御装置５０は、各通信線１０〜３０を介して各ネットワークで行われるデータ通信の状況を監視することが可能となっている。また、本実施の形態の監視用の車載制御装置５０は、特定の監視ポリシー、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３のエラー状況をカウントするエラーカウンタを有する。同様に、本実施の形態の監視用の車載制御装置５０は、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に予め割り当てられたＩＤが登録されたＩＤテーブルを有する。さらに、本実施の形態の監視用の車載制御装置５０は、例えば、ネットワーク上に送信されるデータ内容をログデータとして記録するロギング機能を有している。
【００５４】
そして、監視用の車載制御装置５０は、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３の間でデータ通信が行われるとき、同データ通信が各ネットワークに予め規定されたデータの通信形式に従った通信であるかを監視する。そして、監視用の車載制御装置５０は、この監視結果に基づき、予め規定されたデータの通信形式とは異なる通信形式のデータが各ネットワークに送信されていると検知したとき、各ネットワークに本来送信されることのない不正データがネットワークに不正に送信されている旨検知する。すなわち、監視用の車載制御装置５０は、例えば、通信線２０に不正に取り付けられた不正な制御装置（不正ＥＣＵ）６０が、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３が送信する正規のデータとは異なる不正データを送信している旨検知する。
【００５５】
なお、不正な制御装置６０が送信する不正データは、例えば、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に予め組み込まれたプログラムを書き換えることにより、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に不正な動作を行わせるデータである。そして、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３のプログラムが書き換えられたときには、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３は、上記規定された通信形式とは異なる通信形式のデータを送信する。よって、監視用の車載制御装置５０は、該異なる通信形式のデータを各車載制御装置１１〜１３、２１〜２３、及び３１〜３３から受信したときには、自身が監視するネットワーク内に不正なデータが送信されている旨検知する。なお、不正な制御装置６０が送信する不正データには、例えば、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３が送信する正規のデータに近似するなりすましデータが存在する。
【００５６】
そして、本実施の形態の監視用の車載制御装置５０は、不正データを検知したとき、該検知した不正データのネットワーク内への侵入に起因する車載制御装置１１〜１３、２１〜２３、及び３１〜３３の不正動作を抑止する抑止処理を実行する。なお、本実施の形態の監視用の車載制御装置５０は、抑止処理として、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に対して警告情報を送信する処理、及びゲートウェイ４１及び４２による不正データのルーティングを禁止する禁止情報を各ゲートウェイ４１及び４２に対して送信する処理を行う。
【００５７】
次に、本実施の形態の監視用の車載制御装置５０による不正データの検知態様を図２〜図５を参照して説明する。なお、図２〜図５は、監視用の車載制御装置５０が有する上記監視ポリシーに基づき監視される監視態様を示したものである。
【００５８】
図２（ａ）に示すように、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３は、データの送信に際しては、上記規定された通信形式に従い、例えば最小で約「１２ｍｓ」の周期で通信データが分割されたデータフレームＤａを送信する。なお、こうしたデータフレームＤａには、データ内容や送信ノードを示す識別子であるＩＤが付与されている。また、このＩＤにより、通信調整の優先順位が決定される。そして、ＩＤの異なるデータフレームが同時にネットワーク上に送信されたときは、ＩＤの値が小さいデータフレームが優先して送信されることとなる。
【００５９】
一方、図２（ａ）に示すように、ネットワークに事後的に取り付けられた制御装置６０は、予め規定された通信形式を把握できず、上記規定された通信形式とは異なる周期約「６ｍｓ」のもとに不正なデータフレームＤｓを送信する。また、例えば、不正な制御装置６０が送信した不正データにより各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に予め組み込まれたプログラムが書き換えられたときにも、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３が、上記規定された通信形式とは異なる周期約「６ｍｓ」のもとに不正なデータフレームＤｓを送信する。
【００６０】
そこで、本実施の形態の監視用の車載制御装置５０は、上記規定された周期約「１２ｍｓ」未満の周期のデータフレームが自身の監視するネットワーク上に送信されたときは、ネットワーク上に不正データが送信されていることを検知する。また、監視用の車載制御装置５０は、この不正データの送信源が不正な制御装置６０であることを、例えば、不正データ（不正なデータフレームＤｓ）に付されているＩＤに基づき特定する。
【００６１】
また、図３（ａ）に示すように、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３は、各種データの通信に際し、自身の必要とするデータを要求するトリガ信号を示す第１のデータフレームＤｔ１を送信する。すると、このデータフレームＤｔを受信した特定の車載制御装置から、要求されたデータを示すデータフレームＤｒ１がトリガ信号に応答する応答信号として送信される。そして、上記規定された通信形式のもとでは、こうしたトリガ信号と応答信号とが交互にネットワークに送信される。これにより、ネットワークには、第１のデータフレームＤｔ１、同データフレームＤｔ１に応答するデータフレームＤｒ１、第２のデータフレームＤｔ２…といった態様で各データフレームが送信される。
【００６２】
一方、図３（ｂ）に示すように、ネットワークに事後的に取り付けられた制御装置６０は、データの送信が自身に対して要求されていないにも拘わらず、第１のデータフレームＤｔ１に応答してデータフレームＤｒｓを送信する。このため、一旦、第１のデータフレームＤｔ１が送信されると、不正なデータフレームＤｒｓと正規のデータフレームＤｒ１とがネットワークに送信される。この結果、一つのトリガ信号に対して複数の応答信号が送信されることとなる。
【００６３】
そこで、本実施の形態の監視用の車載制御装置５０は、一つのトリガ信号（第１のデータフレームＤｔ１）に応答する態様で複数の応答信号が送信されたときには、この複数の応答信号のうちの一部の信号が不正な制御装置６０から送信された信号であることを検知する。
【００６４】
また一方、図４（ａ）に示すように、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３には、例えば、自身が送信したデータフレームが他の車載制御装置が送信したデータフレームと衝突したことを検知したとき、エラーフレームＤｅを送信する機能が設けられている。そして通常、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３が正常に動作している状態において送信されるエラーフレームＤｅの送信回数は、例えば約「１５０回」以内になる傾向にある。このため、図４（ｂ）に示すように、通常想定される頻度よりも高い頻度でエラーフレームＤｅが送信されるときは、ネットワーク上に不正データが送信されたり、同不正データによりプログラムが書き換えられた車載制御装置によって、或る車載制御装置がエラーフレームＤｅを送信した可能性が高い。また、通常想定される頻度よりも高い頻度でエラーフレームＤｅが送信されるときは、このエラーフレームＤｅが不正な制御装置６０によって送信されたデータフレームである可能性が高い。
【００６５】
そこで、本実施の形態の監視用の車載制御装置５０は、ネットワーク上に送信されるエラーフレームＤｅの送信回数が通常想定され得る送信回数を超えたときは、このエラーフレームＤｅが不正データの存在に起因して発生したものであると検知する。
【００６６】
ここで、図５（ａ）に示すように、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３は、ＣＡＮの仕様に基づくデータ通信に際し、通信線１０〜３０の電位であるバスレベルを「０」及び「１」に変化させることによってデータ通信を行う。また、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３には、自身が送信したデータがネットワーク上に送信されているか否かを監視する機能が設けられている。この機能により、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３は、自身が送信したデータ、すなわちバスレベルと、各通信線１０〜３０のバスレベルとが一致しているかを監視する。
【００６７】
そして、図５（ｂ）に示すように、不正な制御装置６０が車載制御装置１１になりすまして同車載制御装置１１が送信するデータに近似するデータを送信したとする。また、タイミングｔ１において、車載制御装置１１が送信したデータと不正な制御装置６０が送信したデータとが相違するために、車載制御装置１１が指示したバスレベルと各通信線１０〜３０のバスレベルとの相違が発生したとする。
【００６８】
そして、車載制御装置１１がビットエラーの発生を認知すると、同車載制御装置１１は、例えば、データの送信エラーが発生した旨を示すエラー情報を監視用の車載制御装置５０に送信する。監視用の車載制御装置５０は、エラー情報を受信すると、自身が管理するエラーカウンタに例えば「８」を加算する。逆に、監視用の車載制御装置５０は、データの送信に成功したことを検知したとき、カウントしたエラーカウンタから「３」を減算する。なお、こうしたエラーカウンタは、例えば各車載制御装置１１〜１３、２１〜２３、及び３１〜３３毎にカウントされる。
【００６９】
そして、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３は、このようにしてカウントされるエラーカウンタの数が例えば「２５５」を超えたとき、異常が発生したとして、各通信線１０〜３０を介したデータ通信を禁止する「バスオフ状態」に遷移する。
【００７０】
そこで、本実施の形態の監視用の車載制御装置５０は、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３が「バスオフ状態」に遷移したことを検知したとき、車載制御装置１１〜１３、２１〜２３、及び３１〜３３になりすました不正な制御装置６０がネットワーク上にデータを送信している旨検知する。
【００７１】
次に、本実施の形態の監視用の車載制御装置５０による警告情報の送信態様を図６を参照して説明する。
図６（ａ）に示すように、本実施の形態では、車両１００に正規に搭載された各車載制御装置１１〜１３、２１〜２３、及び３１〜３３、各ゲートウェイ４１及び４２、並びに監視用の車載制御装置５０は、例えば５３ビットの特定の演算コード「Ｘ」を保有している。この演算コード「Ｘ」は、車両１００の出荷時やディーラーでの車両１００の診断時等に保有されるものである。これに対し、不正な制御装置６０は、不正な手段により車両１００に事後的に取り付けられることから、演算コード「Ｘ」を保有していない。
【００７２】
そして、本実施の形態の監視用の車載制御装置５０は、こうした監視ポリシーに基づき不正データを検知すると、同不正データのデータフレームに付与されているＩＤをもとに同不正データの送信源である不正な制御装置６０を特定する。
【００７３】
次いで、監視用の車載制御装置５０は、この特定した不正な制御装置６０が送信する不正データの利用を、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に禁止させる内容のメッセージコード「Ｙ」を作成する。このメッセージコード「Ｙ」は、例えば、５３ビットのデータとして作成される。本実施の形態では、メッセージコード「Ｙ」は、抑止処理の解除条件が満たされるまでの間、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に不正な制御装置６０が送信するデータの利用を禁止させる内容となっている。なお、抑止処理の解除条件としては、例えば、所定時間が経過すること、及びイグニッションキーがオンとされることが規定されている。そして、本実施の形態では、各解除条件のうち、いずれかの条件が満たされることを条件として抑止処理が解除される。
【００７４】
そして、監視用の車載制御装置５０は、図６（ｂ）に示すように、同監視用の車載制御装置５０が予め保有する演算コード「Ｘ」とメッセージコード「Ｙ」とを例えばＸＯＲ演算することによって変換コード「Ｚ」を作成する。監視用の車載制御装置５０は、この作成した変換コード「Ｚ」と例えば１１ビットで示される特定した不正な制御装置６０のＩＤとを、データフレームのデータフィールドに書き込む。そして、監視用の車載制御装置５０は、このデータフレームに自身のＩＤを付して、同データフレームをネットワーク上に送信する。なお、この警告情報を示すデータフレームに付されるＩＤは、警告情報を示すデータを他のデータよりも優先して各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に送信すべく、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３がデータフレームに付するＩＤよりも小さい値のＩＤとなっている。
【００７５】
各車載制御装置１１〜１３、２１〜２３、及び３１〜３３は、監視用の車載制御装置５０が送信したデータフレームを受信すると、データフィールドに書き込まれた変換コード「Ｚ」と自身が保有する演算コード「Ｘ」とを例えばＸＯＲ演算することにより、メッセージコード「Ｙ」を復元する。そして、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３は、メッセージコード「Ｙ」の指示内容に従って、不正な制御装置６０から送信される不正データ（不正なデータフレーム）の利用を禁止する処理を行う。
【００７６】
一方、不正な制御装置６０は、監視用の車載制御装置５０から送信されたデータフレームを取得したとしても、演算コード「Ｘ」を保有していないために、メッセージコード「Ｙ」を解読することができない。よって、不正な制御装置６０は、自身の存在が検知されていることを察知することができない。これにより、監視用の車載制御装置５０による警告情報（メッセージコード「Ｙ」）の送信後、不正な制御装置６０が自身の存在が検知されたことを察知してなりすまし等を行うことが抑制される。
【００７７】
次に、本実施の形態の監視用の車載制御装置５０によるネットワークの監視手順及び不正データの抑制手順を図７を参照して説明する。
図７に示すように、例えば車両１００のイグニッションキーがオンとされると、監視用の車載制御装置５０がネットワークの監視を開始する（ステップＳ１００）。次いで、監視用の車載制御装置５０は、自身が保有する監視ポリシーに基づきネットワーク上に不正データが送信されていないかを監視する。すなわち、監視用の車載制御装置５０は、ネットワーク上に送信されるデータフレームの送信周期が予め規定された最小周期未満であるか否かを監視する（ステップＳ１０１）。また、監視用の車載制御装置５０は、一つのトリガ信号に対して複数の応答信号が送信されているか否かを監視する（ステップＳ１０２）。また一方、監視用の車載制御装置５０は、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３が送信するエラーフレームの送信回数が異常発生の基準となる異常回数（例えば１５０回）を超えているか否かを監視する（ステップＳ１０３）。さらに、監視用の車載制御装置５０は、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３のうち、バスオフ状態に遷移した車載制御装置が存在するか否かを監視する（ステップＳ１０４）。
【００７８】
そして、この監視の結果、該当する周期、応答信号、エラーフレーム、及び車載制御装置のいずれもが存在しないとき、監視用の車載制御装置５０は、ネットワークに不正データが送信されていないと判断する（ステップＳ１０５）。すなわち、監視用の車載制御装置５０は、ネットワークのセキュリティーが維持され、同ネットワーク及び各車載制御装置１１〜１３、２１〜２３、及び３１〜３３が正常に機能している旨判断する。
【００７９】
他方、上記監視の結果、該当する周期、応答信号、エラーフレーム、及び車載制御装置のいずれかが存在するとき、監視用の車載制御装置５０は、ネットワーク上に不正データが送信されていると判断する（ステップＳ１０６）。すなわち、監視用の車載制御装置５０は、同監視結果に基づいて、ネットワーク上に不正データが送信されており、ネットワーク内に不正な制御装置６０が組み込まれている旨検知する。
【００８０】
そして、監視用の車載制御装置５０は、ネットワーク上に送信されている不正データを検知すると、同不正データに付与されているＩＤに基づいて不正な制御装置６０を特定する（ステップＳ１０７）。
【００８１】
次いで、監視用の車載制御装置５０は、抑止処理として、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に警告情報を送信する処理を行う（ステップＳ１０８）。また、監視用の車載制御装置５０は、抑止処理として、同ゲートウェイ４１及び４２が保有するルーティングテーブル４１ａ及び４２ａを変更するための禁止情報をゲートウェイ４１及び４２に送信する処理を行う（ステップＳ１０９）。
【００８２】
以下、本実施の形態の車両ネットワーク監視装置の作用を図８を参照して説明する。
図８に示すように、例えば、車両１００のイグニッションキーがオンとされると、監視用の車載制御装置５０によるネットワークの監視が開始される。また、各種車両制御を行うべく、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３間で、データの授受が行われる。同様に、ネットワークを跨いだデータの授受が、ルーティングテーブル４１ａ、４２ａを保有するゲートウェイ４１、４２を中継して行われる。
【００８３】
ここで、ネットワーク内に不正に取り付けられたり外部のネットワークから不正アクセスする不正な制御装置６０によって、通信線２０を有するボディ系ネットワーク内に不正データが送信されたとする。
【００８４】
このとき、監視用の車載制御装置５０は、例えば、不正な制御装置６０が送信した不正データを構成するデータフレームが、上記規定された最小周期約「１２ｍｓ」未満の異常周期で送信されたことを検出すると、不正データがボディ系ネットワーク内に送信されており、同ボディ系ネットワーク内に不正な制御装置６０が不正侵入していることを検知する。
【００８５】
そして、監視用の車載制御装置５０は、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に対し、警告情報を示す変換コード「Ｚ」を送信する。変換コード「Ｚ」を受信した各車載制御装置１１〜１３、２１〜２３、及び３１〜３３は、変換コード「Ｚ」を復元する。次いで、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３は、復元した警告情報に基づいて、不正な制御装置６０が送信した不正データの利用を禁止する処理を行う。これにより、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３により不正データが利用されることによって、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に予め組み込まれた正常なプログラムやデータ等が不正に書き換えられることが抑制される。
【００８６】
また、不正データを検知した監視用の車載制御装置５０は禁止情報をゲートウェイ４１及び４２送信することにより、ゲートウェイ４１及び４２に対し、同ゲートウェイ４１及び４２が保有するルーティングテーブル４１ａ及び４２ａを変更する旨を依頼する。これにより、ゲートウェイ４１及び４２が保有するルーティングテーブル４１ａ及び４２ａが、当該ゲートウェイ４１及び４２を経由しようとする不正データのルーティングを禁止するように変更される。この結果、ボディ系ネットワーク内に送信された不正データが、ゲートウェイ４１及び４２を中継して制御系ネットワークや情報系ネットワークに拡散することが抑止される。
【００８７】
以上説明したように、本実施の形態にかかる車両ネットワーク監視装置によれば、以下の効果が得られるようになる。
（１）車両ネットワーク内に、同車両ネットワークで用いられる通信プロトコルを運用する上で規定されたデータの通信形式の監視を通じて不正データを検知する監視用の車載制御装置５０を設けた。このため、車両ネットワークに送信されるデータの通信形式を監視用の車載制御装置５０に監視させるだけで、車両ネットワーク内に不正データが送信されていることを検知することができる。これにより、特に複雑な構成を要することなく車両ネットワークのセキュリティーを高く維持することが可能となる。
【００８８】
（２）監視用の車載制御装置５０が不正データを検知したとき、該検知した不正データの前記車両ネットワーク内への侵入に起因する車載制御装置１１〜１３、２１〜２３、及び３１〜３３の不正動作を抑止する抑止処理を同監視用の車載制御装置５０に実行させた。このため、たとえ車両ネットワークに不正データが侵入したとしても、上記抑止処理が実行されることによって、不正データを受信した車載制御装置１１〜１３、２１〜２３、及び３１〜３３が不正動作を行うことが抑止される。これにより、不正データの侵入後においても、その影響を最小限に抑制して各車載制御装置１１〜１３、２１〜２３、及び３１〜３３の正常な動作を担保することが可能となる。また、これにより、不正データの送信元となる不正な制御装置６０が車両ネットワーク内に組み込まれたとしても、同不正な制御装置６０を車両ネットワークから物理的に取り外さずとも、同不正な制御装置６０が送信する不正データが各車載制御装置１１〜１３、２１〜２３、及び３１〜３３や車両ネットワークに及ぼす影響を抑止することが可能となる。
【００８９】
（３）上記抑止処理として、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に対して警告情報を送信する処理、及びゲートウェイ４１及び４２に対して上記検知した不正データのルーティングを禁止する禁止情報を送信する処理を行うこととした。これにより、警告情報を受信した各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に対して不正データの存在を認知させることが可能となり、車両ネットワーク上に送信されている不正データの影響を抑止し得る各種処理を車載制御装置１１〜１３、２１〜２３、及び３１〜３３に行わせることが可能となる。また、このため、不正データがゲートウェイ４１及び４２を経由しようとしても、ゲートウェイ４１及び４２が不正データのルーティングを禁止することにより、この不正データが各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に送信されない。これにより、不正データがゲートウェイ４１及び４２を経由する途中で遮断されることとなり、このゲートウェイ４１及び４２を介して不正データが拡散することが抑止される。
【００９０】
（４）警告情報を受信した各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に対し、上記検知された不正データに基づく動作を禁止する処理を行わせた。これにより、車両ネットワーク内に不正データが送信されたとしても、この不正データが各車載制御装置１１〜１３、２１〜２３、及び３１〜３３の動作に影響を及ぼすことを抑止できる。また、不正データが検知されたとき、ゲートウェイ４１及び４２に該ゲートウェイ４１及び４２が保有するルーティングテーブル４１ａ及び４２ａを変更させる処理を行わせた。これにより、ルーティングテーブル４１ａ及び４２ａの変更を通じて、不正データが拡散することが抑止され、ゲートウェイ４１及び４２を有した車両ネットワークのセキュリティーを高く維持することが可能となる。
【００９１】
（５）各車載制御装置１１〜１３、２１〜２３、及び３１〜３３、並びに監視用の車載制御装置５０に、特定の演算コード「Ｘ」を予め保有させた。そして、監視用の車載制御装置５０に、警告情報をメッセージコード「Ｙ」として作成させた。また、監視用の車載制御装置５０に、演算コード「Ｘ」を用いた演算処理により変換コード「Ｚ」に変換されたメッセージコード「Ｙ」を、車載制御装置１１〜１３、２１〜２３、及び３１〜３３に対して送信させた。このため、不正な制御装置６０が、自身の存在が各車載制御装置１１〜１３、２１〜２３、及び３１〜３３等に認知されたことを検知して正当な車載制御装置になりすましをすることが抑止される。これにより、不正データや同不正データの送信源となる制御装置６０の存在が一旦検知されて以降は、これら検知された不正データや制御装置を安定して監視することが促進される。
【００９２】
（６）正常時における通信形式として予め規定された規定の通信形式とは異なる通信形式のデータを監視用の車載制御装置５０が検知したとき、該検知したデータを不正データとして特定させた。このため、監視用の車載制御装置５０は、既知の通信形式を把握するだけで、不正データを検知することが可能となる。これにより、監視用の車載制御装置５０は、不正データが未知のデータであっても、車両ネットワークに不正なデータが送信されたことを検知することが可能となる。
【００９３】
（７）上記データの通信形式として車両ネットワークに送信されるデータフレームの周期を監視用の車載制御装置５０に監視させ、周期異常の検知を通じて不正データを検知させた。このため、監視用の車載制御装置５０は、データの通信形式としてデータの送信周期を監視するだけで不正データを検知することが可能となる。これにより、車両ネットワークに侵入した不正データをより容易かつ的確に検知することが可能となる。
【００９４】
（８）トリガ信号の応答として車載制御装置１１〜１３、２１〜２３、及び３１〜３３から送信される応答信号の送信回数を、上記データの通信形式として監視用の車載制御装置５０に監視させた。そして、トリガ信号の受信後から次のトリガ信号を受信するまでの期間に同一の応答信号が複数送信されたとき、同複数受信した応答信号の一部を不正データとして検知させた。このため、監視用の車載制御装置５０は、応答信号の送信回数をカウントするだけで、車両ネットワーク内に不正データが送信されているか否かを検知することが可能となる。これにより、不正データの検知をより容易かつ的確に行うことが可能となる。
【００９５】
（９）上記データの通信形式として、エラーの検出に基づき各車載制御装置１１〜１３、２１〜２３、及び３１〜３３が送信するエラーフレームＤｅの送信回数を監視用の車載制御装置５０に監視させた。そして、エラーフレームＤｅの送信回数が規定の送信回数を超えたことをもって、車両ネットワークに不正データが送信されている旨検知させた。このため、監視用の車載制御装置５０は、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３から送信されるエラーフレームＤｅの送信回数を監視するだけで車両ネットワークに不正データが送信されているか否かを検知することが可能となる。また、不正データの検知の指標となるエラーフレームＤｅの送信回数（例えば１５０回）を、車載制御装置がバスオフ状態に遷移する基準として設定されたエラーフレームＤｅの送信回数（２５５回）よりも少なく設定した。これにより、監視用の車載制御装置５０は、エラーフレームＤｅが過剰に送信されることに起因して各車載制御装置１１〜１３、２１〜２３、及び３１〜３３がバスオフ状態に遷移する以前に不正データを検知することが可能となる。
【００９６】
（１０）車載制御装置１１〜１３、２１〜２３、及び３１〜３３がバスオフ状態に遷移したとき、該検知したバスオフ状態の認識を通じて車両ネットワークに不正データが送信されている旨を監視用の車載制御装置５０に検知させた。このため、監視用の車載制御装置５０は、車載制御装置１１〜１３、２１〜２３、及び３１〜３３がバスオフ状態に遷移し、同車載制御装置１１〜１３、２１〜２３、及び３１〜３３との通信が不可能になっている旨と併せて、車両ネットワークに不正データが送信されている旨を検知することが可能となる。これにより、監視用の車載制御装置５０は、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３との通信状態を監視するだけで、車両ネットワークに不正データが送信されているか否かを検知することが可能となる。
【００９７】
（１１）監視用の車載制御装置５０による監視を、データフレームの周期、応答信号のカウント、エラーフレームＤｅの送信回数、及び各車載制御装置１１〜１３、２１〜２３、及び３１〜３３のバスオフ状態に基づいて行った。これにより、監視用の車載制御装置５０は、車両ネットワーク内に不正データが送信されているか否かを様々な見地から監視することが可能となり、上記車両ネットワーク監視装置としての信頼性が好適に高められるようになる。
【００９８】
（１２）上記監視部は、監視用の車載制御装置５０として車両ネットワークに設ける構成とした。このため、本来、車両ネットワークに接続される車載制御装置の一部を監視用の車載制御装置５０として機能させることで、同車両ネットワークの監視を通じてそのセキュリティーを維持することが可能となる。これにより、車両ネットワークを監視するための装置を別途に設ける必要もなく、本来、車両ネットワークに接続される汎用性の高い車載制御装置を用いて車両ネットワークの監視を実現することが可能となる。
【００９９】
なお、上記実施の形態は、以下のような形態をもって実施することもできる。
・上記演算コード「Ｘ」を用いて警告情報を変換コード「Ｚ」に変換することとした。これに限らず、監視用の車載制御装置５０、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３が送信する全てのデータを、上記演算コード「Ｘ」を用いて変換コード「Ｚ」に変換してもよい。そして、この変換コードを受信した各車載制御装置１１〜１３、２１〜２３、及び３１〜３３が同変換コード「Ｚ」を自身が保有する演算コード「Ｘ」を用いて復元できたとき、同復元できたデータが正規の監視用の車載制御装置５０や各車載制御装置１１〜１３、２１〜２３、及び３１〜３３から送信された正規のデータとして判別させるようにしてもよい。そして、正規のデータとして判別されたデータのみの利用を、監視用の車載制御装置５０や各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に許可させるようにしてもよい。これにより、監視用の車載制御装置５０、並びに各車載制御装置１１〜１３、２１〜２３、及び３１〜３３は、自身が保有する演算コード「Ｘ」を用いて復元できるか否かを基準として、受信したデータが正規のデータであるか否かを判別することが可能となる。
【０１００】
・上記演算コード「Ｘ」を用いた演算をＸＯＲ演算により行った。これに限らず、例えば、監視用の車載制御装置５０、並びに正規の車載制御装置１１〜１３、２１〜２３、及び３１〜３３のみが予め保有する共通鍵や秘密鍵等により警告情報を監視用の車載制御装置５０にて暗号化させてもよい。そして、この暗号化された警告情報を各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に送信させるようにしてもよい。このように共通鍵や秘密鍵等を用いた手法でも、不正な制御装置６０に自身の存在が検知されていることを察知させることなく、抑止処理を実行することが可能となる。
【０１０１】
・上記抑止処理の解除条件として、所定時間が経過すること、及びイグニッションキーがオンとされたことのうち、いずれかの条件が満たされることを条件として抑止処理を解除させた。これに限らず、所定時間が経過し、かつ、イグニッションキーがオンとされたことを条件として抑止処理を解除させるようにしてもよい。この他、抑止処理の解除条件とは、不正データの送信が停止されたこと等が推測される条件であればよく、例えば、車両１００の診断終了や各車載制御装置１１〜１３、２１〜２３、及び３１〜３３等が初期化されたことを条件としてもよい。
【０１０２】
・不正データとして、ボディ系ネットワークに不正に取り付けられた不正な制御装置６０から送信されたデータを対象とした。この他、不正データとしては、外部のネットワークからの不正アクセスにより、車両ネットワーク内に不正送信されたデータであってもよい。このように、外部ネットワークから送信された不正データが車両ネットワークに侵入したとしても、上記監視用の車載制御装置５０による監視を通じて同不正データを監視することは可能である。
【０１０３】
・監視用の車載制御装置５０に、監視するデータをロギングさせることとした。さらに、このロギングされるログデータを、新たな監視ポリシーの定義や、不正な制御装置６０による攻撃のトレーサビリティ（追跡性）として利用させるようにしてもよい。新たな監視ポリシーの定義に際しては、例えば、異常周期の更新やエラーフレームの異常送信回数の更新等が行われる。
【０１０４】
・上記監視部として、一つの監視用の車載制御装置５０を車両ネットワーク内に設けることとした。これに限らず、２つ以上の監視用の車載制御装置５０を車両ネットワーク内に設けるようにしてもよい。この構成ではさらに、制御系ネットワーク、ボディ系ネットワーク、及び情報系ネットワークの別に監視用の車載制御装置を設けることで、ネットワークを単位とした監視を専用の監視用の車載制御装置により個別に行わせることが可能となる。これにより、たとえ一つの監視用の車載制御装置のプログラムやデータ等が不正データにより書き換えられたとしても、他の監視用の車載制御装置により車両ネットワークのセキュリティーを好適に維持することが可能となる。よって、車両ネットワークの監視にかかるフォールトトレラントが維持されることとなる。
【０１０５】
・監視用の車載制御装置５０による監視を、制御系ネットワーク、ボディ系ネットワーク、及び情報系ネットワークの全てのネットワークを対象として行った。これに限らず、制御系ネットワークのみを監視用の車載制御装置５０に監視させるようにしてもよい。この監視態様では、監視対象が車両１００の制御に際して重要度の高い制御系ネットワークに限定されることで、監視用の車載制御装置５０の監視負荷が最小限に抑制される。また、これにより、監視用の車載制御装置５０による監視を、重要度の高い制御系ネットワークに注力させることが可能となる。またこの他、監視用の車載制御装置５０による監視対象とは、制御系ネットワーク、ボディ系ネットワーク、及び情報系ネットワークのうち、いずれか一つのネットワークであってもよい。要は、車両１００に搭載される車両ネットワークの一部または全部であれば、監視用の車載制御装置５０の監視対象とすることが可能である。
【０１０６】
・不正データの検知の指標となるエラーフレームＤｅの送信回数を、車載制御装置がバスオフ状態に遷移する基準として設定されたエラーフレームＤｅの送信回数よりも少なく設定した。これに限らず、例えば、不正データの検知の指標となるエラーフレームＤｅの送信回数を、車載制御装置がバスオフ状態に遷移する基準として設定されたエラーフレームＤｅの送信回数と同じ回数に設定してもよい。
【０１０７】
・監視用の車載制御装置５０による監視を、データフレームの周期、応答信号のカウント、エラーフレームＤｅの送信回数、及び各車載制御装置１１〜１３、２１〜２３、及び３１〜３３のバスオフ状態の全てに基づいて行った。これに限らず。データフレームの周期、応答信号のカウント、エラーフレームＤｅの送信回数、及び各車載制御装置１１〜１３、２１〜２３、及び３１〜３３のバスオフ状態の少なくとも一つに基づいて、監視用の車載制御装置５０による監視を行うようにしてもよい。またこの他、ネットワークのプロトコルを運用する上で予め規定された通信形式に従ったデータ通信が行われているかを基準として、車載制御装置５０による監視を行うようにしてもよい。
【０１０８】
・上記警告情報を、演算コード「Ｘ」を用いて変換したメッセージコード「Ｙ」として送信することとした。これに限らず、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３、並びに監視用の車載制御装置５０に、特定の演算コード「Ｘ」を予め保有させない構成としてもよい。そして、平文の警告情報を、監視用の車載制御装置５０から車載制御装置１１〜１３、２１〜２３、及び３１〜３３等に送信させるようにしてもよい。この構成では、警告情報の送受信に際しての演算負荷が軽減されることとなる。なお、この構成であれ、一旦検知された不正データについては、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に利用されることが抑止される。
【０１０９】
・警告情報を受信した各車載制御装置１１〜１３、２１〜２３、及び３１〜３３に対し、上記検知された不正データに基づく動作を禁止する処理を行わせた。また、不正データが検知されたとき、ゲートウェイ４１及び４２に該ゲートウェイ４１及び４２が保有するルーティングテーブル４１ａ及び４２ａを変更させる処理を行わせた。これに限らず、例えば、検知された不正データについては、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３、並びにゲートウェイ４１及び４２に破棄させることとしてもよい。
【０１１０】
・上記抑止処理として、警告情報を送信する処理、並びにゲートウェイ４１及び４２による不正データのルーティングを禁止させる処理を行った。これに限らず、抑止処理として、警告情報を送信する処理、並びにゲートウェイ４１及び４２による不正データのルーティングを禁止させる処理のいずれか一方の処理を行うようにしてもよい。またこの他、抑止処理として、ネットワーク内に不正データが送信されている旨を、ドライバ、車両１００の状態が管理される管理センタ、及び車両１００のディーラ等に報知する処理を行うようにしてもよい。
【０１１１】
・監視用の車載制御装置５０が不正データを検知したとき、抑止処理を同監視用の車載制御装置５０に実行させた。これに限らず、監視用の車載制御装置５０は、不正データの検知のみを行うこととしてもよい。また、例えば、監視用の車載制御装置５０に不正データの検知のみを行わせ、この検知結果に基づき抑止処理を実行する装置を監視用の車載制御装置５０と別体に設けてもよい。
【０１１２】
・監視用の車載制御装置５０に、エラーカウンタ、ＩＤテーブル、及びロギング機能を設けた。これに限らず、監視用の車載制御装置５０は、車両ネットワークに送信されるデータの通信形式を監視可能な構成であればよく、エラーカウンタ、ＩＤテーブル、及びロギング機能を割愛することも可能である。
【０１１３】
・監視用の車載制御装置５０を、一つの車載制御装置として車両ネットワーク内に設けた。これに代えて、先の図１に対応する図として例えば図９に示すように、ゲートウェイ４１α、４２βに、監視用の車載制御装置５０と同等の機能を有する監視部５１を設ける構成としてもよい。この構成では、ゲートウェイ４１α、４２βと監視部５１とが一体に構成されることにより、不正データの監視のための車載制御装置が不要となり、車両ネットワーク監視装置としてのさらなる簡略化を図ることが可能となる。また、これにより、監視部５１が不正データを検知したときは、同監視部５１が搭載されたゲートウェイ４１α、４２βによる不正データのルーティングを直接的に禁止することが可能となる。また、先の図１に対応する図として例えば図１０に示すように、各ネットワークを構成する全ての通信線１０〜３０に一つのゲートウェイ４３を集約して接続させる構成としてもよい。そして、ゲートウェイ４３に、監視部５１を設ける構成としてもよい。この構成では、通信線１０〜３０が集約されるゲートウェイ４３に監視部５１を設けることで、監視部５１は、車両ネットワーク全体の通信状況を効率よく監視することが可能となる。このため、一つの監視部５１によって、車両ネットワーク全体のセキュリティーを一括して管理することが可能となり、より簡易な構成のもとに車両ネットワークのセキュリティーを維持することが可能となる。この他、監視部５１を、各車載制御装置１１〜１３、２１〜２３、及び３１〜３３のうちの少なくとも１つの車載制御装置に設ける構成としてもよい。この構成であれ、不正データの監視のための車載制御装置が不要となり、車両ネットワーク監視装置としてのさらなる簡略化を図ることが可能となる。また、この構成では、車両１００の制御を担う各車載制御装置１１〜１３、２１〜２３、及び３１〜３３が単体で自身のセキュリティを担保することが可能となる。この他、監視部とは、車両ネットワークに送信されるデータの通信形式を監視可能な位置に設けられるものであればよく、その設置態様は適宜変更することが可能である。
【０１１４】
・上記車両ネットワークとして、ＣＡＮを対象とした。これに限らず、車両ネットワークとは、通信プロトコルを運用する上でデータの通信形式が規定されたものであればよく、例えば、フレックスレイ、ＩＤＢ−１３９４、ＢＥＡＮ、ＣＡＮ、ＬＩＮ、ＡＶＣ−ＬＡＮ、ＭＯＳＴ（登録商標）等であってもよい。
【符号の説明】
【０１１５】
１０、１０ａ、２０、２０ａ、３０、３０ａ…通信線、１１−１３、２１−２３、３１−３３…正規の車載制御装置、４１、４１α…ゲートウェイ、４１ａ…ルーティングテーブル、４２、４２β…ゲートウェイ、４２ａ…ルーティングテーブル、４３…ゲートウェイ、５０…監視用の車載制御装置、５１…監視部、６０…不正な制御装置、１００…車両。
【図１】
0005522160.tif 000002
【図２】
0005522160.tif 000003
【図３】
0005522160.tif 000004
【図４】
0005522160.tif 000005
【図５】
0005522160.tif 000006
【図６】
0005522160.tif 000007
【図７】
0005522160.tif 000008
【図８】
0005522160.tif 000009
【図９】
0005522160.tif 000010
【図１０】
0005522160.tif 000011
【図１１】
0005522160.tif 000012