JP2016113122A - 車載ネットワークの試験装置 - Google Patents

車載ネットワークの試験装置 Download PDF

Info

Publication number
JP2016113122A
JP2016113122A JP2014255708A JP2014255708A JP2016113122A JP 2016113122 A JP2016113122 A JP 2016113122A JP 2014255708 A JP2014255708 A JP 2014255708A JP 2014255708 A JP2014255708 A JP 2014255708A JP 2016113122 A JP2016113122 A JP 2016113122A
Authority
JP
Japan
Prior art keywords
vehicle
payload
test
data generator
network
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.)
Granted
Application number
JP2014255708A
Other languages
English (en)
Other versions
JP6349244B2 (ja
Inventor
三宅 淳司
Junji Miyake
淳司 三宅
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.)
Hitachi Astemo Ltd
Original Assignee
Hitachi Automotive Systems 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 Hitachi Automotive Systems Ltd filed Critical Hitachi Automotive Systems Ltd
Priority to JP2014255708A priority Critical patent/JP6349244B2/ja
Publication of JP2016113122A publication Critical patent/JP2016113122A/ja
Application granted granted Critical
Publication of JP6349244B2 publication Critical patent/JP6349244B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

【課題】車載ネットワークに流れるデータを介して車載制御装置に発生するセキュリティ上の脆弱性を早期に検出する車載ネットワークの試験装置を提供する。【解決手段】受信メッセージ識別子とデータペイロードの組み合わせを設計所定値からプロトコル上限まで逐次掃引して印加し、なおかつ網羅的にその組み合わせを試行しつつ車載制御装置110のリセットもしくは例外処理を監視することによって、車載制御装置110の脆弱性を検出するように車載ネットワークの試験装置100を構成する。【選択図】図1

Description

