JP7281714B2 - 情報処理装置、情報処理システム及びプログラム - Google Patents

情報処理装置、情報処理システム及びプログラム Download PDF

Info

Publication number
JP7281714B2
JP7281714B2 JP2019152453A JP2019152453A JP7281714B2 JP 7281714 B2 JP7281714 B2 JP 7281714B2 JP 2019152453 A JP2019152453 A JP 2019152453A JP 2019152453 A JP2019152453 A JP 2019152453A JP 7281714 B2 JP7281714 B2 JP 7281714B2
Authority
JP
Japan
Prior art keywords
network
message
declaration message
received
declaration
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
JP2019152453A
Other languages
English (en)
Other versions
JP2021034850A (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.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Panasonic Intellectual Property Management Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Intellectual Property Management Co Ltd filed Critical Panasonic Intellectual Property Management Co Ltd
Priority to JP2019152453A priority Critical patent/JP7281714B2/ja
Priority to US16/994,935 priority patent/US11632381B2/en
Publication of JP2021034850A publication Critical patent/JP2021034850A/ja
Application granted granted Critical
Publication of JP7281714B2 publication Critical patent/JP7281714B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40013Details regarding a bus controller
    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Small-Scale Networks (AREA)

Description

本開示は、複数の電子制御装置(以下ECU(Electronic Control Unit)とも呼ぶ)が接続されたネットワークにおける不正を検知するための情報処理装置、情報処理システム及びプログラムに関する。
トラック、バス、建機、トラクタ、トレーラ又は船舶等に適用される制御バス規格として、SAE(Society of Automotive Engineers) J1939規格が存在する。上記移動体内では、例えば、SAE J1939規格に基づいて、ECU間でメッセージの送受信が行われる。SAE J1939規格において用いられるアドレスクレーム(以下ACLとも呼ぶ)メッセージを悪用して、各ECUが接続されたCAN(Controller Area Network)に不正なメッセージを送信することで、正規のECUになりすますという攻撃があることが指摘されている。これに対して、例えば、非特許文献1には、SAE J1939規格のACLメッセージを悪用した不正を検知する技術について開示されている。具体的には、各ECU間で公開鍵暗号ベース又は秘密鍵暗号ベースの認証及び鍵共有を行い、共有した鍵でCANメッセージパケットに対して改ざん検出用コード(MAC:Message Authentication Code)を付加することで、不正なメッセージを検知できる。
Paul-Stefan Murvae, et al. "Security shortcomings and countermeasures for the SAE J1939 commercial vehicle bus protocol", IEEE Transactions on Vehicular Technology, Volume 67, Issue 5, May 2018
しかしながら、非特許文献1に開示された技術では、認証及び鍵共有のための通信が必要となり、CAN通信の開始の際にその都度当該通信による遅延が発生するという問題がある。また、CANメッセージパケット内にMACを格納するための8バイトものフィールドが必要となり、1つのCANメッセージで送信可能なデータ量が削減されるため、メッセージを送信するのに要する時間が増加するという問題がある。このように、非特許文献1に開示された技術では、CAN等のネットワークにおける不正を検知しようとすると、通信品質が劣化するおそれがある。
そこで、本開示は、通信品質の劣化を抑制しつつ、ネットワークにおける不正を検知できる情報処理装置等を提供する。
上記目的を達成するために本開示の一態様に係る情報処理装置は、複数の電子制御装置が接続されたネットワークにおける不正を検知するための情報処理装置であって、前記複数の電子制御装置のそれぞれは、前記ネットワークにおいて使用を希望するソースアドレスを主張する宣言メッセージを前記ネットワークに送信した後、当該ソースアドレスを含む通常のメッセージの前記ネットワークへの送信を開始する装置であり、前記情報処理装置は、前記ネットワークから受信した宣言メッセージに含まれるソースアドレスと、当該宣言メッセージを受信した時刻を基準とする時間と、当該宣言メッセージの前後に前記ネットワークから受信したメッセージとに基づいて、前記ネットワークにおける不正を検知する不正検知部と、前記検知の結果を出力する出力部と、を備える。
また、上記目的を達成するために本開示の一態様に係る情報処理システムは、上記の情報処理装置と、前記複数の電子制御装置と、前記ネットワークと、を備える。
また、上記目的を達成するために本開示の一態様に係るプログラムは、複数の電子制御装置が接続されたネットワークにおける不正を検知するための情報処理装置によって実行されるプログラムであって、前記複数の電子制御装置のそれぞれは、前記ネットワークにおいて使用を希望するソースアドレスを主張する宣言メッセージを前記ネットワークに送信した後、当該ソースアドレスを含む通常のメッセージの前記ネットワークへの送信を開始する装置であり、前記プログラムは、前記ネットワークから受信した宣言メッセージに含まれるソースアドレスと、当該宣言メッセージを受信した時刻を基準とする時間と、当該宣言メッセージの前後に前記ネットワークから受信したメッセージとに基づいて、前記ネットワークにおける不正を検知する不正検知処理と、前記検知の結果を出力する出力処理と、を含む。
本開示によれば、通信品質の劣化を抑制しつつ、ネットワークにおける不正を検知できる。
実施の形態1における情報処理システムの一例を示す構成図である。 SAE J1939規格で使用されるデータフレームのフォーマットを示す図である。 宣言メッセージの送信によるソースアドレスの使用を希望する際のルールを説明するためのシーケンス図である。 ソースアドレスが競合したときのルールを説明するためのシーケンス図である。 宣言メッセージが悪用され得ることを説明するためのフローチャートである。 正常時及び攻撃時のネットワークの状況を説明するための図である。 実施の形態における情報処理装置の一例を示すブロック図である。 実施の形態における情報処理装置の動作の一例を示すフローチャートである。 実施の形態における情報処理装置の不正の検知方法の第一例を説明するための図である。 実施の形態における情報処理装置の不正の検知方法の第二例を説明するための図である。 実施の形態における情報処理装置の不正の検知方法の第三例を説明するための図である。 実施の形態における情報処理装置の不正の検知方法の第四例を説明するための図である。
(実施の形態)
[情報処理システムの構成]
以下、実施の形態における情報処理システム1について図面を参照しながら説明する。
図1は、実施の形態における情報処理システム1の一例を示す構成図である。なお、図1には、情報処理システム1以外の構成要素(ブーム110a、アーム110b、バケット110c、油圧ポンプ110d及びエンジン110e)も図示している。
情報処理システム1は、例えば、車両に搭載された車載ネットワークである。情報処理システム1は、情報処理装置10と複数のECUとネットワーク300とを備える。ネットワーク300は、例えば、SAE J1939規格に基づくCANである。複数のECUのそれぞれは、SAE J1939規格に基づいて他のECUとネットワーク300を介したメッセージの送受信を行う。例えば、実施の形態では、情報処理システム1は、複数のECUとしてECU100a~100eを備える。ECU100aに着目すると、ECU100aは、他のECU100b~100eとネットワーク300を介したメッセージの送受信を行う。実施の形態においてECU100a~100eを総称してECU100とも呼ぶ。つまり、実施の形態でECU100と呼ぶものは、ECU100a~100eのいずれであってもよい。また、情報処理装置10はECUの一種であり、複数のECU100のそれぞれとネットワーク300を介したメッセージの送受信を行う。
SAE J1939規格は、トラック、バス、建機、トラクタ、トレーラ又は船舶等に適用される制御バス規格であり、SAE J1939規格に基づいてこれらの移動体内のECU間でメッセージの送受信が行われている。つまり、ECU100は、SAE J1939規格に基づいて移動体内のネットワーク300を介してメッセージの送受信を行う。以下では、建機に適用された情報処理システム1について説明する。
情報処理装置10は、複数のECU100が接続されたネットワーク300における不正を検知するための装置であり、例えば、不正検知ECUである。情報処理装置10の詳細については後述する。
ECU100aは、建機のブーム110aの姿勢角及び角速度等を検出するIMU(Inertial Measurement Unit)である。ECU100bは、建機のアーム110bの姿勢角及び角速度等を検出するIMUである。ECU100cは、建機のバケット110cの姿勢角及び角速度等を検出するIMUである。ECU100dは、ブーム110a、アーム110b及びバケット110c等の姿勢の変更及び移動等を行う油圧ポンプ110dを制御するための装置である。例えば、ECU100dは、ECU100a~100cから周期的に送信される姿勢角及び角速度等のセンシングデータを逐次受信することで、ブーム110a及びアーム110bの先端にあるバケット110cの位置及び速度を推定し、バケット110cが地面に衝突して建機が破損しないように、油圧ポンプ110dを介してブーム110a、アーム110b及びバケット110c等の自動制御を行う。ECU100eは、建機のエンジン110eを制御するための装置である。なお、ネットワーク300には、これらのECU100以外のECUが接続されていてもよい。
情報処理装置10及びECU100は、例えば、プロセッサ(マイクロプロセッサ)、メモリ等のデジタル回路、アナログ回路、通信回路等を含む装置である。メモリは、ROM、RAM等であり、プロセッサにより実行されるプログラムを記憶することができる。例えばプロセッサが、プログラムに従って動作することにより、情報処理装置10及びECU100は各種機能を実現することになる。
複数のECU100のそれぞれは、ネットワーク300から他のECU100が送信したメッセージを受信し、また、他のECU100に送信したい内容を含むメッセージを生成してネットワーク300に送信する。具体的には、複数のECU100のそれぞれは、受信したメッセージの内容に応じた処理を行い、また、各ECU100に接続されている機器の状態を示すデータ(例えば姿勢角及び角速度等のセンシングデータ)又は他のECU100への指示値(制御値)等のデータを含む通常のメッセージを生成して周期的に送信する。また、複数のECU100のそれぞれは、ネットワーク300において固有のソースアドレス(以下SAとも呼ぶ)であって、ネットワーク300において使用を希望するSAを主張する宣言メッセージをネットワーク300に送信した後、当該SAを含む通常のメッセージのネットワーク300への送信を開始する装置である。具体的には、複数のECU100のそれぞれは、宣言メッセージを送信してから規定時間(例えば250ms)、送信した宣言メッセージに対する他のECU100からの応答がなかった場合に、ネットワーク300において使用を希望するSAを含む通常のメッセージのネットワーク300への送信を開始する。また、複数のECU100のそれぞれがネットワーク300に送信する宣言メッセージは、さらに、複数のECU100のそれぞれに予め割り振られたデバイス固有のデバイスネーム(以下DNとも呼ぶ)を含む。宣言メッセージについては、後述する。なお、機器の状態を示すデータ又は指示値等のデータを含むメッセージを通常のメッセージと呼んでいるのは、宣言メッセージと区別するためである。通常のメッセージには、CANIDが含まれており、複数のECU100のそれぞれは、特定のCANIDを含むメッセージのみを受信するため、目的のECU100へ向けて通常のメッセージを送信することができる。
複数のECU100のそれぞれには、例えば製造時等にデバイス固有の64ビットのDNが予め割り振られている。DNは、ECU100ごとに固有であることが求められるため、ECU100には、ネットワーク300に関わらず他のECUと重複しないようなDNが割り当てられる。実施の形態では、例えば、図1に示されるように、ECU100aにはDNとしてNaが割り当てられ、ECU100bにはDNとしてNbが割り当てられ、ECU100cにはDNとしてNcが割り当てられ、ECU100dにはDNとしてNdが割り当てられ、ECU100eにはDNとしてNeが割り当てられる。一方で、ECU100間での通信の際に、送信元の特定のために、その都度64ビットのDNが用いられると、DNが用いられる分(64ビット分)送信可能なデータ量が削減されるため、ネットワーク300において固有の8ビットのSAが用いられる。CANIDには、8ビットのSAが含まれており、CANIDを含む通常のメッセージを受信したECU100は、CANIDに含まれるSAを確認することで送信元を特定できる。
[CANIDのフォーマット]
以下、SAE J1939規格において使用される、通常のメッセージに含まれるCANIDのフォーマットについて説明する。
図2は、SAE J1939規格で使用されるCANIDのフォーマットを示す図である。図2には、CANプロトコルで規定される11ビットの標準IDフォーマットをベースとして、トラック、バス、建機、トラクタ、トレーラ又は船舶等に適用される制御バス用の拡張が行われた29ビットの拡張CANIDのフォーマットが示されている。複数のECU100のそれぞれがネットワーク300に送信する通常のメッセージは、拡張CANIDを含み、拡張CANIDは、通常のメッセージのフォーマットを一意に決定する識別子を含む。つまり、通常のメッセージは、当該識別子を含む。当該識別子は、例えば、PGN(Parameter Group Number)である。詳細な説明は省略するが、拡張CANIDには、PGN及び宛先アドレス情報などが含まれるフィールドに加え、下位8ビットにおいて、送信元を特定するためのSAが割り当てられていることがわかる。複数のECU100のそれぞれは、起動後に宣言メッセージの送信によって他のECU100とネゴシエーションを行い、他のECU100と競合しないSAを取得する。宣言メッセージとは、ECU100がネットワーク300において使用を希望するSAを取得するために用いられるメッセージであり、ECU100に割り当てられたDN及び当該ECU100がネットワーク300において使用を希望するSAを含むメッセージである。宣言メッセージは、例えば、SAE J1939規格において規定されたACLメッセージである。基本的には、ECU100の起動時に当該ECU100から宣言メッセージがネットワーク300に送信される。宣言メッセージを受信した他のECU100は、当該宣言メッセージに含まれるDNが割り当てられたECU100が当該宣言メッセージに含まれるSAを取得しようとしていることを確認できる。宣言メッセージの送信によるSAの使用を希望する方法の詳細については後述する。
なお、本開示は、SAE J1939規格以外に適用されてもよい。例えば、本開示は、SAE J1939規格を応用した規格(例えばISO(International Organization for Standardization)11783、NMEA(National Marine Electronics Association)2000、ISO11992又はFMS(Fleet Management System))等に適用できる。
[宣言メッセージ]
次に、各ECU100がネットワーク300においてSAの使用を希望する方法について説明する。
各ECU100は、情報処理システム1において他のECU100に自身を認識させるためのSAを、他のECU100と競合しないように使用するために、宣言メッセージをネットワーク300に送信する。ここで、SAE J1939規格における、宣言メッセージ(ACLメッセージ)の送信によるSAの使用を希望する際のルールについて図3を用いて説明する。
図3は、宣言メッセージの送信によるSAの使用を希望する際のルールを説明するためのシーケンス図である。
まず、ECU100は、起動する(ステップS11)。複数のECU100のそれぞれは、起動後に、自身の希望する8ビットのSAを取得するための動作を行う。
ECU100は、起動後の初期化が完了すると(ステップS12)、自身の希望するSA(例えばここではSAとしてXを希望したとする)及び自身のDN(例えばN)を含めた宣言メッセージをネットワーク300へ送信する(ステップS13)。つまり、ECU100は、このような宣言メッセージをネットワーク300を介して他のECU100へブロードキャストすることにより、他のECU100に対して自身がSAとしてXを使用しようとしていることを宣言する。
SAE J1939規格では、複数のECU100のそれぞれは、宣言メッセージに対して異議がなければ、DNとしてNが割り当てられたECU100がSAとしてXを使用することを記憶する。一方で、宣言メッセージに対して異議がある場合、例えば、SAが競合している場合、宣言メッセージを受信してから規定時間(SAE J1939規格では250ms)以内に当該宣言メッセージに対する応答を返信するというルールがある。このため、ECU100は、宣言メッセージを送信してから規定時間、送信した宣言メッセージに対する他のECU100からの応答(異議)がなかった場合、SAとしてXを自身が使用することを他のECU100が認めたとして、自身が使用を希望するSAを用いて、当該SAを含む通常のメッセージのネットワーク300への送信(周期的な送信)を開始する(ステップS14)。通常のメッセージには、SAとしてXが含まれているため、他のECU100は、このメッセージに含まれるSAがXであるということを確認することで、当該メッセージの送信元がDNとしてNが割り当てられたECU100であると特定できる。
次に、SAが競合したときのルールについて図4を用いて説明する。
図4は、SAが競合したときのルールを説明するためのシーケンス図である。図4には、SAが競合した場合に、SAが競合したECU100が競合を解消してSAを取得するときの一例が示される。図4では、SAが競合したECU100として、ECU100a及び100bを例にあげて説明する。また、図4では、ECU100aとECU100bとで直接通信が行われているように示されているが、実際にはネットワーク300を介して通信が行われる。以下において、あるECU100と他のECU100とでメッセージ等を送受信するというような表現をする場合があるが、あるECU100がネットワーク300へメッセージ等を送信し、他のECU100がネットワーク300から当該メッセージ等を受信し、また、他のECU100がネットワーク300へメッセージ等を送信し、あるECU100がネットワーク300からメッセージ等を受信して、結果的にあるECU100と他のECU100とでメッセージ等を送受信することになるため、このように表現している。
図4に示されるように、ECU100aは、起動し(ステップS21)、起動後の初期化が完了すると(ステップS22)、ネットワーク300において自身が使用を希望するSA(例えばここではX)及び自身のDNであるNaを含めた宣言メッセージをECU100bへ送信する(ステップS23)。
ECU100bは、例えば、ECU100aの起動後に起動し(ステップS31)、初期化が完了する前にECU100aから宣言メッセージが送信されているため、ECU100aからの宣言メッセージを受信できない。ECU100aは、送信した宣言メッセージに対する応答を、ECU100bを含む他のECU100から受けないため、SAとしてXを使用して、SAとしてXを含む通常のメッセージの送信を開始する。
ECU100bは、起動後の初期化が完了すると(ステップS32)、ECU100aがSAとしてXの使用を希望したことに気付いていないため、ネットワーク300において自身が使用を希望するSA(例えばここではECU100aが使用を希望し、使用を開始しているSAと同じX)及び自身のDNであるNbを含めた宣言メッセージをECU100aへ送信する(ステップS33)。
SAE J1939では、SAが競合した場合、DNが示す値(具体的には64ビットの整数値)が小さいECU100が優先的にSAを取得するというルールがある。このため、DNが示す値の大きいECU100は、競合したSAの取得を断念して、別のSAを含む宣言メッセージを再度送信すると決められている。
ECU100aは、SAとしてXを取得しており、ECU100bは、SAとしてXの使用を希望して宣言メッセージを送信したため、SAの競合が生じる。ECU100aのDNであるNaの方が、ECU100bのDNであるNbよりも小さいとする。この場合、ECU100aがECU100bよりも優先的にSAを取得するECUとなるため、ECU100bが送信した宣言メッセージに対する異議として、ECU100aは、再度SAとしてX及び自身のDNであるNaを含む宣言メッセージをECU100bへ送信する(ステップS24)。
ECU100bは、自身のDNであるNbよりも小さいDNであるNaが割り当てられたECU100aがSAとしてXを優先的に使用することを認識し、別のSAとしてY(例えばXに隣接するアドレスであり、Y=X+1)を含む宣言メッセージを送信する(ステップS34)。ECU100bは、宣言メッセージを送信した後規定時間(250ms)経過しても、他のECU100から、自身が送信した宣言メッセージに対する応答がなければ、SAとしてYを使用する。
[宣言メッセージの悪用]
次に、SAE J1939規格の宣言メッセージが悪用され得ることについて図5を用いて説明する。
図5は、SAE J1939規格の宣言メッセージが悪用され得ることを説明するためのフローチャートである。図5では、他のECU100から宣言メッセージを受信したときに、すでに希望するSAを使用して通常のメッセージの送信を開始しているECU100の動作を示すフローチャートである。
ECU100は、他のECU100から宣言メッセージを受信する(ステップS101)。例えば、ECU100は、他のECU100から自身が使用しているSAと同じSAを含む宣言メッセージを受信する。
ECU100は、自身のDN(自DN)が示す値と受信した宣言メッセージに含まれるDN(相手DN)が示す値とを比較し、自DNが示す値が、相手DNが示す値以上であるか否かを判定する(ステップS102)。
自DNが示す値が、相手DNが示す値よりも小さい場合には(ステップS102でNo)、ECU100は、自身の方が相手よりも優先度が高いため、通常のメッセージの送信を停止せずに、他のECU100へ自身が取得したSA及び自身のDNを含む宣言メッセージを送信する(ステップS104)。これにより、他のECU100は、そのSAを取得できないことを認識する。
一方で、自DNが示す値が、相手DNが示す値以上である場合(ステップS102でYes)、ECU100は、相手の方が自身よりも優先度が高いため、通常のメッセージの送信を停止して、SAの変更を試みる(ステップS103)。例えば、ECU100は、使用していたSAと隣接するアドレスのSAとを含む宣言メッセージをネットワーク300に送信する。
ここで、SAE J1939規格では、ステップS102に示すように、受信した宣言メッセージに含まれる相手DNが示す値が自DNが示す値と同じか小さい場合に、相手の方が自身よりも優先度が高いと判断するように規定されている。このため、ECU100は、自身のSAと同じSAを含む不正な宣言メッセージを受信した場合、通常のメッセージの送信を中止させられ、さらに、使用していたSAが変更させられる場合がある。ここで、正常時及び攻撃時(ネットワーク300に不正が存在するとき)のネットワーク300の状況について図6を用いて説明する。
図6は、正常時及び攻撃時のネットワーク300の状況を説明するための図である。図6には、特定のSA(例えば、SA=X及びSA=Y)を含むメッセージ(通常のメッセージ又は宣言メッセージ)の出現タイミングが示される。なお、図6及び後述する図9から図12では、宣言メッセージを「ACL」と記載し、通常のメッセージを周期がTの周期信号と記載している。宣言メッセージは、SAE J1939規格ではACLメッセージに対応し、また、通常のメッセージは、例えば、ECU100a~100c等からネットワーク300に周期的に送信されるセンシングデータ等の周期信号であるためである。また、図6及び後述する図9から図12では、正規のECU100による宣言メッセージを白塗りの三角で示し、正規のECU100による通常のメッセージを白塗りの四角で示し、不正なECUによる宣言メッセージを黒塗りの三角で示し、不正なECUによる通常のメッセージを黒塗りの四角で示している。
図6における「正常時のネットワーク状況」に示されるように、例えば、まず正規のECU100が起動し、初期化後、使用を希望するSAとしてXを含む宣言メッセージをネットワーク300に送信する。正規のECU100は、宣言メッセージを送信してから規定時間(250ms)、送信した宣言メッセージに対する他のECU100からの応答がなかった場合(図中の「ACL成功」)、以降SAとしてXを使用する。そして、正規のECU100は、SAとしてXを含む通常のメッセージを周期的に送信する。これにより、他のECU100は、当該通常のメッセージを周期的に受信して、当該通常のメッセージに含まれるデータに応じた処理を行うことができる。例えば、油圧ポンプ110dを制御するECU100dは、ブーム110a、アーム110b及びバケット110cの姿勢角及び角速度等のセンシングデータをECU100a~100cから周期的に受信することで、ブーム110a、アーム110b及びバケット110cの自動制御が可能となる。
一方で、図6における「攻撃時のネットワーク状況」に示されるように、正規のECU100が正常時と同じように、使用を希望するSAとしてXを使用して通常のメッセージを送信しているときに、不正なECUによりSAとしてXを含み、かつ、正規のECU100のDNと同じか小さいDNを含む宣言メッセージがネットワーク300に送信されたとする。この場合、正規のECU100は、不正なECUの方が自身よりも優先度が高いため、通常のメッセージの送信を停止して、これまで使用していたSAとしてXの使用を停止し、使用を希望するSAをYとして再度宣言メッセージをネットワーク300に送信する。なお、図6に示されるように、不正なECUのメッセージと正規のECU100のメッセージとは異なるタイミングでネットワーク300に送信される。CANでは、1つのネットワーク300に同時に1つのデータしか存在できないためである。
正規のECU100は、宣言メッセージを送信してから規定時間(250ms)、送信した宣言メッセージに対する他のECU100からの応答がなかった場合、以降SAとしてYを使用する。このようにして、正規のECU100は、使用していたSAが変更させられる。
例えば、通常のメッセージとして、特定のSAと姿勢角及び角速度等のセンサ値とを含むデータを人が見ても、そのSAを使用しているECU100がどのECUかわからない。このため、人がブーム110aを動かしたときにセンサ値が大きく変化しているデータに含まれるSAを確認することで、人は当該SAがブーム110aの姿勢角及び角速度等を検出するECU100aに使用されていることを認識できる。同じように、人がアーム110bを動かしたときにセンサ値が大きく変化しているデータに含まれるSAを確認することで、人は当該SAがアーム110bの姿勢角及び角速度等を検出するECU100bに使用されていることを認識できる。同じように、人がバケット110cを動かしたときにセンサ値が大きく変化しているデータに含まれるSAを確認することで、人は当該SAがバケット110cの姿勢角及び角速度等を検出するECU100cに使用されていることを認識できる。
このように、建機における油圧ショベルでは、例えば、ブーム110a、アーム110b及びバケット110cの姿勢角及び角速度等を検出するECU100a~100cとそれぞれが使用しているSAとの対応関係が管理される。このため、ネットワーク300における不正によってECU100が使用していたSAが変更させられた場合、当該対応関係と実際の対応関係とがずれてしまい問題が発生するおそれがある。
また、不正なECUは、正規のECU100になりすまして、これまで正規のECU100が送信していた通常のメッセージの周期がずれないように、正規のECU100に引き続いて、SAとしてXを含む通常のメッセージをネットワーク300に周期的に送信する。例えば、油圧ポンプ110dを制御するECU100dは、正規のECU100a~100c等から受信する通常のメッセージ(周期信号)の周期がずれていないかを判定しており、受信する通常のメッセージの周期のずれからネットワーク300における不正を検知できる。このため、不正なECUは周期のずれから不正が検知されないように正規のECU100a~100c等に巧妙になりすまして、これまで正規のECU100a~100c等が送信していた通常のメッセージの周期性がずれないように引き続き通常のメッセージを送信すると考えられる。したがって、ECU100dは、受信する通常のメッセージが正規のECU100a~100c等からのメッセージであると認識してしまい、不正なECUからの通常のメッセージに基づいて油圧ポンプ110dを制御する。その結果、例えば、実際にはバケット110cが地面に衝突しようとしているのに、不正なECUからは、ブーム110a、アーム110b及びバケット110c等の姿勢角及び角速度等が地面に衝突しないようなセンサ値を含む通常のメッセージが送信され、建機を破損させられてしまうおそれがある。
そこで、本開示では、複数のECU100が接続されたネットワーク300に、ネットワーク300における不正を検知するための情報処理装置10が接続されている。以下では、情報処理装置10の構成及び動作について説明する。
[情報処理装置の構成及び動作]
図7は、実施の形態における情報処理装置10の一例を示すブロック図である。
図8は、実施の形態における情報処理装置10の動作の一例を示すブロック図である。
情報処理装置10は、不正検知部11、出力部12、無効化部13及び送受信インタフェース14を備える。
送受信インタフェース14は、ネットワーク300に流れるメッセージを受信し、また、ネットワーク300に対してメッセージを送信する。送受信インタフェース14は、例えば、情報処理装置10に備えられた通信回路及び入出力インタフェース等により実現される。
不正検知部11は、情報処理装置10の特徴的な構成であり、ネットワーク300における不正を検知するための機能構成要素である。不正検知部11は、ネットワーク300から受信した宣言メッセージに含まれるSAと、当該宣言メッセージを受信した時刻を基準とする時間と、当該宣言メッセージの前後にネットワーク300から受信したメッセージとに基づいて、ネットワーク300における不正を検知する(ステップS111)。
不正検知部11による不正の検知方法について、本開示では、第一例から第四例をあげて説明する。
第一例から第三例では、不正検知部11は、ネットワーク300から受信した宣言メッセージに含まれるSAと、当該宣言メッセージを受信した時刻を基準とする所定の期間にネットワーク300から受信したメッセージとに基づいて、ネットワーク300における不正を検知する。例えば、第一例及び第二例では、不正検知部11は、ネットワーク300から受信した宣言メッセージに含まれるSAと、当該宣言メッセージを受信した時刻を基準とする所定の期間にネットワーク300から受信した通常のメッセージとに基づいて、ネットワーク300における不正を検知する。また、例えば、第三例では、不正検知部11は、ネットワーク300から受信した宣言メッセージに含まれるSAと、当該宣言メッセージを受信した時刻を基準とする所定の期間にネットワーク300から受信した宣言メッセージとに基づいて、ネットワーク300における不正を検知する。つまり、第一例及び第二例では、所定の期間にネットワーク300から受信した通常のメッセージに基づいてネットワーク300における不正の検知が行われ、第三例では、所定の期間にネットワーク300から受信した宣言メッセージに基づいてネットワーク300における不正の検知が行われる。
また、第四例では、不正検知部11は、ネットワーク300から受信した宣言メッセージに含まれるSAと、当該宣言メッセージを受信した時刻から所定の時間経過後にネットワーク300から受信した複数の通常のメッセージとに基づいて、ネットワーク300における不正を検知する。
不正検知部11(情報処理装置10)による不正の検知方法の第一例から第四例の詳細については、後述する図9から図12を用いて説明する。
出力部12は、不正検知部11による検知の結果を出力する(ステップS112)。例えば、出力部12は、当該検知の結果を無効化部13に出力する。また、出力部12は、当該検知の結果を、送受信インタフェース14を介して情報処理装置10が搭載された車両等のユーザ、又は、当該車両を管理する中央管理センタ等に向けて出力してもよい。
無効化部13は、後述する第一例及び第二例の場合に、不正検知部11による検知の結果が、宣言メッセージが不正なメッセージであることを示す場合、当該宣言メッセージを無効化する信号をネットワーク300に送信する。当該宣言メッセージを無効化する信号は、例えば、エラーフレームであり、ネットワーク300における正規のECU100が当該宣言メッセージ(不正なメッセージ)を受信し切る前に当該宣言メッセージを強制的にエラーにすることができる。すなわち、正規のECU100が当該宣言メッセージによってこれまで使用していたSAが変更させられてしまうことを抑制できる。
例えば、情報処理装置10が備えるプロセッサが、情報処理装置10が備えるメモリに記憶されたプログラムに従って動作することにより、不正検知部11、出力部12及び無効化部13の機能が実現される。
[不正の検知方法の第一例]
図9は、実施の形態における情報処理装置10の不正の検知方法の第一例を説明するための図である。図9には、特定のSA(例えば、SA=X)を含むメッセージ(通常のメッセージ又は宣言メッセージ)の出現タイミングが示される。
図9における「正常時のネットワーク状況」に示されるように、例えば、まず正規のECU100が起動し、初期化後、使用を希望するSAとしてXを含む宣言メッセージをネットワーク300に送信する。正規のECU100は、宣言メッセージを送信してから規定時間(250ms)、送信した宣言メッセージに対する他のECU100からの応答がなかった場合(図中の「ACL成功」)、以降SAとしてXを使用する。そして、正規のECU100は、SAとしてXを含む通常のメッセージを周期的に送信する。その後、正規のECU100は、他のECU100から宣言メッセージを送信するように指示された場合(具体的には、他のECU100からリクエストフォーアドレスクレームメッセージを受信した場合)を除いては、再起動時にのみ宣言メッセージを送信する。このとき、正規のECU100は、再起動時には、まず初期化動作等をしており、SAとしてXを含む宣言メッセージを送信するまでの所定の期間として第1期間はSAとしてXを含む通常のメッセージを送信することはない。このため、情報処理装置10は、正常時に、SAとしてXを含む宣言メッセージをネットワーク300から受信したときには、当該宣言メッセージを受信する前の第1期間に、SAとしてXを含む通常のメッセージを受信することはない。言い換えると、情報処理装置10は、正常時に、SAとしてXを含む通常のメッセージを受信した後の第1期間に、SAとしてXを含む宣言メッセージを受信することはない。
一方で、図9における「攻撃時のネットワーク状況」に示されるように、正規のECU100が正常時と同じように、使用を希望するSAとしてXを使用して通常のメッセージを送信しているときに、不正なECUによりSAとしてXを含む宣言メッセージがネットワーク300に送信されたとする。情報処理装置10は、正常時には、当該宣言メッセージを受信した時刻を期間の終わりとする第1期間においてSAとしてXを含む通常のメッセージを受信しないのに対して、このような攻撃時には、第1期間においてSAとしてXを含む通常のメッセージを受信している。このため、当該時刻に受信した宣言メッセージは、正規のECU100から送信されたものではなく、不正なECUから送信されたものと判断できる。
したがって、情報処理装置10は、所定の期間として、宣言メッセージを受信した時刻を期間の終わりとする第1期間にネットワーク300から受信した通常のメッセージに含まれるSAが、当該時刻に受信した宣言メッセージに含まれるSAと同じである場合、当該時刻に受信した宣言メッセージが不正なメッセージであることを検知できる。
なお、第1期間にネットワーク300から受信した通常のメッセージに含まれるSAが、当該時刻に受信した宣言メッセージに含まれるSAと同じであるか否かを判定する方法は特に限定されないが、例えば、以下の2つの方法がある。
例えば、情報処理装置10は、ネットワーク300から通常のメッセージを受信したときに第1期間のタイマを起動する。なお、通常のメッセージは周期的に送信されるため、情報処理装置10は、ネットワーク300から通常のメッセージを受信するごとに第1期間のタイマを起動し直す。そして、情報処理装置10は、通常のメッセージに含まれるSAと同じSAを含む宣言メッセージを受信したときに、上記タイマ(つまり、当該SAを含む通常のメッセージを最後に受信したときに起動したタイマ)を確認し、第1期間を満了しているかを判定する。情報処理装置10は、当該タイマが第1期間を満了している場合には、当該宣言メッセージを正常なメッセージと判定し、当該タイマが第1期間を満了していない場合には、当該宣言メッセージを不正なメッセージと判定する。
また、例えば、情報処理装置10は、ネットワーク300から通常のメッセージを受信したときの時刻を記録する。なお、通常のメッセージは周期的に送信されるため、情報処理装置10は、ネットワーク300から通常のメッセージを受信するごとに最新の通常のメッセージを受信した時刻を記録し直す。そして、情報処理装置10は、通常のメッセージに含まれるSAと同じSAを含む宣言メッセージを受信したときに、当該宣言メッセージを受信した時刻と、当該SAを含む最新の通常のメッセージを受信した時刻との差が第1期間よりも大きいかを判定する。情報処理装置10は、当該差が第1期間よりも大きい場合には、当該宣言メッセージを正常なメッセージと判定し、当該差が第1期間以下である場合には、当該宣言メッセージを不正なメッセージと判定する。
なお、第1期間は、例えば、ECU100が初期化にかかる期間に基づいて規定してもよい。また、第1期間は、通常のメッセージの周期に基づいて規定してもよく、例えば、通常のメッセージの周期をTとしたときに2Tとしてもよい。
[不正の検知方法の第二例]
図10は、実施の形態における情報処理装置10の不正の検知方法の第二例を説明するための図である。図10には、特定のSA(例えば、SA=X)を含むメッセージ(通常のメッセージ又は宣言メッセージ)の出現タイミングが示される。
図10における「正常時のネットワーク状況」に示されるように、例えば、まず正規のECU100が起動し、初期化後、使用を希望するSAとしてXを含む宣言メッセージをネットワーク300に送信する。正規のECU100は、宣言メッセージを送信してから規定時間(250ms)、送信した宣言メッセージに対する他のECU100からの応答がなかった場合(図中の「ACL成功」)、以降SAとしてXを使用する。そして、正規のECU100は、SAとしてXを含む通常のメッセージを周期的に送信する。その後、正規のECU100は、例えば再起動したとする。この場合も、正規のECU100は、初期化後、使用を希望するSAとしてXを含む宣言メッセージをネットワーク300に送信する。正規のECU100は、宣言メッセージを送信してから規定時間(250ms)、送信した宣言メッセージに対する他のECU100からの応答がなかった場合(図中の「ACL成功」)、再度SAとしてXを使用する。そして、正規のECU100は、SAとしてXを含む通常のメッセージを再度周期的に送信する。このとき、正規のECU100は、SAとしてXを含む宣言メッセージを送信してから規定時間(例えば250ms)、送信した宣言メッセージに対する他のECU100からの応答がないかを待ってから、SAとしてXを含む通常のメッセージを送信し始める。すなわち、正規のECU100は、SAとしてXを含む宣言メッセージを送信した後所定の期間として第2期間は、SAとしてXを含む通常のメッセージを送信することはない。このため、情報処理装置10は、正常時に、SAとしてXを含む宣言メッセージをネットワーク300から受信したときには、当該宣言メッセージを受信した後の第2期間に、SAとしてXを含む通常のメッセージを受信することはない。
一方で、図10における「攻撃時のネットワーク状況」に示されるように、正規のECU100が正常時と同じように、使用を希望するSAとしてXを使用して通常のメッセージを送信しているときに、不正なECUによりSAとしてXを含む宣言メッセージがネットワーク300に送信されたとする。情報処理装置10は、正常時には、当該宣言メッセージを受信した時刻を期間の始まりとする第2期間においてSAとしてXを含む通常のメッセージを受信しないのに対して、このような攻撃時には、第2期間においてSAとしてXを含む通常のメッセージを受信している。このため、当該時刻に受信した宣言メッセージは、正規のECU100から送信されたものではなく、不正なECUから送信されたものと判断できる。
したがって、情報処理装置10は、所定の期間として、宣言メッセージを受信した時刻を期間の始まりとする第2期間にネットワーク300から受信した通常のメッセージに含まれるSAが、当該時刻に受信した宣言メッセージに含まれるSAと同じである場合、当該時刻に受信した宣言メッセージが不正なメッセージであることを検知できる。
なお、第2期間にネットワーク300から受信した通常のメッセージに含まれるSAが、上記時刻に受信した宣言メッセージに含まれるSAと同じであるか否かを判定する方法は特に限定されないが、例えば、以下の2つの方法がある。
例えば、情報処理装置10は、ネットワーク300から宣言メッセージを受信したときに第2期間のタイマを起動する。そして、情報処理装置10は、当該宣言メッセージに含まれるSAと同じSAを含む通常のメッセージを受信したときに、上記タイマを確認し、第2期間を満了しているかを判定する。情報処理装置10は、当該タイマが第2期間を満了している場合には、当該宣言メッセージを正常なメッセージと判定し、当該タイマが第2期間を満了していない場合には、当該宣言メッセージを不正なメッセージと判定する。
また、例えば、情報処理装置10は、ネットワーク300から宣言メッセージを受信したときの時刻を記録する。そして、情報処理装置10は、当該宣言メッセージに含まれるSAと同じSAを含む通常のメッセージを受信したときに、当該宣言メッセージを受信した時刻と、当該SAを含む通常のメッセージを受信した時刻との差が第2期間よりも大きいかを判定する。情報処理装置10は、当該差が第2期間よりも大きい場合には、当該宣言メッセージを正常なメッセージと判定し、当該差が第2期間以下である場合には、当該宣言メッセージを不正なメッセージと判定する。
なお、第2期間は、例えば、規定時間(例えば250ms)に基づいて規定してもよい。
[不正の検知方法の第三例]
図11は、実施の形態における情報処理装置10の不正の検知方法の第三例を説明するための図である。図11には、特定のSA(例えば、SA=X及びSA=Y)を含むメッセージ(通常のメッセージ又は宣言メッセージ)の出現タイミングが示される。
図11における「攻撃時のネットワーク状況」に示されるように、例えば、まず正規のECU100が起動し、初期化後、使用を希望するSAとしてXを含む宣言メッセージをネットワーク300に送信する。正規のECU100は、宣言メッセージを送信してから規定時間(250ms)、送信した宣言メッセージに対する他のECU100からの応答がなかった場合(図中の「ACL成功」)、以降SAとしてXを使用する。そして、正規のECU100は、SAとしてXを含む通常のメッセージを周期的に送信しているときに、不正なECUによりSAとしてXを含み、かつ、正規のECU100と同じDNを含む宣言メッセージがネットワーク300に送信されたとする。このように、ネットワーク300に不正が存在する場合、正規のECU100は、不正なECUが自身よりも優先度が高いため、通常のメッセージの送信を停止して、不正なECUが宣言メッセージを送信してから第3期間に、SAの変更を試みる。例えば、正規のECU100は、使用していたSAと隣接するアドレスのSAとしてYを含む宣言メッセージを第3期間にネットワーク300に送信する。
また、図示していないが、正規のECU100が例えば再起動して、使用を希望するSAとしてXを含む宣言メッセージをネットワーク300に送信したときに、この当該宣言メッセージを妨害するように不正なECUによりSAとしてYを含み、かつ、正規のECU100と同じDNを含む宣言メッセージが、正規のECU100が宣言メッセージを送信してから第3期間に、ネットワーク300に送信される場合がある。この場合、SAが競合しないため、それぞれ同じDNの2つのECU(一方が不正なECU)が互いに異なるSAを使用して通常のメッセージをネットワーク300に送信することになり、ネットワーク300では不具合が発生するおそれがある。
一方で、正常時には、ネットワーク300には、SAとしてX及び特定のDNを含む宣言メッセージが流れた後、第3期間に、SAとしてXと異なるY及び当該特定のDNを含む宣言メッセージが流れることはない。このため、情報処理装置10は、正常時に、SAとしてX及び特定のDNを含む宣言メッセージをネットワーク300から受信したときには、当該宣言メッセージを受信した後の第3期間に、SAとしてXとは異なるY及び当該DNを含む宣言メッセージを受信することはない。
したがって、情報処理装置10は、所定の期間として、宣言メッセージ(第1宣言メッセージと呼ぶ)を受信した時刻を期間の始まりとする第3期間にネットワーク300から受信した宣言メッセージ(第2宣言メッセージと呼ぶ)に含まれるDNが第1宣言メッセージに含まれるDNと同じであり、かつ、第2宣言メッセージに含まれるSAが第1宣言メッセージに含まれるSAと異なる場合、第1宣言メッセージ又は第2宣言メッセージが不正なメッセージであることを検知できる。
なお、第3期間にネットワーク300から受信した第2宣言メッセージに含まれるDNが、第1宣言メッセージに含まれるDNと同じであり、かつ、第2宣言メッセージに含まれるSAが第1宣言メッセージに含まれるSAと異なるか否かを判定する方法は特に限定されないが、例えば、以下の2つの方法がある。
例えば、情報処理装置10は、ネットワーク300から第1宣言メッセージを受信したときに第3期間のタイマを起動する。そして、情報処理装置10は、第1宣言メッセージに含まれるDNと同じDNを含み、第1宣言メッセージに含まれるSAと異なるSAを含む第2宣言メッセージを受信したときに、上記タイマを確認し、第3期間を満了しているかを判定する。情報処理装置10は、当該タイマが第3期間を満了している場合には、第1宣言メッセージ及び第2宣言メッセージを正常なメッセージと判定し、当該タイマが第3期間を満了していない場合には、第1宣言メッセージ又は第2宣言メッセージを不正なメッセージと判定する。
また、例えば、情報処理装置10は、ネットワーク300から第1宣言メッセージを受信したときの時刻を記録する。そして、情報処理装置10は、第1宣言メッセージに含まれるDNと同じDNを含み、第1宣言メッセージに含まれるSAと異なるSAを含む第2宣言メッセージを受信したときに、第1宣言メッセージを受信した時刻と、第2宣言メッセージを受信した時刻との差が第3期間よりも大きいかを判定する。情報処理装置10は、当該差が第3期間よりも大きい場合には、第1宣言メッセージ及び第2宣言メッセージを正常なメッセージと判定し、当該差が第3期間以下である場合には、第1宣言メッセージ又は第2宣言メッセージを不正なメッセージと判定する。
なお、第3期間は、例えば、正規のECU100が競合するSAを含む宣言メッセージを受信したときに、別のSAを選択して宣言メッセージを送信するまでにかかる時間に基づいて規定してもよい。
[不正の検知方法の第四例]
図12は、実施の形態における情報処理装置10の不正の検知方法の第四例を説明するための図である。図12には、特定のSA(例えば、SA=X及びSA=Y)を含むメッセージ(通常のメッセージ又は宣言メッセージ)の出現タイミングが示される。
図12における「攻撃時のネットワーク状況」に示されるように、例えば、まず正規のECU100が起動し、初期化後、使用を希望するSAとしてXを含む宣言メッセージをネットワーク300に送信する。正規のECU100は、宣言メッセージを送信してから規定時間(250ms)、送信した宣言メッセージに対する他のECU100からの応答がなかった場合(図中の「ACL成功」)、以降SAとしてXを使用する。そして、正規のECU100は、SAとしてXを含む通常のメッセージを周期的に送信しているときに、不正なECUによりSAとしてXを含み、正規のECU100のDNと同じか小さいDNを含む宣言メッセージがネットワーク300に送信されたとする。このように、ネットワーク300に不正が存在する場合、正規のECU100は、不正なECUが自身よりも優先度が高いため、通常のメッセージの送信を停止して、SAの変更を試み、SAとしてYを使用する。そして、正規のECU100は、不正なECUが宣言メッセージを送信してから所定の時間経過後にSAとしてYを含む通常のメッセージの送信を開始する。一方で、不正なECUは、SAとしてXを含む宣言メッセージを送信した後、SAとしてXを含む通常のメッセージの送信を開始する。
つまり、ネットワーク300には、不正なECUによる通常のメッセージであって、正規のECU100が元々使用していたSAとしてXを含む通常のメッセージと、正規のECU100による変更後のSAとしてYを含む通常のメッセージとが流れることになる。なお、正規のECU100は、使用しているSAが変更された場合であっても、通常のメッセージに含まれる識別子(PGN)は変更前と同じとなっている。不正なECUによる通常のメッセージは、正規のECU100による通常のメッセージになりすますため、正規のECU100による通常のメッセージと同じ識別子(PGN)を含むことになる。
したがって、情報処理装置10は、宣言メッセージを受信してから所定の時間経過後に受信した複数の通常のメッセージのうち、一の通常のメッセージに当該宣言メッセージに含まれるSAが含まれ、他の一の通常のメッセージに当該宣言メッセージに含まれるSAと異なるSAが含まれており、かつ、一の通常のメッセージ及び他の一の通常のメッセージに互いに同じ識別子が含まれている場合、ネットワーク300に不正が存在することを検知できる。
なお、所定の時間は、例えば、規定時間(例えば250ms)に基づいて規定してもよい。
また、第四例において、正規のECU100のDNと不正なECUのDNが同じ場合、第三例と同じネットワーク状況になる。つまり、第四例は、第三例に適用することもできる。
[効果等]
情報処理装置10は、複数のECU100が接続されたネットワーク300における不正を検知するための装置である。複数のECU100のそれぞれは、ネットワーク300において使用を希望するSAを主張する宣言メッセージをネットワーク300に送信した後、当該SAを含む通常のメッセージのネットワーク300への送信を開始する装置である。情報処理装置10は、ネットワーク300から受信した宣言メッセージに含まれるSAと、当該宣言メッセージを受信した時刻を基準とする時間と、当該宣言メッセージの前後にネットワーク300から受信したメッセージとに基づいて、ネットワーク300における不正を検知する不正検知部11と、当該検知の結果を出力する出力部12と、を備える。
特定のSAを含む宣言メッセージがネットワーク300に流れたとき、当該宣言メッセージがネットワーク300に流れた前後に、ネットワーク300に流れたメッセージ(例えば、通常のメッセージ又は他の宣言メッセージ)には、正常時には、当該特定のSAと、当該宣言メッセージを受信した時刻を基準とする時間とに基づいた規則性が存在する。したがって、情報処理装置10は、当該宣言メッセージをネットワーク300から受信した前後に、その規則性から逸脱したメッセージをネットワーク300から受信した場合、ネットワーク300に不正があることを検知できる。すなわち、不正の検知のために、認証及び鍵共有のための通信が行われないため、当該通信による遅延が発生せず、また、通常のメッセージ内にMACを格納するためのフィールドが不要であり、通常のメッセージを送信するのに要する時間が増加しないことから、通信品質の劣化を抑制しつつ、ネットワーク300における不正を検知できる。
また、不正検知部11は、ネットワーク300から受信した宣言メッセージに含まれるSAと、当該宣言メッセージを受信した時刻を基準とする所定の期間にネットワーク300から受信したメッセージとに基づいて、ネットワーク300における不正を検知するとしてもよい。
特定のSAを含む宣言メッセージがネットワーク300に流れたとき、当該宣言メッセージがネットワーク300に流れた時刻を基準とする所定の期間にネットワーク300に流れたメッセージには、正常時には、当該特定のSAに基づいた規則性が存在する。したがって、情報処理装置10は、当該宣言メッセージをネットワーク300から受信した時刻を基準とする所定の期間に、その規則性から逸脱したメッセージをネットワーク300から受信した場合、ネットワーク300に不正があることを検知できる。
また、不正検知部11は、ネットワーク300から受信した宣言メッセージに含まれるSAと、当該宣言メッセージを受信した時刻を基準とする所定の期間にネットワーク300から受信した通常のメッセージとに基づいて、ネットワーク300における不正を検知するとしてもよい。
特定のSAを含む宣言メッセージがネットワーク300に流れたとき、当該宣言メッセージがネットワーク300に流れた時刻を基準とする所定の期間にネットワーク300に流れた通常のメッセージには、正常時には、当該特定のSAに基づいた規則性が存在する。したがって、情報処理装置10は、当該宣言メッセージをネットワーク300から受信した時刻を基準とする所定の期間に、その規則性から逸脱した通常のメッセージをネットワーク300から受信した場合、ネットワーク300に不正があることを検知できる。
また、不正検知部11は、所定の期間として、宣言メッセージを受信した時刻を期間の終わりとする第1期間にネットワーク300から受信した通常のメッセージに含まれるSAが、当該時刻に受信した宣言メッセージに含まれるSAと同じである場合、当該時刻に受信した宣言メッセージが不正なメッセージであることを検知するとしてもよい。
正常時には、複数のECU100のそれぞれは、他のECU100から宣言メッセージを送信するように指示された場合を除いて、起動時又は再起動時にのみ宣言メッセージを送信する。すなわち、複数のECU100のそれぞれは、起動時又は再起動時には、初期化動作等をしており、特定のSAを含む宣言メッセージを送信するまでの第1期間は当該特定のSAを含む通常のメッセージを送信することはない。このため、情報処理装置10は、正常時に、特定のSAを含む宣言メッセージをネットワーク300から受信したときには、当該宣言メッセージを受信する前の第1期間に、当該特定のSAを含む通常のメッセージを受信することはない。言い換えると、情報処理装置10は、正常時に、特定のSAを含む通常のメッセージを受信した後の第1期間に、当該特定のSAを含む宣言メッセージを受信することはない。したがって、情報処理装置10は、所定の期間として、宣言メッセージを受信した時刻を期間の終わりとする第1期間にネットワーク300から受信した通常のメッセージに含まれるSAが、当該時刻に受信した宣言メッセージに含まれるSAと同じである場合、当該時刻に受信した宣言メッセージが不正なメッセージであることを検知できる。
また、情報処理装置10は、さらに、不正検知部11の検知の結果が、上記時刻に受信した宣言メッセージが不正なメッセージであることを示す場合、当該宣言メッセージを無効化する信号をネットワーク300に送信する無効化部13を備えるとしてもよい。
複数のECU100のそれぞれは、他のECU100から受信した宣言メッセージの内容によっては、自身が使用しているSAを変更するように動作する。すなわち、複数のECU100のそれぞれは、不正な宣言メッセージによって、使用しているSAが変更されるおそれがある。これに対して、情報処理装置10は、ネットワーク300に流れた不正な宣言メッセージを検知してすぐに(例えば、ECU100がネットワーク300から不正な宣言メッセージを受信し切る前に)、不正な宣言メッセージを無効化することで、ECU100が使用しているSAが変更されることを抑制できる。
また、不正検知部11は、所定の期間として、宣言メッセージを受信した時刻を期間の始まりとする第2期間にネットワーク300から受信した通常のメッセージに含まれるSAが、当該時刻に受信した宣言メッセージに含まれるSAと同じである場合、当該時刻に受信した宣言メッセージが不正なメッセージであることを検知するとしてもよい。
正常時には、複数のECU100のそれぞれは、特定のSAを含む宣言メッセージを送信した後、規定時間(例えば250ms)、送信した宣言メッセージに対する他のECU100からの応答がないかを待ってから、当該特定のSAを含む通常のメッセージを送信し始める。すなわち、複数のECU100のそれぞれは、特定のSAを含む宣言メッセージを送信した後第2期間は、当該特定のSAを含む通常のメッセージを送信することはない。このため、情報処理装置10は、正常時に、特定のSAを含む宣言メッセージをネットワーク300から受信したときには、当該宣言メッセージを受信した後の第2期間に、当該特定のSAを含む通常のメッセージを受信することはない。したがって、情報処理装置10は、所定の期間として、当該宣言メッセージを受信した時刻を期間の始まりとする第2期間にネットワーク300から受信した通常のメッセージに含まれるSAが、当該時刻に受信した宣言メッセージに含まれるSAと同じである場合、当該時刻に受信した宣言メッセージが不正なメッセージであることを検知できる。
また、不正検知部11は、ネットワーク300から受信した宣言メッセージに含まれるSAと、当該宣言メッセージを受信した時刻を基準とする所定の期間にネットワーク300から受信した宣言メッセージとに基づいて、ネットワーク300における不正を検知するとしてもよい。
特定のSAを含む宣言メッセージがネットワーク300に流れたとき、当該宣言メッセージがネットワーク300に流れた時刻を基準とする所定の期間にネットワーク300に流れた当該宣言メッセージとは異なる他の宣言メッセージには、正常時には、当該特定のSAに基づいた規則性が存在する。したがって、情報処理装置10は、当該宣言メッセージをネットワーク300から受信した時刻を基準とする所定の期間に、その規則性から逸脱した他の宣言メッセージをネットワーク300から受信した場合、ネットワーク300に不正があることを検知できる。
また、複数のECU100のそれぞれがネットワーク300に送信する宣言メッセージは、さらに、複数のECU100のそれぞれに予め割り振られたデバイス固有のDNを含む。不正検知部11は、所定の期間として、宣言メッセージを受信した時刻を期間の始まりとする第3期間にネットワーク300から受信した宣言メッセージに含まれるDNが当該時刻に受信した宣言メッセージに含まれるDNと同じであり、かつ、第3期間に受信した宣言メッセージに含まれるSAが当該時刻に受信した宣言メッセージに含まれるSAと異なる場合、当該時刻に受信した宣言メッセージ又は第3期間に受信した宣言メッセージが不正なメッセージであることを検知するとしてもよい。
正常時には、ネットワーク300には、特定のSA及び特定のDNを含む宣言メッセージが流れた後、第3期間に、当該特定のSAと異なるSA及び当該特定のDNを含む宣言メッセージが流れることはない。このため、情報処理装置10は、正常時に、特定のSA及び特定のDNを含む宣言メッセージをネットワーク300から受信したときには、当該宣言メッセージを受信した後の第3期間に、当該特定のSAとは異なるSA及び当該DNを含む宣言メッセージを受信することはない。したがって、情報処理装置10は、所定の期間として、宣言メッセージ(第1宣言メッセージと呼ぶ)を受信した時刻を期間の始まりとする第3期間にネットワーク300から受信した宣言メッセージ(第2宣言メッセージと呼ぶ)に含まれるDNが第1宣言メッセージに含まれるDNと同じであり、かつ、第2宣言メッセージに含まれるSAが第1宣言メッセージに含まれるSAと異なる場合、第1宣言メッセージ又は第2宣言メッセージが不正なメッセージであることを検知できる。
また、不正検知部11は、ネットワーク300から受信した宣言メッセージに含まれるSAと、当該宣言メッセージを受信した時刻から所定の時間経過後にネットワーク300から受信した複数の通常のメッセージとに基づいて、ネットワーク300における不正を検知するとしてもよい。
特定のSAを含む宣言メッセージがネットワーク300に流れたとき、当該宣言メッセージがネットワーク300に流れた時刻から所定の時間経過後にネットワーク300に流れた複数の通常のメッセージには、正常時には、当該特定のSAに基づいた規則性が存在する。したがって、情報処理装置10は、当該宣言メッセージをネットワーク300から受信した時刻から所定の時間経過後に、その規則性から逸脱した通常のメッセージをネットワーク300から受信した場合、ネットワーク300に不正があることを検知できる。
また、複数のECU100のそれぞれがネットワーク300に送信する通常のメッセージは、さらに、当該通常のメッセージのフォーマットを一意に決定する識別子を含む。不正検知部11は、所定の時間経過後に受信した複数の通常のメッセージのうち、一の通常のメッセージに上記時刻に受信した宣言メッセージに含まれるSAが含まれ、他の一の通常のメッセージに当該時刻に受信した宣言メッセージに含まれるSAと異なるSAが含まれており、かつ、一の通常のメッセージ及び他の一の通常のメッセージに互いに同じ識別子が含まれている場合、ネットワーク300に不正が存在することを検知するとしてもよい。
複数のECU100のそれぞれは、他のECU100から受信した宣言メッセージの内容によっては、自身が使用しているSAを変更するように動作する。すなわち、複数のECU100のそれぞれは、不正な宣言メッセージによって、使用しているSAが変更されるおそれがある。このため、ネットワーク300が攻撃された場合、ネットワーク300には、不正な通常のメッセージであって、正規のECU100が元々使用していたSAを含む通常のメッセージと、正規のECU100による変更後のSAを含む通常のメッセージとが流れることになる。なお、正規のECU100は、使用しているSAが変更された場合であっても、通常のメッセージに含まれる識別子は変更前と同じとなっている。不正なECUによる通常のメッセージは、正規のECU100による通常のメッセージになりすますため、正規のECU100による通常のメッセージと同じ識別子を含むことになる。したがって、情報処理装置10は、所定の時間経過後に受信した複数の通常のメッセージのうち、一の通常のメッセージに宣言メッセージに含まれるSAが含まれ、他の一の通常のメッセージに当該宣言メッセージに含まれるSAと異なるSAが含まれており、かつ、一の通常のメッセージ及び他の一の通常のメッセージに互いに同じ識別子が含まれている場合、ネットワーク300に不正が存在することを検知できる。
また、複数のECU100のそれぞれは、宣言メッセージを送信してから規定時間、送信した宣言メッセージに対する他のECU100からの応答がなかった場合に、ネットワーク300において使用を希望するSAを含む通常のメッセージのネットワーク300への送信を開始するとしてもよい。
このように、送信した宣言メッセージに対する他のECU100からの応答がなかった場合に、各ECU100は、以降希望するSAを使用して通常のメッセージをネットワーク300へ送信できる。
また、ネットワーク300は、SAE J1939規格に基づくCANであり、宣言メッセージは、SAE J1939規格において規定されたACLメッセージであるとしてもよい。
このように、本開示は、SAE J1939規格に基づくCANに適用できる。
情報処理システム1は、情報処理装置10と、複数のECU100と、ネットワーク300と、を備える。
これによれば、通信品質の劣化を抑制しつつ、ネットワーク300における不正を検知できる情報処理システム1を提供できる。
(その他の実施の形態)
以上のように、本開示に係る技術の例示として実施の形態を説明した。しかしながら、本開示に係る技術は、これに限定されず、適宜、変更、置き換え、付加、省略等を行った実施の形態にも適用可能である。例えば、以下のような変形例も本開示の一実施の形態に含まれる。
例えば、上記実施の形態では、情報処理装置10は、無効化部13を備えているとして説明したが、備えていなくてもよい。
また、例えば、上記実施の形態では、情報処理システム1は、ECU100a~100eを備えているとして説明したが、少なくとも2つのECU100を備えていればよい。
なお、本開示は、情報処理装置10及び情報処理システム1として実現できるだけでなく、情報処理装置10を構成する各構成要素が行うステップ(処理)を含む情報処理方法として実現できる。
例えば、情報処理方法におけるステップは、コンピュータ(コンピュータシステム)によって実行されてもよい。そして、本開示は、情報処理方法に含まれるステップを、コンピュータに実行させるためのプログラムとして実現できる。
当該プログラムは、複数のECU100が接続されたネットワーク300における不正を検知するための情報処理装置10によって実行されるプログラムであって、複数のECU100のそれぞれは、ネットワーク300において使用を希望するSAを主張する宣言メッセージをネットワーク300に送信した後、当該SAを含む通常のメッセージのネットワーク300への送信を開始する装置であり、図8に示されるように、当該プログラムは、ネットワーク300から受信した宣言メッセージに含まれるSAと、当該宣言メッセージを受信した時刻を基準とする時間と、当該宣言メッセージの前後にネットワーク300から受信したメッセージとに基づいて、ネットワーク300における不正を検知する不正検知処理(ステップS111)と、当該検知の結果を出力する出力処理(ステップS112)と、を含む。
さらに、本開示は、そのプログラムを記録したCD-ROM等である非一時的なコンピュータ読み取り可能な記録媒体として実現できる。
例えば、本開示が、プログラム(ソフトウェア)で実現される場合には、コンピュータのCPU、メモリ及び入出力回路等のハードウェア資源を利用してプログラムが実行されることによって、各ステップが実行される。つまり、CPUがデータをメモリ又は入出力回路等から取得して演算したり、演算結果をメモリ又は入出力回路等に出力したりすることによって、各ステップが実行される。
また、上記実施の形態の情報処理装置10に含まれる各構成要素は、専用又は汎用の回路として実現されてもよい。
また、上記実施の形態の情報処理装置10に含まれる各構成要素は、集積回路(IC:Integrated Circuit)であるLSI(Large Scale Integration)として実現されてもよい。
また、集積回路はLSIに限られず、専用回路又は汎用プロセッサで実現されてもよい。プログラム可能なFPGA(Field Programmable Gate Array)、又は、LSI内部の回路セルの接続及び設定が再構成可能なリコンフィギュラブル・プロセッサが、利用されてもよい。
さらに、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて、情報処理装置10に含まれる各構成要素の集積回路化が行われてもよい。
その他、実施の形態に対して当業者が思いつく各種変形を施して得られる形態、本開示の趣旨を逸脱しない範囲で各実施の形態における構成要素及び機能を任意に組み合わせることで実現される形態も本開示に含まれる。
本開示は、例えばトラック、バス、建機車両、トラクタ、トレーラ又は船舶などにおけるネットワークに流れる不正なメッセージに対応するための装置に適用できる。
1 情報処理システム
10 情報処理装置
11 不正検知部
12 出力部
13 無効化部
14 送受信インタフェース
100、100a、100b、100c、100d、100e ECU
110a ブーム
110b アーム
110c バケット
110d 油圧ポンプ
110e エンジン
300 ネットワーク

Claims (8)

  1. 複数の電子制御装置が接続されたネットワークにおける不正を検知するための情報処理装置であって、
    前記複数の電子制御装置のそれぞれは、前記ネットワークにおいて使用を希望するソースアドレスを主張する宣言メッセージを前記ネットワークに送信した後、当該ソースアドレスを含む通常のメッセージの前記ネットワークへの送信を開始する装置であり、
    前記情報処理装置は、
    前記ネットワークから受信した宣言メッセージに含まれるソースアドレスと、当該宣言メッセージを受信した時刻を基準とする時間と、当該宣言メッセージの前後に前記ネットワークから受信したメッセージとに基づいて、前記ネットワークにおける不正を検知する不正検知部と、
    前記検知の結果を出力する出力部と、を備え、
    前記不正検知部は、前記ネットワークから受信した宣言メッセージに含まれるソースアドレスと、当該宣言メッセージを受信した時刻を基準とする所定の期間に前記ネットワークから受信した宣言メッセージとに基づいて、前記ネットワークにおける不正を検知し、
    前記複数の電子制御装置のそれぞれが前記ネットワークに送信する宣言メッセージは、さらに、前記複数の電子制御装置のそれぞれに予め割り振られたデバイス固有のデバイスネームを含み、
    前記不正検知部は、前記所定の期間として、前記時刻を期間の始まりとする第3期間に前記ネットワークから受信した宣言メッセージに含まれるデバイスネームが前記時刻に受信した宣言メッセージに含まれるデバイスネームと同じであり、かつ、前記第3期間に受信した宣言メッセージに含まれるソースアドレスが前記時刻に受信した宣言メッセージに含まれるソースアドレスと異なる場合、前記時刻に受信した宣言メッセージ又は前記第3期間に受信した宣言メッセージが不正なメッセージであることを検知する、
    情報処理装置。
  2. 複数の電子制御装置が接続されたネットワークにおける不正を検知するための情報処理装置であって、
    前記複数の電子制御装置のそれぞれは、前記ネットワークにおいて使用を希望するソースアドレスを主張する宣言メッセージを前記ネットワークに送信した後、当該ソースアドレスを含む通常のメッセージの前記ネットワークへの送信を開始する装置であり、
    前記情報処理装置は、
    前記ネットワークから受信した宣言メッセージに含まれるソースアドレスと、当該宣言メッセージを受信した時刻を基準とする時間と、当該宣言メッセージの前後に前記ネットワークから受信したメッセージとに基づいて、前記ネットワークにおける不正を検知する不正検知部と、
    前記検知の結果を出力する出力部と、を備え、
    前記不正検知部は、前記ネットワークから受信した宣言メッセージに含まれるソースアドレスと、前記宣言メッセージを受信した時刻から所定の時間経過後に前記ネットワークから受信した複数の通常のメッセージとに基づいて、前記ネットワークにおける不正を検知する、
    報処理装置。
  3. 前記複数の電子制御装置のそれぞれが前記ネットワークに送信する通常のメッセージは、さらに、当該通常のメッセージのフォーマットを一意に決定する識別子を含み、
    前記不正検知部は、前記所定の時間経過後に受信した複数の通常のメッセージのうち、一の通常のメッセージに前記時刻に受信した宣言メッセージに含まれるソースアドレスが含まれ、他の一の通常のメッセージに前記時刻に受信した宣言メッセージに含まれるソースアドレスと異なるソースアドレスが含まれており、かつ、前記一の通常のメッセージ及び前記他の一の通常のメッセージに互いに同じ前記識別子が含まれている場合、前記ネットワークに不正が存在することを検知する、
    請求項に記載の情報処理装置。
  4. 前記複数の電子制御装置のそれぞれは、前記宣言メッセージを送信してから規定時間、送信した宣言メッセージに対する他の電子制御装置からの応答がなかった場合に、前記ネットワークにおいて使用を希望するソースアドレスを含む通常のメッセージの前記ネットワークへの送信を開始する、
    請求項1~のいずれか1項に記載の情報処理装置。
  5. 前記ネットワークは、SAE(Society of Automotive Engineers) J1939規格に基づくCAN(Controller Area Network)であり、
    前記宣言メッセージは、SAE J1939規格において規定されたアドレスクレームメッセージである、
    請求項1~のいずれか1項に記載の情報処理装置。
  6. 請求項1~のいずれか1項に記載の情報処理装置と、
    前記複数の電子制御装置と、
    前記ネットワークと、を備える、
    情報処理システム。
  7. 複数の電子制御装置が接続されたネットワークにおける不正を検知するための情報処理装置によって実行されるプログラムであって、
    前記複数の電子制御装置のそれぞれは、前記ネットワークにおいて使用を希望するソースアドレスを主張する宣言メッセージを前記ネットワークに送信した後、当該ソースアドレスを含む通常のメッセージの前記ネットワークへの送信を開始する装置であり、
    前記プログラムは、
    前記ネットワークから受信した宣言メッセージに含まれるソースアドレスと、当該宣言メッセージを受信した時刻を基準とする時間と、当該宣言メッセージの前後に前記ネットワークから受信したメッセージとに基づいて、前記ネットワークにおける不正を検知する不正検知処理と、
    前記検知の結果を出力する出力処理と、を含
    前記不正検知処理では、前記ネットワークから受信した宣言メッセージに含まれるソースアドレスと、当該宣言メッセージを受信した時刻を基準とする所定の期間に前記ネットワークから受信した宣言メッセージとに基づいて、前記ネットワークにおける不正を検知し、
    前記複数の電子制御装置のそれぞれが前記ネットワークに送信する宣言メッセージは、さらに、前記複数の電子制御装置のそれぞれに予め割り振られたデバイス固有のデバイスネームを含み、
    前記不正検知処理は、前記所定の期間として、前記時刻を期間の始まりとする第3期間に前記ネットワークから受信した宣言メッセージに含まれるデバイスネームが前記時刻に受信した宣言メッセージに含まれるデバイスネームと同じであり、かつ、前記第3期間に受信した宣言メッセージに含まれるソースアドレスが前記時刻に受信した宣言メッセージに含まれるソースアドレスと異なる場合、前記時刻に受信した宣言メッセージ又は前記第3期間に受信した宣言メッセージが不正なメッセージであることを検知する、
    プログラム。
  8. 複数の電子制御装置が接続されたネットワークにおける不正を検知するための情報処理装置によって実行されるプログラムであって、
    前記複数の電子制御装置のそれぞれは、前記ネットワークにおいて使用を希望するソースアドレスを主張する宣言メッセージを前記ネットワークに送信した後、当該ソースアドレスを含む通常のメッセージの前記ネットワークへの送信を開始する装置であり、
    前記プログラムは、
    前記ネットワークから受信した宣言メッセージに含まれるソースアドレスと、当該宣言メッセージを受信した時刻を基準とする時間と、当該宣言メッセージの前後に前記ネットワークから受信したメッセージとに基づいて、前記ネットワークにおける不正を検知する不正検知処理と、
    前記検知の結果を出力する出力処理と、を含み、
    前記不正検知処理では、前記ネットワークから受信した宣言メッセージに含まれるソースアドレスと、前記宣言メッセージを受信した時刻から所定の時間経過後に前記ネットワークから受信した複数の通常のメッセージとに基づいて、前記ネットワークにおける不正を検知する、
    プログラム。
JP2019152453A 2019-08-23 2019-08-23 情報処理装置、情報処理システム及びプログラム Active JP7281714B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019152453A JP7281714B2 (ja) 2019-08-23 2019-08-23 情報処理装置、情報処理システム及びプログラム
US16/994,935 US11632381B2 (en) 2019-08-23 2020-08-17 Information processing device, information processing system, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019152453A JP7281714B2 (ja) 2019-08-23 2019-08-23 情報処理装置、情報処理システム及びプログラム

Publications (2)

Publication Number Publication Date
JP2021034850A JP2021034850A (ja) 2021-03-01
JP7281714B2 true JP7281714B2 (ja) 2023-05-26

Family

ID=74647356

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019152453A Active JP7281714B2 (ja) 2019-08-23 2019-08-23 情報処理装置、情報処理システム及びプログラム

Country Status (2)

Country Link
US (1) US11632381B2 (ja)
JP (1) JP7281714B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023069364A (ja) * 2021-11-05 2023-05-18 トヨタ自動車株式会社 中継装置、通信方法及びコンピュータプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003218869A (ja) 2002-01-23 2003-07-31 Nec Corp 通信システム及びそれに用いる新規参加の通信装置検出方法
JP2012222527A (ja) 2011-04-06 2012-11-12 Toyota Motor Corp 車載ネットワーク、管理ノード、番号付与方法
WO2013171829A1 (ja) 2012-05-14 2013-11-21 トヨタ自動車 株式会社 車両用ネットワークの通信管理装置及び通信管理方法
US20150358351A1 (en) 2013-01-28 2015-12-10 Hitachi Automotive Systems, Ltd. Network device, and data sending and receiving system

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7725934B2 (en) * 2004-12-07 2010-05-25 Cisco Technology, Inc. Network and application attack protection based on application layer message inspection
US20080141372A1 (en) * 2006-12-12 2008-06-12 Privacy Networks, Inc. Electronic Data Integrity Checking and Validation
US9398043B1 (en) * 2009-03-24 2016-07-19 Juniper Networks, Inc. Applying fine-grain policy action to encapsulated network attacks
US8549644B2 (en) * 2011-03-28 2013-10-01 Mcafee, Inc. Systems and method for regulating software access to security-sensitive processor resources
US10320825B2 (en) * 2015-05-27 2019-06-11 Cisco Technology, Inc. Fingerprint merging and risk level evaluation for network anomaly detection
US20180351980A1 (en) * 2017-05-30 2018-12-06 Argus Cyber Security Ltd System and method for providing fleet cyber-security
US10462161B2 (en) * 2017-06-21 2019-10-29 GM Global Technology Operations LLC Vehicle network operating protocol and method
US20200389469A1 (en) * 2017-12-24 2020-12-10 Arilou Information Security Technologies Ltd. System and method for tunnel-based malware detection
CN108833410B (zh) * 2018-06-19 2020-11-06 网宿科技股份有限公司 一种针对HTTP Flood攻击的防护方法及系统
US11075930B1 (en) * 2018-06-27 2021-07-27 Fireeye, Inc. System and method for detecting repetitive cybersecurity attacks constituting an email campaign
US10868817B2 (en) * 2018-07-03 2020-12-15 Intel Corporation Systems and methods for neutralizing masquerading attacks in vehicle control systems

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003218869A (ja) 2002-01-23 2003-07-31 Nec Corp 通信システム及びそれに用いる新規参加の通信装置検出方法
JP2012222527A (ja) 2011-04-06 2012-11-12 Toyota Motor Corp 車載ネットワーク、管理ノード、番号付与方法
WO2013171829A1 (ja) 2012-05-14 2013-11-21 トヨタ自動車 株式会社 車両用ネットワークの通信管理装置及び通信管理方法
CN104272663A (zh) 2012-05-14 2015-01-07 丰田自动车株式会社 车辆用网络的通信管理装置及通信管理方法
US20150358351A1 (en) 2013-01-28 2015-12-10 Hitachi Automotive Systems, Ltd. Network device, and data sending and receiving system

Also Published As

Publication number Publication date
JP2021034850A (ja) 2021-03-01
US20210058413A1 (en) 2021-02-25
US11632381B2 (en) 2023-04-18

Similar Documents

Publication Publication Date Title
US10104094B2 (en) On-vehicle communication system
US20200137099A1 (en) Abnormality detection apparatus and abnormality detection method
JP2018011288A (ja) 不正制御抑止方法、不正制御抑止装置及び車載ネットワークシステム
US20200021611A1 (en) Fraud detection method, fraud detection device, and recording medium
US11647045B2 (en) Monitoring a network connection for eavesdropping
JP2019008618A (ja) 情報処理装置、情報処理方法及びプログラム
EP3565212B1 (en) Method for providing an authenticated update in a distributed network
US20200389436A1 (en) On-vehicle communication device, communication control method, and communication control program
US10721241B2 (en) Method for protecting a vehicle network against manipulated data transmission
US20210258187A1 (en) Electronic control device, electronic control method, and recording medium
CN111788796B (zh) 车载通信系统、交换装置、验证方法和计算机可读存储介质
JP7281714B2 (ja) 情報処理装置、情報処理システム及びプログラム
US10250434B2 (en) Electronic control apparatus
KR20210074067A (ko) 차량용 이더넷 기반의 접근제어 목록 관리 방법 및 이를 위한 장치
KR102204656B1 (ko) 일반 can 메시지의 전송지연을 예측하는 can 네트워크에 대한 메시지플러딩 공격 완화 시스템
JP7336770B2 (ja) 情報処理装置、情報処理システム及びプログラム
JP7117559B2 (ja) 電子制御装置、電子制御システム及びプログラム
CN113853769B (zh) 设定装置、通信系统以及车辆通信管理方法
WO2018037894A1 (ja) 車両用認証装置
JP2020096320A (ja) 不正信号処理装置
US20240073201A1 (en) Vehicle network security
US20240129301A1 (en) Vehicle network security
US20210021618A1 (en) Data communication control device, non-volatile memory, and vehicle control system
CN115842694A (zh) 用于识别对总线系统的操纵的方法
JP2023122636A (ja) 車両のソフトウェアの改竄の軽減

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220331

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230316

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230426

R151 Written notification of patent or utility model registration

Ref document number: 7281714

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

SZ03 Written request for cancellation of trust registration

Free format text: JAPANESE INTERMEDIATE CODE: R313Z03

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350