JP6931094B2 - 通信の異常をチェックすることによって、車両の通信システムにおける途絶を検出するための方法 - Google Patents

通信の異常をチェックすることによって、車両の通信システムにおける途絶を検出するための方法 Download PDF

Info

Publication number
JP6931094B2
JP6931094B2 JP2019570917A JP2019570917A JP6931094B2 JP 6931094 B2 JP6931094 B2 JP 6931094B2 JP 2019570917 A JP2019570917 A JP 2019570917A JP 2019570917 A JP2019570917 A JP 2019570917A JP 6931094 B2 JP6931094 B2 JP 6931094B2
Authority
JP
Japan
Prior art keywords
message
signal
identifier
detecting
checking
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
JP2019570917A
Other languages
English (en)
Other versions
JP2020524951A (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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of JP2020524951A publication Critical patent/JP2020524951A/ja
Application granted granted Critical
Publication of JP6931094B2 publication Critical patent/JP6931094B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • G06F11/0739Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0763Error or fault detection not based on redundancy by bit configuration check, e.g. of formats or tags
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2289Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by configuration test
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3013Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3027Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • 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/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/026Capturing of monitoring data using flow identification

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Environmental & Geological Engineering (AREA)
  • Small-Scale Networks (AREA)

Description

関連出願
本出願は、2017年6月23日に出願された米国仮出願第62524068号明細書の優先権を主張するものであり、その全内容は、参照により本明細書に組み込まれる。
分野
実施形態は、車両の通信システムの侵入及び途絶の可能性を検出することに関する。
背景
最新の車両には、種々の車両システムを制御する多数のコンピュータ及び電気コンポーネントが装備されている。これらのコンピュータ及びコンポーネントは、相互にメッセージを送信及び受信することによって通信している。
概要
コンピュータ及びコンポーネントが送信及び受信するメッセージは、メッセージ識別子と、それに後続する複数の信号とを含む。車両におけるコンピュータと電気コンポーネントとの間の通信の途絶によって、車両の挙動が変化する可能性がある。コンピュータ制御されたシステムに対する依存度の高まりと、コンピュータ制御されたシステムの使用の増加とに伴って、予期しない車両の挙動又は外部ソースからの攻撃によって引き起こされる異常に起因して、メッセージ及び信号が誤って送信される危険性が生じる。これらの潜在的な異常を検出するために、侵入検出システムを使用することができる。不適当に送信されたメッセージから生じる不所望な結果には、運転者の不快感、運転者の注意散漫、又は、車両の挙動の変化が含まれる。各実施形態は、特に、車両の通信システムにおける途絶を検出するためのシステムを提供する。当該システムは、車両バスと、電子プロセッサとを含む。電子プロセッサは、メッセージを車両バスから受信するように構成されている。メッセージは、1つのフォーマットと複数の信号とを有する。電子プロセッサは、バス識別子の異常と、メッセージのフォーマットの異常と、メッセージを受信した時間の異常と、複数の信号のうちの1つの信号の信号パラメータの異常とを検出するように構成されている。電子プロセッサは、メッセージのフォーマットに異常が検出された場合、メッセージを受信した時間に異常が検出された場合、又は、複数の信号のうちの1つの信号の信号パラメータに異常が検出された場合に、エラーを生成するようにも構成されている。
他の実施形態は、車両の通信システムにおける途絶を検出するための方法を提供する。当該方法は、メッセージを電子プロセッサによって車両バスから受信することを含む。車両バスから受信するメッセージは、1つのフォーマットと複数の信号とを有する。当該方法は、バス識別子の異常を検出し、メッセージのフォーマットの異常を検出し、メッセージを受信した時間の異常を検出し、複数の信号のうちの1つの信号の信号パラメータの異常を検出することにより、メッセージを電子プロセッサによってテストすることも含む。当該方法は、メッセージのフォーマットの異常、メッセージを受信した時間の異常、又は、複数の信号のうちの1つの信号の信号パラメータの異常が検出された場合に、エラーを生成することも含む。
他の態様、特徴及び実施形態は、詳細な説明及び添付の図面を考慮することにより明らかになるであろう。
通信システムを含む車両の概略図である。 メッセージを受信及び分析するように構成された電子制御ユニットの図である。 通信システム(例えば、図1のシステム)が危険に曝されている(例えば、ハッキングされている)かどうかを判断するための方法のフローチャートである。 メッセージのバス識別子をチェックするための方法のフローチャートである。 メッセージの識別子が既知であることをチェックするための方法のフローチャートである。 メッセージの長さが正しいことをチェックするための方法のフローチャートである。 メッセージの予約ビットが使用されていないことをチェックするための方法のフローチャートである。 メッセージが正しい時間及びレートで受信されていることをチェックするための方法のフローチャートである。 メッセージに含まれている複数の信号の信号パラメータをチェックするための方法のフローチャートである。
詳細な説明
全ての実施形態を詳細に説明する前に、本開示がその適用において、以下の説明に記載される又は以下の図面に図示される構成の詳細及びコンポーネントの配置に限定されることを意図したものではないことを理解すべきである。各実施形態は、それぞれ他の構成が可能であり、種々の方法で実施又は実行されることが可能である。
種々の実施形態を実装するために、複数のハードウェアベース及びソフトウェアベースのデバイスと、複数の異なる構造コンポーネントとを使用するものとしてもよい。さらに、各実施形態は、ハードウェア、ソフトウェア、及び、電子コンポーネント又は電子モジュールを含むものとしてもよく、それらは、説明の目的において、コンポーネントの大部分がハードウェアの形態でのみ実装されているかのように図示及び説明されることがある。しかしながら、当業者であれば、この詳細な説明を読むことに基づき、少なくとも1つの実施形態において、本発明の電子ベースの態様が、1つ又は複数のプロセッサによって実行可能な(例えば、非一時的なコンピュータ可読媒体に格納された)ソフトウェアの形態で実装されるものとしてもよいことを認識するであろう。例えば、本明細書に記載されている「制御ユニット」及び「コントローラ」は、1つ又は複数の電子プロセッサと、非一時的なコンピュータ可読媒体を含む1つ又は複数のメモリモジュールと、1つ又は複数の入出力インタフェースと、1つ又は複数の特定用途向け集積回路(ASIC)と、種々のコンポーネント同士を接続する種々のコネクション(例えば、システムバス)とを含み得る。
図1は、車両105の通信システム100を示している。車両105は、四輪車両として例示されているが、種々の種類及び設計の車両を包含するものとしてもよい。例えば、車両105は、自動車、オートバイ、トラック、バス、セミトラクタなどであってもよい。図示の例においては、通信システム100は、いくつかのシステムが、種々の有線接続又は無線接続を介して相互にメッセージを送信し合うことによって相互に通信することを可能にする。相互に通信するシステムの例は、エンジン制御システム115、運動制御システム120、トランスミッション制御システム125、ブレーキ制御システム130及びインストルメントパネル表示システム135である。これらのシステムは、種々の構造のものであってもよく、種々の通信タイプ及び通信プロトコルを使用するものとしてもよい。他の実施形態においては、相互に通信するシステム同士は、車両通信バス(車両バス)140(例えば、コントローラエリアネットワーク(CAN)バス)又は無線車両ネットワークのような共有の通信リンクを介して通信可能に結合されている。
通信システム100を介して相互作用する上述したシステムの各々は、それぞれのシステムの機能に関連するデータを受信、処理及び送信するための電子制御ユニットが含まれる、専用の処理回路を含むものとしてもよい。例えば、エンジン制御システム115は、メッセージを受信し、受信したメッセージに関連する潜在的に有害な異常が存在しないことをチェックして、メッセージを送信するための、電子制御ユニットを含むものとしてもよい。図1に示される実施形態は、通信システム100のコンポーネント及びコネクションの一例を提示したものに過ぎない。これらのコンポーネント及びコネクションが、本明細書で例示及び説明されるもの以外の方法で構築されるものとしてもよいことを理解すべきである。
図2は、通信システム100の電子制御ユニット200のブロック図である。電子制御ユニット200は、電子制御ユニット200の内部のコンポーネント及びモジュールに電力、動作制御及び保護を提供するための複数の電気及び電子コンポーネントを含む。電子制御ユニット200は、特に、電子プロセッサ205(プログラム可能な電子マイクロプロセッサ、マイクロコントローラ、又は、同類のデバイスなど)と、メモリ210(例えば、非一時的な機械可読メモリ)と、入出力インタフェース215とを含む。電子制御ユニット200は、図2においては、純粋に例示目的のために、単一の入出力インタフェース215を有するものとして示されていることを理解すべきである。電子制御ユニット200は、任意の数の入出力インタフェースを有しているものとしてもよく、本明細書に示される単一の入出力インタフェース215は、決して限定するものとして考慮されるべきではない。電子プロセッサ205は、メモリ210と、入出力インタフェース215とに通信可能に接続されている。電子プロセッサ205は、メモリ210及び入出力インタフェース215と協働して、特に、本明細書に記載された方法を実施するように構成されている。
電子制御ユニット200は、複数の独立したコントローラ(例えば、複数のプログラム可能な電子制御ユニット)の形態で実装されているものとしてもよく、これらのコントローラは、それぞれ特定の機能又はサブ機能を実行するように構成されている。さらに、電子制御ユニット200は、以下に列挙する方法の入出力機能及びアプリケーションを処理するための追加的な電子プロセッサ、メモリ又は特定用途向け集積回路(ASIC)が含まれる、サブモジュールを含むものとしてもよい。他の実施形態においては、電子制御ユニット200は、追加的なコンポーネント、より少数のコンポーネント、又は、他の異なるコンポーネントを含む。
図3は、通信システム100が危険に曝されているかどうかを判断するための例示的な方法300を示している。提示された例においては、メッセージが受信されると(ブロック302)、このメッセージが車両105のいかなるシステムをも破壊しないことを確認するために、一連のテストが実行される。まず始めに、メッセージの送信元であるバス(例えば車両バス140)のバス識別子が分析される(ブロック305)。バス識別子の分析中に異常が発見されなかった場合には、メッセージのフォーマットが分析される。メッセージのフォーマットには、例えば、メッセージ識別子と、メッセージの長さと、メッセージの予約ビットとが含まれる。メッセージを受信した時間(メッセージを受信するレート)も分析される。いくつかの実施形態においては、まず始めに、メッセージ識別子が分析される(ブロック315)。メッセージ識別子が既知であった場合(メッセージ識別子に異常が発見されなかった場合(ブロック320))には、メッセージの長さが分析され(ブロック325)、メッセージの予約ビットが分析され(ブロック330)、メッセージを受信するレートが分析され(ブロック335)、メッセージに含まれている1つ又は複数の信号の信号パラメータが分析される(ブロック340)。メッセージの分析が完了した後、方法300は、電子制御ユニット200が新しいメッセージを受信するまで待機する(ブロック302)。いくつかの実施形態では、電子プロセッサ205は、方法300において実行されるものとして記載された上記のテストに加えて追加的なテストを実行するものとしてもよい。他の実施形態では、電子プロセッサ205は、方法300において記載されているステップの数よりも少数のステップでメッセージを分析するものとしてもよい。電子プロセッサ205が1つのメッセージに対して実行するテストの数は、電子プロセッサ205がそのメッセージに対して実行したテストの結果に依存するものとしてもよい。方法300の分析ステップ又は分析テストの各々は、以下にさらに詳細に説明される。
図4は、電子プロセッサ205によって受信されたメッセージに関連付けられたバス識別子をチェックするための例示的な方法400を示している。まず始めに、メッセージを配信したバスに関連付けられたバス識別子が特定される(ブロック402)。いくつかの実施形態においては、バス識別子は、メッセージから抽出される。他の実施形態においては、バス識別子は、(電子制御ユニット200が入出力インタフェース215と同様の入出力インタフェースを複数有していると仮定した場合に)どの入出力インタフェースが、メッセージを受信して電子プロセッサ205に送信するかに基づいて特定される。電子プロセッサ205は、1つ又は複数のテーブルの中からこの特定されたバス識別子を検索する(ブロック405)。それぞれのテーブルは、1つの実行可能なバス識別子(例えば、CANバス識別子)に関連付けられている。いくつかの実施形態においては、電子プロセッサ205が、その特定されたバス識別子に関連付けられたテーブルを発見しなかった場合には、電子プロセッサ205は、このメッセージのテストを中止し、このメッセージの実行を終了する(ブロック415)。電子プロセッサ205が、その特定されたバス識別子に関連付けられたテーブルを発見した場合には、電子プロセッサ205は、このメッセージの分析を継続する(ブロック420)。
図5は、受信したメッセージのメッセージ識別子をチェックするための例示的な方法500を示している。メッセージ識別子がメッセージから抽出される(ブロック502)。電子プロセッサ205は、1つのテーブルの中からこのメッセージのこのメッセージ識別子を検索する(ブロック505)。テーブルは、メッセージのバス識別子のための複数の有効なメッセージ識別子を含む。いくつかの実施形態においては、電子プロセッサ205が、メッセージのバス識別子のための複数の有効なメッセージ識別子を含有するテーブルの中に、そのメッセージのそのメッセージ識別子を発見しなかった場合には、電子プロセッサ205は、エラーを生成し、このメッセージのテストを中止し、このメッセージの実行を終了する(ブロック515)。電子プロセッサ205が、テーブルの中にそのメッセージのそのメッセージ識別子を発見した場合には、電子プロセッサ205は、このメッセージの分析を継続する(ブロック520)。
図6は、受信したメッセージの長さをチェックするための例示的な方法600を示している。有効なメッセージ長に対する所定の要件は、メモリ210に格納されている。有効なメッセージ長に対する所定の要件は、最小メッセージ長、最大メッセージ長、又は、他のメッセージ長であってもよい。電子プロセッサ205は、メッセージの長さ(例えば、メッセージのデータ長コード(DLC))を抽出し(ブロック602)、このメッセージの長さを、メモリ210に格納されている有効なメッセージ長に対する所定の要件と比較する(ブロック605)。メッセージの長さが、有効なメッセージ長に対する所定の要件を満たしていない場合には(ブロック610)、電子プロセッサ205は、エラーを生成し(ブロック615)、いくつかの実施形態においては、そのメッセージのテストを継続する。メッセージの長さが、有効なメッセージ長に対する所定の要件を満たしている場合には(ブロック610)、電子プロセッサ205は、そのメッセージのテストを継続する(ブロック620)。
図7は、メッセージの予約ビットが有効であることをチェックするための例示的な方法700を示している。予約ビットは、使用すべきではないビット、又は、信号に割り当てられていないビットとして定義されている。電子プロセッサ205は、予約ビットが含まれるデータをメッセージから抽出し(ブロック702)、予約ビットが使用されていないことをチェックする(ブロック705)。メッセージの予約ビットが使用されている場合には(ブロック710)、電子プロセッサ205は、エラーを生成し(ブロック715)、いくつかの実施形態では、そのメッセージのテストを継続する。受信したメッセージの予約ビットが使用されていない場合には(ブロック710)、電子プロセッサ205は、そのメッセージのテストを継続する(ブロック720)。
図8は、メッセージが適当なレート及び時間で受信されていることをチェックする(メッセージを受信した時間の異常を検出する)ための例示的な方法800を示している。図示の例においては、電子プロセッサ205は、現在のメッセージの受信と、この現在のメッセージと同一のメッセージ識別子を有する前回のメッセージの受信との間に経過した時間(時間差)を計算する(ブロック802)。全てのメッセージ識別子について、電子プロセッサ205は、各メッセージ間で経過すべき時間(前回特定された時間差)を有する(メモリ210に格納されている)。電子プロセッサ205は、経過した時間が、経過すべき時間以上であることをチェックする(ブロック805)。経過した期間が、経過すべき時間以上ではない(又は経過した時間が、経過すべき時間未満である)場合には、電子プロセッサ205は、エラーを生成し(ブロック810)、いくつかの実施形態においては、そのメッセージのテストを継続する。電子プロセッサ205が、(例えば、時間差が第1の所定の閾値を上回っているかどうかを判断することにより)メッセージを受信するレートが速すぎると判断した場合には(ブロック820)、電子プロセッサ205は、エラーを生成し(ブロック825)、いくつかの実施形態においては、そのメッセージのテストを継続する。電子プロセッサ205が、(例えば、時間差が第2の所定の閾値を下回っているかどうかを判断することにより)メッセージを受信するレートが遅すぎると判断した場合には(ブロック830)、電子プロセッサ205は、エラーを生成し(ブロック835)、いくつかの実施形態においては、そのメッセージのテストを継続する。
図9は、ある1つの信号の信号パラメータをチェックするための例示的な方法900を示している。図示の例においては、電子プロセッサ205は、この信号が所定の許容可能範囲内にあることをチェックする(ブロック910)。許容可能範囲は、例えば、線形値の範囲である。この信号が所定の許容可能範囲内にない場合には、電子プロセッサ205は、エラーを生成する(ブロック915)。いくつかの実施形態においては、電子プロセッサ205は、この信号が所定の許容不可能範囲内にないことをチェックするものとしてもよい。許容不可能範囲は、例えば、線形値の範囲である。この信号が所定の許容不可能範囲内にある場合には、電子プロセッサ205は、エラーを生成する(ブロック915)。メモリ210には、有効な信号値のテーブルが格納されている。1つの実施形態においては、電子プロセッサ205は、そのテーブルの中からこの信号の信号値を検索する(ブロック925)。そのテーブルの中にこの信号の信号値がなかった場合には、電子プロセッサ205は、エラーを生成する(ブロック930)。いくつかの実施形態においては、メモリ210に、無効な信号値のテーブルが格納されている。電子プロセッサ205は、そのテーブルの中からこの信号の信号値を検索する。そのテーブルの中にこの信号の信号値があった場合には、電子プロセッサ205は、エラーを生成する。電子プロセッサ205は、信号がカウンタ値であるかどうか、又は、より単純なケースでは、信号がカウンタであるかどうかもチェックする。信号がカウンタである場合には、電子プロセッサ205は、カウンタが1だけ増加したか若しくは減少したか(又は正しく更新されたか)をチェックする(ブロック940)。カウンタが2以上増加又は減少した場合には、電子プロセッサ205は、エラーを生成する(ブロック945)。いくつかの実施形態においては、継続的に増加(又は減少)することが想定されているカウンタが、増加(又は減少)していない場合にも、電子プロセッサ205は、エラーを生成する。
電子プロセッサ205は、信号の値が許容可能なレートで変化していることもチェックする(ブロック955)。信号の値が変化するレートのチェックは、複数のテストを含む。例えば、信号の値が変化するレートをチェックするための複数のテストに含まれている1つのテストは、連続して受信した2つのメッセージの間で信号の値が所定の閾値よりも大きく変化したかどうかをチェックする。信号の値が所定の閾値よりも大きく変化している場合には、電子プロセッサ205は、エラーを生成する(ブロック960)。複数のテストに含まれている他の1つの例のテストは、所定の期間の開始から所定の期間の終了までに信号が変化した量を、所定の閾値と比較する。例えば、信号が、所定の期間の開始時に5の値を有していて、所定の期間の終了時に10の値を有する場合には、電子プロセッサ205は、5の値を、所定の閾値と比較することとなる。信号の値が所定の時間内に所定の閾値よりも大きく変化している場合には、電子プロセッサ205は、エラーを生成する(ブロック960)。複数のテストに含まれるさらに他の1つの例のテストは、所定の期間内の信号値の変動が所定の量よりも大きいかどうかをチェックする。いくつかの実施形態においては、信号値の変動は、所定の期間にわたる信号のデルタ値の合計の絶対値である。例えば、信号が、所定の期間内に5から10に変化し、それから10から15に変化し、15から5に変化し、そして5から0に変化した場合には、信号のデルタ値の合計の絶対値は、25である。信号の値が所定の時間内に所定の量よりも大きく変動した場合には、電子プロセッサ205は、エラーを生成する(ブロック960)。
種々の特徴、利点及び実施形態は、以下の特許請求の範囲に特定されている。

Claims (20)

  1. 車両の通信システムにおける途絶を検出するためのシステムであって、
    当該システムは、
    車両バスと、
    電子プロセッサと
    を含み、前記電子プロセッサは、
    1つのフォーマットと複数の信号とを有するメッセージを前記車両バスから受信し、
    バス識別子の異常を検出することによって、前記メッセージをテストし、
    前記メッセージのフォーマットの異常を検出することによって、前記メッセージをテストし、
    前記メッセージを受信した時間の異常を検出することによって、前記メッセージをテストし、
    前記複数の信号のうちの1つの信号の信号パラメータの異常を検出することによって、前記メッセージをテストし、
    前記メッセージのフォーマットの異常、前記メッセージを受信した時間の異常、又は、前記信号パラメータの異常が検出された場合に、エラーを生成する
    ように構成されており、
    別のテストが、所定の閾値と、所定の期間の開始から当該所定の期間の終了までに前記信号が変化した量とを比較し、前記信号の値が、前記所定の期間内に前記所定の閾値よりも大きく変化した場合には、前記電子プロセッサがエラーを生成する、または、
    1つの信号の前記信号の値の変動が所定の期間内に所定の量よりも大きいかをチェックするテストが行われ、前記信号の値の変動が、前記所定の期間にわたる前記信号のデルタ値の合計の絶対値であり、前記信号の値が、前記所定の期間内に前記所定の量よりも大きく変動した場合には、前記電子プロセッサがエラーを生成する、
    システム。
  2. 前記電子プロセッサはさらに、前記バス識別子の異常が検出された場合に、前記メッセージの前記テストを終了するように構成されている、
    請求項1に記載のシステム。
  3. 前記バス識別子の異常を検出することは、当該バス識別子がテーブルに格納されていることをチェックすることを含む、
    請求項1に記載のシステム。
  4. 前記メッセージのフォーマットの異常を検出することは、
    メッセージ識別子の異常を検出することと、
    前記メッセージの長さの異常を検出することと、
    前記メッセージの予約ビットの異常を検出することと
    からなる群から選択された少なくとも1つのことを実行することを含む、
    請求項1に記載のシステム。
  5. 前記メッセージ識別子の異常を検出することは、
    前記メッセージから前記メッセージ識別子を抽出することと、
    前記メッセージのバス識別子のための有効なメッセージ識別子が含まれているテーブルの中に当該メッセージ識別子が格納されていることをチェックすることと
    を含む、
    請求項4に記載のシステム。
  6. 前記電子プロセッサは、
    前記メッセージのバス識別子のための有効なメッセージ識別子が含まれているテーブルの中に前記メッセージ識別子が格納されていない場合に、エラーを生成し、当該メッセージのさらなるテストを終了する
    ように構成されている、
    請求項5に記載のシステム。
  7. 前記メッセージの長さの異常を検出することは、
    前記メッセージから前記メッセージの長さを抽出することと、
    前記メッセージの長さが、有効なメッセージ長に対する所定の要件を満たしていることをチェックすることと
    を含む、
    請求項4に記載のシステム。
  8. 前記メッセージの予約ビットの異常を検出することは、
    前記メッセージからデータを抽出することと、
    前記メッセージの前記予約ビットが使用されているかどうかをチェックすることと
    を含む、
    請求項4に記載のシステム。
  9. 前記メッセージを受信した時間の異常を検出することは、
    前記メッセージを受信した時間と前回のメッセージを受信した時間との間の時間差を計算することと、
    前記時間差が、前回特定された時間差よりも小さいかどうかを判断することと、
    メッセージを受信するレートが、第1の所定の閾値を上回っているかどうか又は第2の所定の閾値を下回っているかどうかを判断することと、
    メッセージを受信するレートの異常が検出された場合に、前記電子プロセッサによってエラーを生成することと
    を含み、
    前記前回のメッセージのメッセージ識別子と前記メッセージのメッセージ識別子とは、同一である、
    請求項1に記載のシステム。
  10. 前記複数の信号のうちの1つの信号の信号パラメータの異常を検出することは、
    前記信号の値が所定の許容可能範囲内にあることをチェックすることと、
    前記信号の値が所定の許容不可能範囲内にないことをチェックすることと、
    前記信号の値が、無効な信号値のテーブルの中に格納されていないことをチェックすることと、
    前記信号の値が、有効な信号値のテーブルの中に格納されていることをチェックすることと、
    前記信号の値が、許容可能なレートで変化していることをチェックすることと、
    前記信号がカウンタである場合に、前記カウンタが正しく更新されていることをチェックすることと
    を含む、
    請求項1に記載のシステム。
  11. 車両の通信システムにおける途絶を検出するための方法であって、
    当該方法は、
    1つのフォーマットと複数の信号とを有するメッセージを電子プロセッサによって車両バスから受信することと、
    バス識別子の異常を前記電子プロセッサによって検出し、前記メッセージのフォーマットの異常を前記電子プロセッサによって検出し、前記メッセージを受信した時間の異常を前記電子プロセッサによって検出し、前記複数の信号のうちの1つの信号の信号パラメータの異常を前記電子プロセッサによって検出することにより、前記メッセージを前記電子プロセッサによってテストすることと、
    前記メッセージのフォーマットの異常、前記メッセージを受信した時間の異常、又は、前記信号パラメータの異常が検出された場合に、エラーを前記電子プロセッサによって生成することと
    を含み、
    別のテストが、所定の閾値と、所定の期間の開始から当該所定の期間の終了までに前記信号が変化した量とを比較し、前記信号の値が、前記所定の期間内に前記所定の閾値よりも大きく変化した場合には、前記電子プロセッサがエラーを生成する、または、
    1つの信号の前記信号の値の変動が所定の期間内に所定の量よりも大きいかをチェックするテストが行われ、前記信号の値の変動が、前記所定の期間にわたる前記信号のデルタ値の合計の絶対値であり、前記信号の値が、前記所定の期間内に前記所定の量よりも大きく変動した場合には、前記電子プロセッサがエラーを生成する、
    方法。
  12. バス識別子の異常を検出することは、当該バス識別子がテーブルに関連付けられていることをチェックすることを含む、
    請求項11に記載の方法。
  13. 当該方法はさらに、前記バス識別子の異常が検出された場合に、前記メッセージのさらなるテストを終了することを含む、
    請求項11に記載の方法。
  14. 前記メッセージのフォーマットの異常を検出することは、
    メッセージ識別子の異常を検出することと、
    前記メッセージの長さの異常を検出することと、
    前記メッセージの予約ビットの異常を検出することと
    からなる群から選択された少なくとも1つのことを含む、
    請求項11に記載の方法。
  15. 前記メッセージ識別子の異常を検出することは、
    前記メッセージから前記メッセージ識別子を抽出することと、
    前記メッセージのバス識別子のための有効なメッセージ識別子が含まれているテーブルの中に当該メッセージ識別子が格納されていることをチェックすることと
    を含む、
    請求項14に記載の方法。
  16. 当該方法はさらに、前記メッセージのバス識別子のための有効なメッセージ識別子が含まれているテーブルの中に前記メッセージ識別子が格納されていない場合に、エラーを生成し、当該メッセージのさらなるテストを終了することを含む、
    請求項15に記載の方法。
  17. 前記メッセージの長さの異常を検出することは、
    前記メッセージから前記メッセージの長さを抽出することと、
    前記メッセージの長さが、有効なメッセージ長に対する所定の要件を満たしていることをチェックすることと
    を含む、
    請求項14に記載の方法。
  18. 前記メッセージの予約ビットの異常を検出することは、
    前記メッセージからデータを抽出することと、
    前記メッセージの前記予約ビットが使用されているかどうかをチェックすることと
    を含む、
    請求項14に記載の方法。
  19. 前記メッセージを受信した時間の異常を検出することは、
    前記メッセージを受信した時間と前回のメッセージを受信した時間との間の時間差を計算することと、
    前記時間差が、前回特定された時間差よりも小さいかどうかを判断することと、
    メッセージを受信するレートが、第1の所定の閾値を上回っているかどうか又は第2の所定の閾値を下回っているかどうかを判断することと、
    メッセージを受信するレートの異常が検出された場合に、エラーを前記電子プロセッサによって生成することと
    を含み、
    前記前回のメッセージのメッセージ識別子と前記メッセージのメッセージ識別子とは、同一である、
    請求項11に記載の方法。
  20. 前記複数の信号のうちの1つの信号の信号パラメータの異常を検出することは、
    前記信号の値が所定の許容可能範囲内にあることをチェックすることと、
    前記信号の値が所定の許容不可能範囲内にないことをチェックすることと、
    前記信号の値が、無効な信号値のテーブルの中に格納されていないことをチェックすることと、
    前記信号の値が、有効な信号値のテーブルの中に格納されていることをチェックすることと、
    前記信号の値が、許容可能なレートで変化していることをチェックすることと、
    前記信号がカウンタである場合に、前記カウンタが正しく更新されていることをチェックすることと
    を含む、
    請求項11に記載の方法。
JP2019570917A 2017-06-23 2018-04-11 通信の異常をチェックすることによって、車両の通信システムにおける途絶を検出するための方法 Active JP6931094B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201762524068P 2017-06-23 2017-06-23
US62/524,068 2017-06-23
PCT/EP2018/059212 WO2018233889A1 (en) 2017-06-23 2018-04-11 METHOD FOR DETECTING AN INTERRUPTION IN A COMMUNICATION SYSTEM OF A VEHICLE BY VERIFYING ANOMALIES DURING COMMUNICATION

Publications (2)

Publication Number Publication Date
JP2020524951A JP2020524951A (ja) 2020-08-20
JP6931094B2 true JP6931094B2 (ja) 2021-09-01

Family

ID=61972120

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019570917A Active JP6931094B2 (ja) 2017-06-23 2018-04-11 通信の異常をチェックすることによって、車両の通信システムにおける途絶を検出するための方法

Country Status (6)

Country Link
US (1) US11296970B2 (ja)
EP (1) EP3642715B1 (ja)
JP (1) JP6931094B2 (ja)
KR (1) KR102505993B1 (ja)
CN (1) CN110753912A (ja)
WO (1) WO2018233889A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3798840B1 (en) * 2018-10-11 2024-07-31 Nippon Telegraph And Telephone Corporation Information processing device, data analysis method, and program
US11201884B2 (en) * 2018-11-30 2021-12-14 Raytheon Company Bus monitoring system for detecting anomalies indicative of malfunctions or cyber-attacks
CN111891134B (zh) 2019-05-06 2022-09-30 北京百度网讯科技有限公司 自动驾驶处理系统和片上系统、监测处理模块的方法

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100604604B1 (ko) 2004-06-21 2006-07-24 엘지엔시스(주) 서버 보안 솔루션과 네트워크 보안 솔루션을 이용한시스템 보안 방법 및 이를 구현하는 보안시스템
US7933985B2 (en) 2004-08-13 2011-04-26 Sipera Systems, Inc. System and method for detecting and preventing denial of service attacks in a communications system
US20060123481A1 (en) 2004-12-07 2006-06-08 Nortel Networks Limited Method and apparatus for network immunization
JP2007067812A (ja) 2005-08-31 2007-03-15 Fujitsu Ten Ltd フレーム監視装置
WO2008067335A2 (en) 2006-11-27 2008-06-05 Smobile Systems, Inc. Wireless intrusion prevention system and method
EP2441229B1 (en) 2009-06-11 2020-05-06 Panasonic Avionics Corporation System and method for providing security aboard a moving platform
DE102009026995A1 (de) 2009-06-17 2011-03-31 Robert Bosch Gmbh Verfahren zum Betreiben eines Bussystems, insbesondere eines CAN-Busses
US20130212680A1 (en) 2012-01-12 2013-08-15 Arxceo Corporation Methods and systems for protecting network devices from intrusion
KR102281914B1 (ko) 2012-10-17 2021-07-27 타워-섹 리미티드 차량에 대한 공격의 검출 및 예방을 위한 디바이스
KR101371902B1 (ko) 2012-12-12 2014-03-10 현대자동차주식회사 차량 네트워크 공격 탐지 장치 및 그 방법
DE102012224234A1 (de) 2012-12-21 2014-06-26 Continental Teves Ag & Co. Ohg Verfahren zur Kontrolle von Daten-Frames mit redundantem Identifikator auf einem Datenbus sowie Datenbus-Schnittstellenmodul
JP5919205B2 (ja) 2013-01-28 2016-05-18 日立オートモティブシステムズ株式会社 ネットワーク装置およびデータ送受信システム
JP2014236248A (ja) * 2013-05-30 2014-12-15 日立オートモティブシステムズ株式会社 電子制御装置、電子制御システム
US9401923B2 (en) 2013-10-23 2016-07-26 Christopher Valasek Electronic system for detecting and preventing compromise of vehicle electrical and control systems
US9282110B2 (en) 2013-11-27 2016-03-08 Cisco Technology, Inc. Cloud-assisted threat defense for connected vehicles
KR101472896B1 (ko) 2013-12-13 2014-12-16 현대자동차주식회사 차량 내 통신 네트워크에서의 보안 강화 방법 및 그 장치
EP2892201B1 (en) 2014-01-06 2017-08-30 Argus Cyber Security Ltd. Detective watchman
WO2016151566A1 (en) * 2015-03-26 2016-09-29 Tower-Sec Ltd Security system and methods for identification of in-vehicle attack originator
US8955130B1 (en) 2014-04-10 2015-02-10 Zephyr Technology Co., Limited Method for protecting vehicle data transmission system from intrusions
JP6490058B2 (ja) * 2014-04-17 2019-03-27 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 車載ネットワークシステム及び不正検知方法
EP3197730B1 (en) 2014-09-25 2020-02-19 Tower-Sec Ltd. Vehicle correlation system for cyber attacks detection and method thereof
CN104320295B (zh) * 2014-10-08 2018-05-29 清华大学 Can报文异常检测方法及系统
CN111934966B (zh) * 2014-12-01 2022-09-20 松下电器(美国)知识产权公司 不正常检测电子控制单元、车载网络系统以及不正常检测方法
JP6573819B2 (ja) * 2015-01-20 2019-09-11 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 不正検知ルール更新方法、不正検知電子制御ユニット及び車載ネットワークシステム
JP6594732B2 (ja) 2015-01-20 2019-10-23 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 不正フレーム対処方法、不正検知電子制御ユニット及び車載ネットワークシステム
US9531750B2 (en) * 2015-05-19 2016-12-27 Ford Global Technologies, Llc Spoofing detection
US10095634B2 (en) * 2015-05-22 2018-10-09 Nxp B.V. In-vehicle network (IVN) device and method for operating an IVN device
US11165851B2 (en) 2015-06-29 2021-11-02 Argus Cyber Security Ltd. System and method for providing security to a communication network
US10798114B2 (en) 2015-06-29 2020-10-06 Argus Cyber Security Ltd. System and method for consistency based anomaly detection in an in-vehicle communication network
EP3113529B1 (en) * 2015-06-29 2020-09-16 Argus Cyber Security Ltd. System and method for time based anomaly detection in an in-vehicle communication network
EP3331732B1 (en) 2015-08-06 2021-07-14 Red Bend Ltd. Can bus communication regulation
JP6836340B2 (ja) * 2015-09-29 2021-02-24 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 不正検知電子制御ユニット、車載ネットワークシステム及び通信方法

Also Published As

Publication number Publication date
KR102505993B1 (ko) 2023-03-03
EP3642715B1 (en) 2021-04-07
JP2020524951A (ja) 2020-08-20
WO2018233889A1 (en) 2018-12-27
US11296970B2 (en) 2022-04-05
CN110753912A (zh) 2020-02-04
KR20200020720A (ko) 2020-02-26
EP3642715A1 (en) 2020-04-29
US20200162361A1 (en) 2020-05-21

Similar Documents

Publication Publication Date Title
US11595422B2 (en) Method for preventing electronic control unit from executing process based on malicious frame transmitted to bus
US10693889B2 (en) Vehicle communication apparatus, in-vehicle network system, and vehicle communication method
JP6931094B2 (ja) 通信の異常をチェックすることによって、車両の通信システムにおける途絶を検出するための方法
CN105981336B (zh) 不正常检测电子控制单元、车载网络系统以及不正常检测方法
US11032300B2 (en) Intrusion detection system based on electrical CAN signal for in-vehicle CAN network
US11838303B2 (en) Log generation method, log generation device, and recording medium
US20170134358A1 (en) Communication system, communication control device, and fraudulent information-transmission preventing method
RU2712138C2 (ru) Способ, система и электронный блок управления для предотвращения спуфинга в автомобильной сети
JP5393932B1 (ja) データ処理装置及び通信システム
EP3772840B1 (en) A security module for a can node
US20220294638A1 (en) Method for monitoring a network
US10601843B2 (en) Communication method, non-transitory computer-readable recording medium and communication device using same
KR20220054611A (ko) 제어기 영역 네트워크 버스 침입 검출 및 무력화를 위한 방법 및 장치
US8041993B2 (en) Distributed control system
WO2018233891A1 (en) GRAPHIC USER INTERFACE TOOL FOR CONFIGURING AN INTRUSION DETECTION SYSTEM OF A VEHICLE
EP2713537B1 (en) High speed data transmission methods and systems upon error detection
JP2015192216A (ja) 通信装置および通信方法
CN110177032B (zh) 报文路由质量监测方法及网关控制器
CN112333038A (zh) 一种车辆网关检测方法及装置
KR20210100474A (ko) 차량용 전자 제어기의 테스트 장치 및 그 테스트 방법
JP6183281B2 (ja) 通信システムおよび電子制御装置
CN117749555A (zh) 控制器区域网络系统和用于系统的方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200331

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200116

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210201

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20210428

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210520

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210812

R150 Certificate of patent or registration of utility model

Ref document number: 6931094

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250