本発明は、車載電子装置において、車載ネットワークに流れるデータを介して発露するセキュリティ上の脆弱性を検証する装置に関する。
2013年8月に開催された情報セキュリティの国際会議DEFCON 21(毎年、米国ネバダ州ラスベガスで開かれる世界最大のセキュリティ・カンファレンス)において、車載ネットワークであるCAN(Controller Area Network)に流れる情報を解析し、その通信になりすますことで攻撃する実証実験の動画が公開された。これ以降、車載ネットワークおよびそれに繋がる車載電子装置のセキュリティに関する議論が注目を浴びている。
車載ネットワークの規格は公開された国際規格であることと、車内のクローズした環境で使用されることが前提であった。したがって、全体がすべて善意の設計者によりハンドリングされることしか想定されてこなかった。しかしながら、悪意の第三者が外部より接続し車両の制御に影響を与える可能性が明らかにされ、それが今まで誰も考えもしないこと(考え付いていても経済的合理性が不明で先送り)であったので、以後この脅威に対する議論が大いに盛り上がった。
特に将来技術として各社が取り組もうとしている自動運転などは、特定の局面では運転者の意志よりも車両制御ソフトの判断が優先される仕組みであり、これをテロ目的などで悪意の第三者に制御されると重大な人的および財産的危機を引き起こす恐れがある。
この脅威に対抗するものとして、現行インターネットの技術領域で使用されている暗号化や電子署名などの技術が、車載ネットワーク領域にも降りてくるものと推測される。しかしながら、これらの対策を順当に実施したとしても、問題となるのはバッファオーバーフローなど制御ソフトウェア(特に車載ネットワークをハンドリングするドライバソフトウェア群およびそれらのデータを使用したアプリケーションソフトウェア)の処理例外に起因する脆弱性である。バッファオーバーフローについては、統一的な方法論や根本的な解決方法がなく、個別かつ虱潰し的に該当ソフトウェアの問題点を見つけて対策していくしか方法がない。
バッファオーバーフローは、車載ネットワークを通じて送り込んだデータにより車載ECU(Electronic Control Unit)に処理中断をおこさせるか、最悪の場合、ネットワーク送信データを制御コード(マシン語)に見立ててそこに制御を移すことにより車載ECUを乗っ取ることが可能である。いずれにせよ、車載ECUにとっては良くて走行中のリセット(車両走行状態によっては大きな運転ショックが出る)、最悪のケースで悪意の第三者による制御ハイジャックに見舞われることになる。これは車両の運転者のみならず、交通社会にとって大いなる脅威である。
前述したようにバッファオーバーフローを防ぐためには、制御ソフトウェアのセキュアな作り込みや、検証を地道に行うことが肝要であり技術的な特効薬はない。また、ソフトウェアの改造や流用に当たって、新たな脆弱性が容易に作りこまれることもその特徴である。
ここで「セキュア」という表現は、「技術的に安全が保障された」という意味である。
パソコンのOS(Operating System)であるWindows XP(登録商標)がライフサイクルの12年が経過してその寿命(ライフサイクル)を終えてもセキュリティの脆弱性の観点では枯れなかったことがその証左である。
近年、制御ソフトウェアが巨大化していることによって、ホワイトボックステストでプログラムの網羅的な試験を実施することが困難になってきている。したがって、ファジング(非特許文献1参照)などの技術の応用によって脆弱性試験を実施することが現実的な対応策となってきている。
従来技術としては、インターネットにおけるコンテンツビューアの技術領域であり、必ずしも車載機器応用では無いが、例えば特許文献1に示すようにネットワーク入力を広範に可変として、例外処理が発生したモジュールを特定しコンテンツビューアの脆弱性の検出を行う検出装置およびバグ検出方法の技術が知られている。
特許第5386015号公報
"Fuzz Testing of Application Reliability", Barton Miller <URL:http://pages.cs.wisc.edu/~bart/fuzz/>
しかしながら、上記特許文献1では、これをそのまま車載ネットワークの脆弱性検査に適用することはできない。一般のインターネットと車載ネットワークとではプロトコルが異なり、ネットワークを流れるデータの用途や意味も異なるからである。
また、非特許文献1で例示したファジングなどを応用した試験に際しても、車載制御ソフトウェアが脆弱性を抱え込む機序を理解して、テストケースをルール付しないと網羅的かつ効率的な検証はできない。
車載制御ソフトウェアで注目すべき脆弱性は、ネットワーク関連ドライバやアプリケーションのバッファオーバーエラーである。
一般的にはバッファオーバーエラーには主に2種類があって、スタックオーバーフローエラーとヒープオーバーフローエラーが挙げられる。しかしながら、車載制御機器関係の技術領域に限定すると、バッファオーバーエラーの中でも特に問題にすべきはスタックオーバーフローエラーであり、ヒープオーバーフローエラーではない。
車載制御ソフトウェアではヒープを使用することはない。ヒープのような動的なメモリ管理は、最悪実行時間の把握を難しくして再現性のない遅延を生むので、車載目的の制御ソフトウェアに関しては不向きであり、通常使用されない。(ヒープはソフトリアルタイム制御向きであり、自動車のようなハードリアルタイム制御には向いていない。)
車載制御装置では、C言語やC++言語で制御ソフトウェアを記述している関係で言語の機構上スタックオーバーフローエラーの発生は避けられず、これを効率的に検証できる装置および手法が求められている。
車載ネットワークは、CANからCAN FD(CAN with Flexible Data Rate)およびEthernet(登録商標)と1通信フレーム当たりのデータ量(ペイロード)が制御の高度化により年々巨大になってくると予想されている。
その際、低容量(小ペイロード)の通信プロトコルに適合した通信ソフトウェアをベースとして用い、これを流用し修正かつ改良して新プロトコルに対応すると想定されるが、スタック上のデータバッファを新プロトコルに合わせて適切に拡張するか、少なくともデータ格納溢れを意識した異常処理を作り込んでいないとスタックオーバーフローが容易に発生し、結果として脆弱性を作り込むことになる。
そこで本発明は、上記車載制御ソフトウェア特有の作り込み機序に起因する脆弱性を自動的に発見する車載ネットワークの試験装置を提供することを目的とする。
上記課題を解決するために、例えば特許請求の範囲に記載の構成を採用する。
本発明は上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、車載ネットワークから制御情報を取得して動作に反映させる車載電子装置に関して、この動作を検証するための車載ネットワークの試験装置であって、前記車載電子装置のCPU(Central Processing Unit)のリセット割り込み、アドレスエラー、もしくは不正命令割り込みの少なくともひとつを検出する異常検出器と、車載ネットワークに供給する送信メッセージを動的に変更するテストデータ生成器とで構成され、前記テストデータ生成器は該車載電子装置の受信可能なメッセージ識別子を蓄積した辞書と、単位メッセージ当たりのペイロード量を動的に変更して発生させるデータ発生器とで構成され、前記テストデータ生成器から発生させたメッセージ識別子とペイロードとの組み合わせデータを、車載ネットワーク経由で該車載電子装置に供給するとともに、前記異常検出器により前記車載電子装置のリセット割り込み、アドレスエラー、もしくは不正命令割り込みの少なくともひとつの発生を監視することを特徴とする。
本発明によれば、車載ネットワークに流れるデータを介して発生するスタックオーバーフローエラーを早期に網羅的に検証することによって、車両の脆弱性を摘出可能な試験装置および試験方法を提供することができる。
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
本実施形態に係る車載ネットワーク試験装置の全体構成図である。 本発明が検出対象とするスタックオーバーフローエラーの機序をしめすメモリ配置図である。 本発明が検出対象とするスタックオーバーフローエラーが制御ソフトウェアに作り込まれる要因を示した解説図である。 本実施形態に係る車載ネットワーク試験装置の時系列動作を示したタイムチャートである。 本実施形態に係る車載ネットワーク試験装置の内部動作手順を示すフローチャートである。
以下、図面を用いて本発明の実施形態を説明する。
<本実施形態の概要>
本実施形態の試験装置では、試験対象の車載ECUが受信可能なメッセージ識別子をデータベースとしてテスト辞書を保持している。
同じくペイロード発生器は、上記各メッセージ識別子に対応する想定されたペイロード量(設計的に与えられソフトウェアに作り込まれたペイロード量)より大きなデータフレームを発生し、前記メッセージ識別子と合成して車載ネットワークに送出することができる。
一方、試験対象の車載ECUのCPU周辺にはデバッグポートもしくは類似の信号端子が用意されており、CPUのリセットあるいは例外処理の発生を捉えて本発明の試験装置に伝える結線が施されている。
本実施形態の試験装置では、上記メッセージ識別子とペイロードの組み合わせを自動的かつ網羅的に車載ネットワークに流し、試験対象の車載ECUの挙動、とくに例外処理が実行されたか、もしくはリセットが発生したか否かを自動的に調べることができる。
上述のスタックオーバーフローエラー作り込み機序を想定した脆弱性検出試験であるので、ペイロード量を通信で想定された量(設計値)よりプロトコルの上限一杯までスイープ(掃引)してテストすることが重要となる。
また、ペイロードのデータ自体は、車載制御装置ECUのCPUに例外処理を引き起こしやすい値を設定することも重要となる。たとえば、値の候補としてアドレスに換算して例外ベクタに相当する値などが挙げられる。
<実施の形態における構成>
図1は、本発明の実施形態の一つを図示したものである。
車載ECU・110は、車載ネットワーク120から情報を取り入れ制御に反映する。車載ECU・110は本発明における被試験対象である。
本発明の試験装置100は、接続109にて車載ネットワーク120に接続し、接続116にて車載ECU・110の動作をモニタしている。
試験装置100は、主にテストデータ生成器107と異常検出器101により構成されており、全体の動作はシーケンサー103により制御されて試験動作を実行する。
テストデータ生成器107の内部は、受信メッセージ識別子の辞書105、ペイロードのデータ発生器106、種となるデータ108、およびそれらを合成して送信フレームを生成するメッセージ合成器102より構成されている。
試験装置100より車載ネットワーク120に送出された試験用送信メッセージは、車載ECU・110内部のネットワークデバイス113に捕捉されてCPU111の作用よりRAM(Random Access Memory)112に転送されるが、そこで場合によっては後述の脆弱性が発生する局面を迎える。
RAM112とCPU111は内部バス114で接続されており、関数の戻りアドレス(及びそれを格納したスタックフレーム)もRAM112内に格納されるが、これがネットワークから受信したデータにより破壊され、脆弱性を引き起こすのがその要因である。
CPU111が脆弱性に見舞われると、リセットが発生するか、例外処理が行われるので、その状況をデバッグポート115より外部出力し、接続116を通じて試験機100の異常検出器101が捕捉しシーケンサー103に報告する。
シーケンサー103は、脆弱性を捉えた旨、表示装置104を通じて外部の操作者に分かるように表示を行う。しかしながら、表示装置(もしくはマン・マシン・インターフェース)は図1の104で図示するように試験機100の内部に包括されていてもよいし、例えば異常検知信号のみ外部に出力して、表示と記録は試験機100と分離された別装置(図示せず)により行ってもよい。
上述のCPU111にリセットが発生する状況は、直接リセットベクタに制御が飛ぶ場合と、ソフトウェア暴走により外部ウォッチドックタイマからリセット信号が入る場合とがある。また、CPU111に例外処理が発生する状況は、通常許可されていないアドレス空間を参照しようとしたアドレスエラーによるものと、異常なアドレスに遷移しそのビット列を命令として実行した結果、有り得ない(解読不能な)命令をフェッチしたことによる不当命令割り込みにより発生する場合がある。
いずれの場合も、デバッグポート115を経由して異常検出器101がこの状況を検出することが可能である。
上記の各構成、機能、処理部などは、それらの全部または一部を、例えば集積回路で設計することによりハードウェアとして実現することもできるし、プロセッサがそれぞれの機能を実現するプログラムを実行することによりソフトウェアとして実現することもできる。各機能を実現するプログラム、テーブルなどの情報は、メモリやハードディスクなどの記憶装置、ICカード、USBメモリ、SDカード、CD−ROM、DVDなどの記憶媒体に格納することができる。
<脆弱性の原理と作り込み要因>
図2は、スタックオーバーフローエラーがなぜ脆弱性たり得るのかを解説した図である。
バッファオーバーフローを利用して、制御ソフトウェアに想定外の動作をさせることができる。バッファオーバーフローには2種類があって、スタックオーバーフローとヒープオーバフローがあるが、車載制御ソフトウェアで問題になるのは前者のスタックオーバーフローであることは前述した通りである。
原理を解説すると、制御ソフトウェアはネットワークデータに限らず、外部から受け取ったデータを格納するために、バッファ203と呼ぶメモリ領域を確保する。あらかじめ決められた固定サイズのバッファを用意して、そこに受け取ったデータを書き込むのがソフトウェア処理の定石である。
一般に、受け取るデータの長さは可変である。そのため、制御ソフトウェアは受け取ったデータがバッファのサイズを超えないように、データの長さをチェックすべきである。ところが、アプリケーションの中には、データの長さのチェックを省略している場合がある。
例えば、通信データの1フレームを格納するバッファであって、1フレームの最大バイト数(ペイロードの上限値)が通信プロトコルの規格として決まっている場合、最大バイト数(ペイロードの上限値)分のバッファを一旦確保してしまえば、アプリケーションはことさら受け取ったデータ長さとバッファ全体長との比較チェックを行わないで済ましてしまうかもしれない。
このような制御ソフトウェアに対して、バッファのサイズを超えるデータを、例えば車載ネットワークから送り込むと、当然のようにバッファからデータが溢れる。溢れたデータは、プログラムが使っているほかのメモリ領域中のデータを上書きしてしまう。この結果、プログラムは正常に動作しなくなったり、ハングアップしてしまったりすることになる。
このように制御ソフトウェアの不具合を利用することで、制御ソフトウェアの正常な稼働を停止もしくは中断をさせることが可能になる。これをサービス妨害(DoS:Denial of Service)攻撃と呼ぶ。
DoS攻撃による動作の停止や中断だけでなく、バッファオーバーフローを利用して意図したアクションを実行させるという攻撃も登場してきている。
C言語もしくはC++言語の場合、プログラムは通常、あるプログラムが別の小さなプログラム(関数サブルーチン)に処理を依頼するように作られている。この関数サブルーチンは、RAM(図1の112に相当)のメモリ上に一時的に利用するためのスタック領域200を確保する。このスタック領域200には、実際にサブルーチンが利用すべきローカル変数や呼び出し元プログラムのレジスタ内容等退避データのほか、前述したバッファ203やリターンアドレス204が書き込まれている。リターンアドレス204とは、サブルーチンによる処理が完了したら、元のプログラムへ戻るために利用するメモリのアドレスのことである。(図2の「正常な状態201」のリターンアドレス204参照)
このような状態で、前述のように送り込まれたデータ205がバッファ203よりも大きいと、データが溢れてしまい、リターンアドレス204が記述されたスタック領域200を上書きしてしまうことも可能になる。そこで、図2の「不正なデータが送られた後の状態202」のように、送り込んだデータの溢れる部分206に、リターンアドレスとして別の値208を書き込んでおき、書き込まれたリターンアドレスが指定しているメモリ領域には攻撃者が望むようなコマンドを実行する不正な命令コード207を記述しておく。
この結果、該関数サブルーチンがリターンするタイミングで、呼出し元のプログラムが動作しているのと同じ権限で、任意のコマンド(不正な命令コード207)を実行できることになる。プログラムがスーパバイザモードのような強い権限で動いていると、こういった攻撃を受けると直ちに致命的な結果を招き、制御が攻撃者によりネットワーク越しに乗っ取られることになる。
図3は、このような脆弱性が作り込まれる要因を解説した図である。
図3では、スタック領域200の内容が図2と比較して詳細に記述されており、リターンアドレス204の上(アドレスの若い方)に向かって順番に、ベースレジスタ等の退避レジスタの値が格納され、その上に呼び出された関数が使用する自動変数(ローカル変数)が乗る。自動変数(ローカル変数)の中には、呼び出された関数が使用するローカル変数とここで議論されている処理バッファ(302および304)が格納されるものとする。
通常のセキュアなコーディングでは、転送方式(a)のように、処理バッファ[n]302とネットワークデバイス113の受信レジスタ301に格納されているデータの大きさを比較してチェック付き転送303のように処理バッファ[n]302が溢れない範囲で、受信レジスタ301→処理バッファ[n]302の転送が行われる。
しかしながら、転送方式(b)のように、通信プロトコルの1フレーム当たりの最大バイト数(ペイロードの上限値)分の処理バッファ[protocol_max]304を確保してチェック無し転送305を行う場合も多い。
ここで問題になるのは、このようなチェック無し転送が行われるプログラムを最大バイト数(ペイロードの上限値)が異なる別のプロトコルの通信ソフトウェアとして流用した場合である。
流用先で処理バッファ[protocol_max]304の数を調整しなければ、流用先プロトコルの最大バイト数(ペイロードの上限値)が流用元に比べて大きい場合、容易にスタックオーバーフロー306を引き起こすことになる。
現状、CAN→CAN FD→Ethernetと新しい通信規格ほど最大バイト数(ペイロードの上限値)が拡大される方向であるので、このような脆弱性がネットワーク対応した種々の車載ECUに内在化することが懸念される。
<実施の形態における動作>
図4は、試験装置100の動作を示したタイムチャートである。
図4の横軸は、受信メッセージの識別子(ID)ごとに一群として纏められたテストケース402であり、すべての受信識別子のテストが網羅的に車載ECU・110に供与され、応答が調べられる。
すべての受信識別子を網羅的に試行する理由は、受信識別子によって処理関数が異なり脆弱性発生個所も異なる状況を考慮したものである。
図4の縦軸は1フレーム当たりのペイロード数401であり、ペイロード想定値(設計値)より1バイトずつ増加させて連続的にテストケースが設定される。ペイロードの最大値は、言うまでもなくプロトコルで規定されたプロトコル上限値407である。
個別の受信IDごとに挙動を見ていくと、受信IDn−1・403では、ペイロード想定値Pn−1・404より1バイトずつペイロードを増加させてテストケースが組まれる。
このペイロード想定値というのは設計的に個別受信IDに対して紐付けして決まっているもので、通常のネットワーク動作ではこのペイロード量で固定してネットワークメッセージがやりとりされる。この基本値は、受信ID値に対応づけて受信メッセージ識別子の辞書105に記憶されている。
受信IDn−1・403のテスト群では、ペイロードをペイロード想定値404からプロトコル上限値407まで掃引して印加した結果、車載ECU110に異常動作を引き起こすことはなかった。
続く受信IDn・405ではペイロード想定値Pn・406から順次ペイロードを増やしてテストをしたところ、車載ECU・110にリセットが発生(408)し、その時のペイロード値はPvulune.409であった。
つまり、このペイロード値で図3の306の如くリターンアドレス204の書き換えが発生したことになる。
上記のような脆弱性を発見すれば、試験装置100はその旨を図1で示す表示装置104で表示して動作を停止し、操作者の指示を仰ぐことになる。
図5は、試験装置100の動作をフローチャートにて示したものである。図5の流れに従い順次動作を解説する。
ステップS501では、試験対象の車載ECU・110が受信可能なメッセージIDを識別子辞書105より検索する。続く、ステップS502では該メッセージIDに紐づけされたペイロード想定値(図4のPn−1・404およびPn・406に相当)を検索し、変数Pに保持しておく。(図1ではP 121の矢印として図示。)
ステップS503では、この変数Pがインクリメントされ、判定ステップS504でプロトコル上限値との比較が実行される。プロトコル上限を超えていればステップS505に遷移し、そうでなければステップS506により送信フレームを合成し車載ネットワーク120に送出する。
プロトコル上限値を超えていればステップS505に進んで受信可能メッセージIDのすべてに渡って網羅的にテストパターンを試行したかが確認される。受信可能メッセージIDの網羅が終了していなければS501に戻って、受信メッセージIDを変化させて一連の試験をやり直す。
判定ステップS504から引き続くステップS506では、S501で検索済みの受信メッセージIDと、S503で設定したプロトコル量をもとに算出したメッセージの長さ情報(CANプロトコルで言えばDLC:Data Length Code)、およびペイロード本体のビット列とが合成され、送信フレームの本体が形成される。
ペイロード本体のビット列としては、図3の現象306で言及したように、リターンアドレス204と置き換わった場合に、その現象が外部から観察されやすい値の繰り返しで構成されていた方が好都合である。
すなわち、該車載ECU・110のCPUがアドレス値として解釈した場合に、リセットベクタに合致してリセット割り込みを発生させるか、アドレス境界を逸脱してアドレスエラーを引き起こすか、もしくは不正または未定義命令の格納場所を指示して不正命令割り込みを発生させるかして、異常検出器101が検知可能な動作を引き起こす要因となるデータを予見的に生成して送信メッセージのペイロードとすることが好ましい。
したがって、この値は検査対象の車載ECU・110に搭載されるCPUアーキテクチャに依存して異なるが、上記の趣旨で値が決定されることは重要である。(試験装置の全体構成図である図1ではペイロードの種データ108として図示している。)
続くステップS507では、S506でテスト送信フレームをネットワークに送出した応答として車載ECU・110の挙動が調べられる。車載ECU・110にリセットや例外処理などの異常状態が発生していない場合はS503に戻り、発生している場合はステップS508で脆弱性を発見した旨の表示を行って動作を終了する。
S503に戻った場合は、ペイロード量をひとつ増加させて上記の一連の動作を繰り返すことになる。
図5のフローチャートでは、チャート簡略化の観点から各受信可能メッセージIDに対して(ペイロード想定値+1)のペイロード量より試験が開始されるアルゴリズムで表現されているが、図4で示したようにペイロード想定値そのもののペイロード量より試験を開始してもよく、この違いは本発明の趣旨に影響を与えるような本質的な問題ではない。
以上、本発明の実施形態によれば、車載ネットワークに流れるデータを介して引き起こされる車載ECUの脆弱性を省人力で網羅的かつ自動的に検出することができる。
また本発明による試験装置は、CAN、CAN FD、Ethernet等、広範な通信プロトコルをベースとする車載ネットワークの試験に適用可能である。
100:試験装置
101:異常検出器
102:メッセージ合成器
103:シーケンサー
104:表示装置
105:受信メッセージ識別子の辞書
106:ペイロードのデータ発生器
107:テストデータ生成器
108:ペイロードの種データ
109:[試験装置→車載ネットワーク]接続
110:車載ECU
111:CPU
112:RAM
113:ネットワークデバイス
114:内部バス
115:デバッグポート
116:[車載ECU→試験装置]接続
120:車載ネットワーク

Claims (5)

  1. 車載ネットワークから制御情報を取得して動作に反映させる車載電子装置に関して、この動作を検証するための車載ネットワークの試験装置であって、
    前記車載電子装置のCPUのリセット割り込み、アドレスエラー、もしくは不正命令割り込みの少なくともひとつを検出する異常検出器と、
    車載ネットワークに供給する送信メッセージを動的に変更するテストデータ生成器とで構成され、
    前記テストデータ生成器は該車載電子装置の受信可能なメッセージ識別子を蓄積した辞書と、単位メッセージ当たりのペイロード量を動的に変更して発生させるデータ発生器とで構成され、
    前記テストデータ生成器から発生させたメッセージ識別子とペイロードとの組み合わせデータを、車載ネットワーク経由で該車載電子装置に供給するとともに、前記異常検出器により前記車載電子装置のリセット割り込み、アドレスエラー、もしくは不正命令割り込みの少なくともひとつの発生を監視する
    ことを特徴とする車載ネットワークの試験装置。
  2. 請求項1に記載の車載ネットワークの試験装置であって、
    前記テストデータ生成器を構成するデータ発生器が、メッセージ識別子に対して設計的に決められたペイロード量よりも大きなペイロードを発生させて車載ネットワークに供給し試験を行う
    ことを特徴とする車載ネットワークの試験装置。
  3. 請求項2に記載の車載ネットワークの試験装置であって、
    前記テストデータ生成器を構成するデータ発生器が、メッセージ識別子に対して設計的に決められたペイロード量よりも大きなペイロードを発生させ、かつ車載ネットワークのプロトコルで決められた最大ペイロード量まで逐次掃引してテスト送信を実施して試験を行う
    ことを特徴とする車載ネットワークの試験装置。
  4. 請求項1に記載の車載ネットワークの試験装置であって、
    前記テストデータ生成器が、前記車載電子装置の受信可能なメッセージ識別子を蓄積した辞書と単位メッセージ当たりのペイロード量を動的に変更して発生させるデータ発生器とで構成され、
    前記メッセージ識別子とペイロードデータとの組み合わせを網羅的に車載ネットワークに供給し試験を行う
    ことを特徴とする車載ネットワークの試験装置。
  5. 請求項1に記載の車載ネットワークの試験装置であって、
    前記テストデータ生成器を構成するデータ発生器が、前記車載電子装置のCPUがアドレス値として解釈した場合に、リセットベクタに合致してリセット割り込みを発生させるか、アドレス境界を逸脱してアドレスエラーを引き起こすか、もしくは不正または未定義命令の格納場所を指示して不正命令割り込みを発生させるかして、前記異常検出器が検知可能な通常とは異なる動作を引き起こす少なくともひとつの要因となるデータを生成して送信メッセージのペイロード内容とする
    ことを特徴とする車載ネットワークの試験装置。
JP2014255708A 2014-12-18 2014-12-18 車載ネットワークの試験装置 Active JP6349244B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014255708A JP6349244B2 (ja) 2014-12-18 2014-12-18 車載ネットワークの試験装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014255708A JP6349244B2 (ja) 2014-12-18 2014-12-18 車載ネットワークの試験装置

Publications (2)

Publication Number Publication Date
JP2016113122A true JP2016113122A (ja) 2016-06-23
JP6349244B2 JP6349244B2 (ja) 2018-06-27

Family

ID=56139684

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014255708A Active JP6349244B2 (ja) 2014-12-18 2014-12-18 車載ネットワークの試験装置

Country Status (1)

Country Link
JP (1) JP6349244B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106828362A (zh) * 2017-02-20 2017-06-13 北京奇虎科技有限公司 汽车信息的安全测试方法及装置
JP2018082254A (ja) * 2016-11-14 2018-05-24 トヨタ自動車株式会社 通信システム
CN108944742A (zh) * 2018-08-03 2018-12-07 中国汽车工程研究院股份有限公司 一种新能源汽车can总线信号解析电路
JP2020061695A (ja) * 2018-10-12 2020-04-16 三菱電機株式会社 検査システム
JP2022510694A (ja) * 2018-12-07 2022-01-27 ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング 通信ネットワークを介して接続された複数の電子デバイスが例外を正しく処理するか否かの同時試験
CN114115201A (zh) * 2021-11-29 2022-03-01 上海地铁维护保障有限公司 一种车载控制器静调测试方法及系统
CN116866963A (zh) * 2023-09-04 2023-10-10 中汽研(天津)汽车工程研究院有限公司 虚实融合的v2x预期功能安全鲁棒性测试方法和系统

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10558943B2 (en) 2016-04-20 2020-02-11 Wishelf Ltd. System and method for monitoring stocking shelves

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7278061B2 (en) * 2002-10-08 2007-10-02 Agilent Technologies, Inc. Building packets of data for testing a communication network
US20090204591A1 (en) * 2008-02-11 2009-08-13 Rauli Kaksonen Method and arrangement for test case creation
WO2013144962A1 (en) * 2012-03-29 2013-10-03 Arilou Information Security Technologies Ltd. Security system and method for protecting a vehicle electronic system
WO2014076773A1 (ja) * 2012-11-13 2014-05-22 富士通株式会社 ネットワークのフィルタリング装置、及びフィルタリング方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7278061B2 (en) * 2002-10-08 2007-10-02 Agilent Technologies, Inc. Building packets of data for testing a communication network
US20090204591A1 (en) * 2008-02-11 2009-08-13 Rauli Kaksonen Method and arrangement for test case creation
WO2013144962A1 (en) * 2012-03-29 2013-10-03 Arilou Information Security Technologies Ltd. Security system and method for protecting a vehicle electronic system
WO2014076773A1 (ja) * 2012-11-13 2014-05-22 富士通株式会社 ネットワークのフィルタリング装置、及びフィルタリング方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
JUAN CARLOS RUIZ ET,AL.: "Preventing memory Errors in Networked Vehicle Services Through Diversification", [ONLINE], JPN6017031634, 11 August 2017 (2017-08-11), FR, pages 5 - 3, ISSN: 0003631604 *
KARL KOSCHER ET,AL: "Experimental Security Analysis of a Modern Automobile", [ONLINE], JPN6017031630, 10 August 2017 (2017-08-10), US, pages 全文、全図, ISSN: 0003631605 *
MICHAEL SUTTON, ファジング ブルートフォースによる脆弱性発見手法 初版 FUZZING BRUTE FORCE VULNERABILITY DISCOVERY, vol. 第1版, JPN6018006858, pages 213 - 223, ISSN: 0003747214 *
STEPHEN CHECKOWAY ET,AL: "Comprehensive Experimental Analyses of Automotive Attack Surfaces", [ONLINE], JPN6017031632, 10 August 2017 (2017-08-10), US, pages 全文、全図, ISSN: 0003631606 *
ルネサスエレクトロニクス: "RX62Tグループ、RX2Gグループ ユーザーズマニュアル ハードウェア編", [ONLINE], JPN6018006856, 27 December 2013 (2013-12-27), JP, pages 227 - 235, ISSN: 0003747213 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018082254A (ja) * 2016-11-14 2018-05-24 トヨタ自動車株式会社 通信システム
US10862687B2 (en) 2016-11-14 2020-12-08 Toyota Jidosha Kabushiki Kaisha Communication system for suppressing a processing load of an ECU when dealing with fraudulent messages
CN106828362A (zh) * 2017-02-20 2017-06-13 北京奇虎科技有限公司 汽车信息的安全测试方法及装置
CN106828362B (zh) * 2017-02-20 2020-06-02 北京奇虎科技有限公司 汽车信息的安全测试方法及装置
CN108944742A (zh) * 2018-08-03 2018-12-07 中国汽车工程研究院股份有限公司 一种新能源汽车can总线信号解析电路
JP2020061695A (ja) * 2018-10-12 2020-04-16 三菱電機株式会社 検査システム
JP2022510694A (ja) * 2018-12-07 2022-01-27 ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング 通信ネットワークを介して接続された複数の電子デバイスが例外を正しく処理するか否かの同時試験
JP7147065B2 (ja) 2018-12-07 2022-10-04 ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング 通信ネットワークを介して接続された複数の電子デバイスが例外を正しく処理するか否かの同時試験
CN114115201A (zh) * 2021-11-29 2022-03-01 上海地铁维护保障有限公司 一种车载控制器静调测试方法及系统
CN116866963A (zh) * 2023-09-04 2023-10-10 中汽研(天津)汽车工程研究院有限公司 虚实融合的v2x预期功能安全鲁棒性测试方法和系统
CN116866963B (zh) * 2023-09-04 2023-12-08 中汽研(天津)汽车工程研究院有限公司 虚实融合的v2x预期功能安全鲁棒性测试方法和系统

Also Published As

Publication number Publication date
JP6349244B2 (ja) 2018-06-27

Similar Documents

Publication Publication Date Title
JP6349244B2 (ja) 車載ネットワークの試験装置
KR102306568B1 (ko) 컴퓨터 시스템의 제어 흐름 무결성의 프로세서 트레이스 기반 집행
US10484423B2 (en) System and method for detecting and monitoring thread creation
US10474813B1 (en) Code injection technique for remediation at an endpoint of a network
US10192052B1 (en) System, apparatus and method for classifying a file as malicious using static scanning
US9565202B1 (en) System and method for detecting exfiltration content
US10733297B2 (en) Real-time signatureless malware detection
JP5374485B2 (ja) 情報セキュリティ保護ホスト
US8561198B2 (en) Detection of malicious system calls
US9876806B2 (en) Behavioral detection of malware agents
US20090300764A1 (en) System and method for identification and blocking of malicious code for web browser script engines
US10944720B2 (en) Methods and systems for network security
CN110138727A (zh) 反弹shell网络连接的信息查找方法及装置
US20200314130A1 (en) Attack detection device, attack detection method, and computer readable medium
EP3127036B1 (en) Systems and methods for identifying a source of a suspect event
CN108345795B (zh) 用于检测和分类恶意软件的系统和方法
US10885191B1 (en) Detonate targeted malware using environment context information
KR101884547B1 (ko) 악의적 호출을 완화하는 시스템 및 방법
US9881155B2 (en) System and method for automatic use-after-free exploit detection
CN105025067A (zh) 一种信息安全技术研究平台
US20230129830A1 (en) System and methods for fault injection attack protection
US11563753B2 (en) Security surveillance system and security surveillance method
WO2015178002A1 (ja) 情報処理装置、情報処理システム及び通信履歴解析方法
CN114640484A (zh) 网络安全对抗方法、装置和电子设备
CN114556338A (zh) 恶意软件标识

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161125

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170117

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170712

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170905

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171020

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171020

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180227

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180417

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: 20180508

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180604

R150 Certificate of patent or registration of utility model

Ref document number: 6349244

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350