JP7247089B2 - 車両異常検知サーバ、車両異常検知システム及び車両異常検知方法 - Google Patents

車両異常検知サーバ、車両異常検知システム及び車両異常検知方法 Download PDF

Info

Publication number
JP7247089B2
JP7247089B2 JP2019530507A JP2019530507A JP7247089B2 JP 7247089 B2 JP7247089 B2 JP 7247089B2 JP 2019530507 A JP2019530507 A JP 2019530507A JP 2019530507 A JP2019530507 A JP 2019530507A JP 7247089 B2 JP7247089 B2 JP 7247089B2
Authority
JP
Japan
Prior art keywords
vehicle
abnormality
frame
information
log
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
JP2019530507A
Other languages
English (en)
Other versions
JPWO2019142741A1 (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 Corp of America
Original Assignee
Panasonic Intellectual Property Corp of America
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 Corp of America filed Critical Panasonic Intellectual Property Corp of America
Publication of JPWO2019142741A1 publication Critical patent/JPWO2019142741A1/ja
Priority to JP2023040284A priority Critical patent/JP7492622B2/ja
Application granted granted Critical
Publication of JP7247089B2 publication Critical patent/JP7247089B2/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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • 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
    • 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
    • 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/1458Denial of Service
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Small-Scale Networks (AREA)
  • Debugging And Monitoring (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は車両に搭載される電子制御ユニットが通信を行う車載ネットワークにおいて送信され得る攻撃フレームの検知、対処等のためのセキュリティ技術に関する。
近年、自動車には、電子制御ユニット(ECU:Electronic Control Unit)と呼ばれる装置が多数配置されている。これらのECUをつなぐ通信ネットワークは車載ネットワークと呼ばれる。車載ネットワークに用いられる主な通信規格としては、ISO11898-1で規定されているController Area Network(CAN(登録商標))やEthernet(登録商標)が挙げられる。自動車が高性能化するのに伴い、このような車載ネットワークを介してECU間で送受信されるデータに基づいて各ECUによる制御の内容が決定されて提供される機能が増えてきている。このような制御システムにおいては、不正に取り付けられたECU、又はサイバー攻撃によって乗っ取られたECUが、データの内容が改竄されたフレーム等の偽のフレームを送信することにより他のECUに不正な制御を実行させるという攻撃が行われる恐れがある。
このような攻撃を検知して防御する技術として、車載ネットワークにおいて同一メッセージIDを持ったフレームについて、想定される送信周期を予め登録し、実際の送信周期とこの想定の送信周期との比較に基づいて不正か否かの判別を行う技術が知られている(特許文献1参照)。
また、各車両の車載ネットワークで送受信されたフレームがサーバに送信され、サーバでは、このフレームの異常度を算定し、この異常度に基づいて、多様な攻撃フレームに適切に対処する技術が知られている(特許文献2参照)。
特開2014-146868号公報 特開2017-111796号公報
しかしながら、上記の構成では、サーバにデータを送信する車両が多くなれば、このデータの処理に基づく異常への対処までにボトルネックが生じた場合に適切な対処を迅速に執ることができず、例えば攻撃の対象になり得る車両が増える等、攻撃の被害が深刻化する可能性が高まるという課題がある。
そこで本発明は、監視対象の車両の多少にかかわらず、異常の検知から対処まで迅速かつ適切に実行可能な車両異常検知装置等を提供する。
本発明の一態様による車両異常検知サーバは、車両と通信して当該車両が備える車載ネットワークのログを受信する通信部と、前記通信の相手である複数台の車両の一である第一車両における異常の発生を示す情報を取得すると、前記第一車両の異常に応じた異常関連車両を前記複数台の車両から選出する車両選出部と、前記異常関連車両に、前記異常関連車両が備える車載ネットワークのログの送信を要求する第一リクエストを前記通信部を介して送信するログ収集部と、前記第一リクエストに応じて前記異常関連車両から送信され、前記通信部が受信したログが示す情報に基づいて前記異常関連車両における異常の発生有無の判定を行うログ分析部とを備える。
また、本発明の一態様による車両異常検知システムは、上記の車両異常検知サーバと、前記車両異常検知サーバと通信する複数台の車両であって、前記車両異常検知サーバからのリクエストに応じて前記ログを前記車両異常検知サーバに送信する車両とを含む。
また、本発明の一態様による車両異常検知方法は、上記の車両異常検知システムで実行される車両異常検知方法であって、前記車両異常検知システムにおいて、前記複数台の車両の一である第一車両における異常の発生を示す情報を取得すると、前記複数台の車両から前記第一車両の異常に応じた異常関連車両を選出し、前記車両異常検知システムから前記異常関連車両に、前記異常関連車両が備える車載ネットワークのログの送信を要求する第一リクエストを送信し、前記車両異常検知システムが、前記第一リクエストに応じて前記異常関連車両から送信されたログが示す情報に基づいて、前記異常関連車両における異常の発生有無の判定を行う。
なお、これらの全般的または具体的な態様は、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能な記録媒体で実現されてもよく、装置、システム、方法、コンピュータプログラム及び記録媒体の任意の組合せで実現されてもよい。
本開示における車両異常検知装置等は、監視対象の車両の多少にかかわらず、異常の検知から対処まで迅速かつ適切に実行することができる。
なお、本開示の更なる効果及び利点は、本明細書及び図面の開示内容から明らかとなるであろう。上記更なる効果及び利点は、本明細書及び図面に開示されている実施の形態及び特徴によって個別に提供されてもよく、必ずしもすべての効果及び利点が提供される必要はない。
図1は、実施の形態における車両異常検知システムのサービス体制の例を示すブロック図である。 図2は、上記の車両異常検知システムに含まれるクラウドサーバの運営体制の例を示すブロック図である。 図3は、実施の形態における車両異常検知システムの全体構成の例を示す概念図である。 図4は、上記の車両異常検知システムに含まれる車両が備える車載ネットワークの構成の例を示すブロック図である。 図5は、上記の車両異常検知システムに含まれる車両異常検知サーバの機能構成例を示すブロック図である。 図6は、実施の形態における車両ログ格納データベースに格納される車両ログ情報のデータ構成の例を示すブロック図である。 図7は、実施の形態における車両情報データベースに格納される車両情報のデータ構成例を示す図である。 図8は、実施の形態における車両情報データベースに格納される車種別情報のデータ構成例を示す図である。 図9は、実施の形態におけるセキュリティ情報データベースに格納される攻撃フェーズ情報のデータ構成例を示す図である。 図10は、実施の形態におけるECU情報データベースに格納されるECU ID変換テーブルの一例を示す図である。 図11は、実施の形態におけるECU情報データベースに格納されるメッセージID変換テーブルの一例を示す図である。 図12は、実施の形態におけるECU情報データベースに格納される車種別メッセージID-ECU関連付けテーブルの一例を示す図である。 図13は、実施の形態におけるECU情報データベースに格納される車種別ECU関連付けテーブルの一例を示す図である。 図14は、上記の車両異常検知システムに含まれる車両の備えるゲートウェイの機能構成例を示すブロック図である。 図15は、上記の車両異常検知システムにおける異常検知までの処理手順例を示すシーケンス図である。 図16は、上記の車両異常検知システムに含まれる車両異常検知サーバでの、平常時に異常検知処理の対象である標本車両を選出する手順例を示すフロー図である。 図17は、上記の車両異常検知システムに含まれる車両異常検知サーバでの、異常検知の手順例を示すフロー図である。 図18は、上記の車両異常検知システムに含まれる車両異常検知サーバでの、追加調査対象車両を選出する処理の手順例を示すフロー図である。 図19は、上記の車両異常検知システムにおける通信の概要を示すシーケンス図である。
(本開示の基になった知見)
本発明者らは、「背景技術」の欄において記載した技術に関し、以下の問題が生じることを見出した。
車載ネットワークで送受信されるフレームが多数の車両からサーバに送信されると、車両とサーバとをつなぐ通信ネットワークでの通信データ量、又はサーバでの処理対象のデータ量がそれぞれの処理能力に対して過剰になり、異常の検知、又は検知された異常への適時の対処ができなくなる状況が想定される。このような状況を回避するためには、サーバによる異常検知処理の対象となる車両は、車両の母集団からサンプリングして選択し、選択された車両が各車両の車載ネットワークで送受信されたデータ、又はそのログをサーバへ送信することが考えられる。これにより、通信データ量の増加及びサーバでの処理負荷の増加が抑えられる。しかしながら、対象として選択されていない車両については、監視対象として選択されない限り、サーバでの異常検知処理が行われない。つまり、選択されていない車両で発生している異常は対処されないか、されるまでに時間がかかる。この異常がサイバー攻撃によるものであれば、異常への対処がなされない間にこの攻撃の影響による大きなトラブルが当該車両で発生したり、攻撃が他の車両に拡大したりする等、被害が深刻化するおそれもある。
このような問題を解決するために、本発明の一態様に係る車両異常検知サーバは、車両と通信して当該車両が備える車載ネットワークのログを受信する通信部と、前記通信の相手である複数台の車両の一である第一車両における異常の発生を示す情報を取得すると、前記第一車両の異常に応じた異常関連車両を前記複数台の車両から選出する車両選出部と、前記異常関連車両に、前記異常関連車両が備える車載ネットワークのログの送信を要求する第一リクエストを前記通信部を介して送信するログ収集部と、前記第一リクエストに応じて前記異常関連車両から送信され、前記通信部が受信したログが示す情報に基づいて前記異常関連車両における異常の発生有無の判定を行うログ分析部とを備える。
これにより、ある車両で検出された異常に応じて、同様の異常が発生している可能性が高いと考えられる他の車両について従来に比べて優先的な異常判定の実施が可能となる。そして、異常の発生の早期検知ができることで、対応も迅速に行われ、攻撃の当該車両への影響の深刻化、又はさらに他の車両への拡大を抑えることができる。
例えば、前記車両選出部は、前記複数台の車両から第一標本車両を選出し、前記ログ収集部は、選出された前記第一標本車両に、前記第一標本車両が備える車載ネットワークのログの送信を要求する第二リクエストを前記通信部を介して送信し、前記ログ分析部は、前記第二リクエストに応じて前記第一標本車両から送信され、前記通信部が受信したログが示す情報に基づいて前記第一標本車両における異常の発生有無の判定を行い、前記第一標本車両における異常の発生がないと前記ログ分析部によって判定された場合、前記車両選出部は、前記複数台の車両から前記第一標本車両とは別の第二標本車両を選出し、前記ログ収集部は、選出された前記第二標本車両に、前記第二標本車両が備える車載ネットワークのログの送信を要求する第三リクエストを前記通信部を介して送信してもよい。
これにより、異常の発生有無の判定の対象となる車両は、監視対象の全車両の一部であり、かつ監視対象が入れ替わる。したがって、通信データ量の増加及び異常検知のためにサーバで分析されるデータの量の増加を抑えながら、多様性な監視対象の車両を広く監視する効率の良い監視が実現される。
例えば、前記ログは、前記車載ネットワークで送受信されるフレームが含む情報の少なくとも一部の時系列データ又は前記フレームに関する情報の時系列データであってもよい。
これにより、異常発生の有無の判定は、フレームが含むデータの内容又は送信される周期性等に基づいて良好な精度で実行可能である。
例えば、前記車両選出部は、前記異常関連車両は、前記異常が発生している車両と車種が共通である車両を前記異常関連車両として選出してもよい。
車種が同一の車両は同種の情報処理装置(ECU)を備えることが多く、生じやすい故障、未発見のバグ、又はサイバー攻撃に対する脆弱性等の共通の問題を抱えている可能性が高い。つまり、車種が同一の車両では、一台の車両で検知された異常と同様の異常が他の車両にも発生している可能性は、他の車種よりも高い。このような車両を異常関連車両として扱って、分析のためのデータの収集の対象とすることで、効率よく異常の発生を検知し、迅速な対処が可能になる。
例えば、前記車載ネットワークにおいて送受信されるフレームの種類と前記フレームを送信する情報処理装置との対応を示す第一の車両情報を保持する記憶部をさらに備え、前記車両選出部は、前記第一車両において発生した異常に関連したフレームと種類が同じフレームを送信する情報処理装置を備える車両を、前記第一の車両情報を参照して前記複数台の車両から特定し、特定した前記車両を前記異常関連車両として選出してもよい。
上述のように、同種のECUは共通の問題を抱えている可能性が高い。つまり、ある一台の車両が備えるECUから不正なフレームが送信されている(異常が発生している)場合、同種のECUを備える他の車両の車載ネットワークでも同様の不正なフレームが送信されている可能性は、同種のECUを備えない車両よりも高い。このような車両を異常関連車両として扱って、分析のためのデータを送信させることで、効率よく異常の発生を検知し、迅速な対処が可能になる。
例えば、前記記憶部は、前記車載ネットワークにおいて送受信されるフレームの種類を示すメッセージIDの車種間の対応を示す第二の車両情報をさらに保持し、前記車両選出部は、前記第二の車両情報を参照して、前記第一車両とは異なる車種が備える車載ネットワークで送受信されるフレームのメッセージIDであって、前記第一車両において発生した異常に関連したフレームのメッセージIDに対応するメッセージIDを特定し、特定した前記メッセージIDが示す種類のフレームを送信する情報処理装置を備える車両を、前記第一の車両情報を参照して前記複数台の車両から特定し、特定した前記車両を前記異常関連車両として選出してもよい。
サイバー攻撃には、例えば車両の加速の制御に関するデータを含むフレームなど、特定の種類のフレームを標的として行われるものが想定され得る。しかしながら、フレームの種類を示すIDは、一部を除いて各車両のシステム設計者が任意に設定可能であり、車種間で共通とは限らない。上記の構成により、異常が検出されたフレームと同種のフレームについて、車種間でのIDの差異を越えて、効率よく異常の発生を検知し、迅速な対処が可能になる。
例えば、前記第一リクエストの送信先の候補である車両を識別する車両IDの車種別のリストである車両IDリストを保持する記憶部をさらに備え、前記車両選出部は、前記車両IDリストを用いて前記異常関連車両を選出してもよい。また例えば、前記車両IDリストは、前記第一リクエストの送信先の候補である前記車両に関連する地域に応じた前記車両IDの区分を示し、前記車両選出部は、前記車両IDリストが示す地域に基づいて前記異常関連車両を選出してもよい。
これにより、検知された異常と同様の異常が発生している可能性がより高い車両から分析のためのデータを送信させることで、効率よく異常の発生を検知し、迅速な対処が可能になる。車種の目安になる型番が共通でも製造地(又は製造工場)又は仕向地によって搭載するECUの仕様が異なったり、複数の車種に仕様が共通のECUが採用されることもある。または、ある時間に特定の地域を走行する車両がサイバー攻撃の標的となる場合もある。したがって、これらのような地理的条件に基づく異常関連車両の選定も異常判定の効率向上に有効である。
例えば、前記車両IDリストは、前記第一リクエストの送信先の候補である前記車両に関連する地域に応じた前記車両IDの区分を示し、前記車両選出部は、前記車両IDリストが示す地域に基づいて前記異常関連車両を選出してもよい。
異常が検出されたフレームを送信するECUと同種のECUではなくても、その異常の悪影響を受けやすい状況が想定される。例えば、異常が検出されたフレームを送信するECUと同一の機能ドメインに属するECU、又は異常が検出されたフレームを受信して処理するECUは、その他のECUよりもこの異常の悪影響を受けやすい。このようなECUを搭載する車両を異常関連車両として扱って、分析のためのデータを送信させることで、効率よく異常の発生を検知し、迅速な対処が可能になる。
また、本発明の一態様に係る車両異常検知システムは、上記のいずれかの車両異常検知サーバと、前記車両異常検知サーバと通信する複数台の車両であって、前記車両異常検知サーバからのリクエストに応じて前記ログを前記車両異常検知サーバに送信する車両とを含む。
これにより、ある車両で検出された異常に応じて、同様の異常が発生している可能性が高いと考えられる他の車両について従来に比べて優先的な異常判定の実施が可能となる。そして、異常の発生の早期検知ができることで、対応も迅速に行われ、攻撃の当該車両への影響の深刻化、又はさらに他の車両への拡大を抑えることができる。
また、本発明の一態様に係る車両異常検知方法は、上記の車両異常検知システムで実行される車両異常検知方法であって、前記車両異常検知システムにおいて、前記複数台の車両の一である第一車両における異常の発生を示す情報を取得すると、前記複数台の車両から前記第一車両の異常に応じた異常関連車両を選出し、前記車両異常検知システムから前記異常関連車両に、前記異常関連車両が備える車載ネットワークのログの送信を要求する第一リクエストを送信し、前記車両異常検知システムが、前記第一リクエストに応じて前記異常関連車両から送信されたログが示す情報に基づいて、前記異常関連車両における異常の発生有無の判定を行う。
これにより、ある車両で検出された異常に応じて、同様の異常が発生している可能性が高いと考えられる他の車両について従来に比べて優先的な異常判定の実施が可能となる。そして、異常の発生の早期検知ができることで、対応も迅速に行われ、攻撃の当該車両への影響の深刻化、又はさらに他の車両への拡大を抑えることができる。
なお、これらの包括的又は具体的な各態様は、集積回路、コンピュータプログラム若しくはコンピュータ読み取り可能なCD-ROM等の記録媒体で実現されてもよく、又は、装置、システム、方法、集積回路、コンピュータプログラム若しくは記録媒体の任意の組み合わせで実現されてもよい。
以下、図面を参照しながら実施の形態について具体的に説明する。なお、以下で説明する実施の形態は、包括的又は具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは一例であり、本発明を限定する趣旨ではない。また、以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素は、任意の構成要素として説明される。また、各図は模式図であり、必ずしも厳密に図示されたものではない。
(実施の形態)
[1 車両異常検知システムの概要]
まず、実施の形態における車両異常検知システムの概要について例を用いて説明する。図1は、この車両異常検知システムのサービス体制の例を示すブロック図である。
この例における車両異常検知システムには、情報セキュリティサービスの提供を受けるユーザ(サービスユーザ)1000の元にある複数の車両1010、データセンタ運営会社1100の管理下にあるクラウドサーバ1110、及び上記の情報セキュリティサービスの提供を事業とするサービスプロバイダ1200の管理下にあるサーバ1210が含まれる。
第一の車両及び第二の車両は車両1010の例であり、それぞれが車載ネットワークを備える自動車である。各車載ネットワークにはゲートウェイ1020が含まれる。車両1010を実際に運転するのは運転者D10である。車載ネットワークで送受信されるデータは、そのログが複数の車両1010からクラウドサーバ1110に送信される(矢印1310)。また、クラウドサーバ1110から車両1010には、そのようなログの送信リクエストが送信される(矢印1360)。このように、車両1010の車載ネットワークは外部との通信が可能である。車載ネットワークの構成の詳細は後述する。
クラウドサーバ1110は、CPU(Central Processing Unit)等のプロセッサ、HDD(Hard Disk Drive)、RAM(Random Access Memory)及びROM(Read-only Memory)等の記憶装置、及びNIC(Network Interface Controller)等の通信インタフェースを各々備える複数台のコンピュータで実現される。クラウドサーバ1110は、複数台の車両1010からインターネットなどの通信ネットワークを介してログを受信し(矢印1310)、また、受信したログをサーバ1210に提供(矢印1320)が可能なよう保持する。
サーバ1210は、CPU等のプロセッサ、HDD、RAM及びROM等の記憶装置、及びNIC等の通信インタフェースを備える一台又は複数台のコンピュータで実現される。サーバ1210は、クラウドサーバ1110から取得したログを分析して異常の発生の有無を判定する。この判定の結果は、例えばサーバ1210を介して管理ユーザU10に提示される(矢印1340)。また例えば、クラウドサーバ1110に送信されて(矢印1350)保管され、また、クラウドサーバ1110から車両1010に提供される(矢印1360)。管理ユーザU10は、例えばサービスプロバイダ1200に所属し、この車両異常検知システムの運用、車両異常検知システムによるサービスの提供状況の監視等を担当する。なお、判定の結果はサーバ1210から車両1010に直接提供されてもよい(矢印1330)。車両1010では、この結果は例えば記録媒体に記録されたり、ユーザインタフェースを通じて運転者D10に提示されたりする。なお、異常を示す結果の場合には、この異常に応じた制御、例えば異常が発生した系統の無効化、異常の影響を受ける機能の縮退、車両1010の退避のための運転等のための制御が、運転者D10の操作によって、又は車両1010が備えていれば自動制御システムによって実行されることもある。
ここで、データセンタ運営会社について、例を用いてさらに説明しておく。図2は、本実施の形態における車両異常検知システムの運営体制の例を示すブロック図である。データセンタ運営会社は、例えば車両1010を製造しているカーメーカーと、車両1010からの持続的なデータの収集及び保存を可能にする設備の提供及び管理をする管理会社とによって設けられ、クラウドサーバ1110を車両異常検知システムに提供する。
上述のようなサービス体制及び運営体制は一例であり、以下に説明する実施の形態又はその変形の実現が可能な限りは各種の変形が可能である。例えば車両1010に対するクラウドサーバ1110へのログの送信リクエストは、クラウドサーバ1110がサーバ1210から送信される指示に基づいて発せられてもよいし(矢印1350、1360)、サーバ1210から車両1010の各々に直接送信されてもよい(矢印1330)。また、ログを分析しての異常の発生の有無の判定もクラウドサーバ1110で実行されてもよく、この場合、サーバ1210はその判定の結果の取得及び監視要員又は車両1010への提示の機能のみを提供してもよい。また、この例ではクラウドサーバ1110とサーバ1210とは別主体によって提供されているが、同一主体によって提供され、共通の一台のコンピュータ、又は複数台のコンピュータで構成されるクラウドコンピューティングによって実現されてもよい。また例えば、図2に示す管理会社がサービスプロバイダ1200と同一主体であってもよい。
以下でより具体的に説明する、本実施の形態における車両異常検知システムに含まれる車両異常検知サーバは、上記の説明においてクラウドサーバ1110、又はさらにサーバ1210が担う各機能を提供するものである。
[2 車両異常検知システムの構成]
[2.1 車両異常検知システムの全体構成]
図3は、本実施の形態における車両異常検知システムの全体構成の例を示す図である。車両異常検知システムは、車両異常検知サーバ80と、車両1010a、1010b、1010c、1010d、1010e、1010fとが、通信路として機能するネットワーク81で接続されて構成される。
ネットワーク81は例えば3G、4G、5Gといったテレマティクスの実現に利用可能な通信網であり、インターネット及び携帯電話網等を含み得る。
車両異常検知サーバ80は、機能的には図1に示すクラウドサーバ1110、又はさらにサーバ1210に相当する。
車両1010a、1010b、1010c、1010d、1010e、及び1010fは、図1に示す複数の車両1010に相当する。なお、以下では、これらの車両をまとめて、又は特定しない一台以上のいずれかを指して車両1010と呼称することがある。
車両1010には複数の車種が含まれる。この例では、車両1010a、1010b、1010c及び1010dは車種A、車両1010eは車種B、1010fは車種Cである。車種が同一の車両は、例えば型式(車両型式)が同一であり、車両の識別情報としての車両IDの一部が同一の車両である。具体例を挙げると、車種が同一の車両は、車台番号における型式の値、又は車両識別番号(VIN:Vehicle Identification Number)における先頭からシリアル番号の前までの桁の値が同一である。
車両1010はそれぞれ、制御装置、センサ、アクチュエータ、ユーザインタフェース装置等の各種機器、及びこれらの各機器に接続される情報処理装置であって、車内のバス(CANバス)を介してフレームに係る通信を行う複数のECUを含む車載ネットワークを備える。車載ネットワーク上の各ECUは、CANのプロトコルに従って相互に通信を行う。CANプロトコルにおけるフレームには、データフレーム、リモートフレーム、オーバーロードフレーム及びエラーフレームがある。以下では主としてデータフレームに注目して説明する。なお、CANのプロトコルでは、データフレームは、格納するデータが表す情報に応じた種類を示すID(以下ではメッセージIDともいう)を格納するIDフィールド、データ長を示すDLC(Data Length Code)、データを格納するデータフィールド等を含むよう規定されている。
[2.2 車載ネットワークの構成]
図4は、車両1010が備える車載ネットワークの構成の一例を示す図である。
車両1010等における車載ネットワークは、バス(CANバス)10~70により接続された、複数のECU(ECU100、101、200、201、300、301、302、400、401、500、600、700)及びゲートウェイ90といった複数のノードを含む。なお、車載ネットワークには、更に多くのECUが含まれ得るが、図示は省略している。
ECUは、プロセッサ(マイクロプロセッサ)、メモリ等のデジタル回路、アナログ回路、通信回路等を含む、本実施の形態における情報処理装置の例である。メモリは、ROM、RAM等であり、プロセッサにより実行される制御プログラム(コンピュータプログラム)、又はさらに、この制御プログラムの実行時に参照されるデータを記憶することができる。メモリの書き込み可能な部分には、この制御プログラムの実行の中間又は最終段階で生成されるデータが保持されてもよい。ECUは、プロセッサがこの制御プログラムに従って動作することにより各種の所定の機能を提供する。なお、コンピュータプログラムは、プロセッサに対する指令を示す命令コードが、この所定の機能が達成されるよう複数個組み合わされて構成されたものである。
バス10には、それぞれエンジン110、トランスミッション111に接続されたECU(エンジンECU)100及びECU(トランスミッションECU)101を含む、モータ、燃料、電池の制御といった車両の「走る」(走行又は加速)の制御に関連する駆動系のECUが接続されている。
バス20には、それぞれブレーキ210、ステアリング211に接続されたECU(ブレーキECU)200及びECU(ステアリングECU)201を含む、車両の「曲がる」(操舵)及び「止まる」(制動)の制御に関連するシャーシ系のECUが接続されている。
バス30には、それぞれ自動ブレーキシステム310、車線維持システム311、車車間通信システム312に接続されたECU300、ECU301及びECU302を含む、車間距離維持機能、衝突防止機能、エアバッグ作動等に関連する安全機能系のECUと車車間通信システム用のECUとが接続されている。
バス40には、それぞれドア410、ライト411に接続されたECU400及びECU401を含む、エアコン、ウインドウ、ドアミラー、方向指示器等といった装備の制御に関連するボディ系のECUが接続されている。
バス50には、ヘッドユニット510に接続されたECU500を含む、インストルメントパネル、カーナビゲーションシステム、オーディオシステム等に関連したインフォテインメント系のECUが接続されている。なお、インストルメントパネルとヘッドユニットとの機能分担はいかなるものであってもよい。
バス60には、ITS(Intelligent Transport Systems)装置610に接続されたECU600を含む、ETC(Electronic Toll Collection System)等の高度道路交通システムに対応するECUが接続されている。
バス70には、例えばOBD2(On-Board Diagnostics 2)等といった、外部の故障診断ツール等と通信するためのインタフェースである診断ポート710に接続されたECU700が接続されている。なお、ECU700を除き診断ポート710をバス70に接続していてもよい。
なお、上記各バスに接続されたECUに接続されている機器及びシステムは、車載ネットワークシステムの概念を説明するための例に過ぎない。これらの機器及びシステムのそれぞれは、一台又は複数台の他の機器に置き換えられ得るし、必須でないものもある。
ECU(ECU100、200等)のそれぞれは、接続されている機器(エンジン110、ブレーキ210等)又はシステムの状態若しくは動作内容を示す情報又はセンシング情報等の情報を取得し、取得した情報のデータを含むフレーム(データフレーム)を車載ネットワーク、つまりCANバスに周期的に送出している。
ゲートウェイ90は、複数の通信路(CANバス)を中継して通信路間でデータを転送する情報処理装置である。ゲートウェイ90は、バス10、バス20、バス30、バス40、バス50、バス60及びバス70と接続している。つまり、ゲートウェイ90は、一のバスから受信したフレームを、所定の条件下で他のバス(つまり条件に応じて選択した転送先バス)に転送する機能を有する一種のECUである。また、ゲートウェイ90は、車両1010の外部の車両異常検知サーバ80とネットワーク81を介して通信するための通信装置(通信回路等)を備え、例えば、各バスから受信したフレームについての情報を車両異常検知サーバ80に送信(アップロード)する機能を有する。ゲートウェイ90の構成については、後に詳細に説明する。
ここで、以下では特に断らない場合、車種が同一の車両は、車載ネットワークの構成が同一であるとの想定に基づいて説明する。つまり車種A、B、及びCには、図4に示す構成と同様の構成の車種もあれば、一部異なる構成の車種も含まれる。ただし、各種の機器又はシステムと接続される複数のECUがCANバスに接続されている点、CANバス間に跨がる通信がゲートウェイによって中継される点、車載ネットワークで送受信されるフレームについての情報が車外の車両異常検知サーバに送信される点は共通である。車両異常検知サーバとの通信の機能は、例えばゲートウェイとは別のECUで実現されるTCU(Telematics Control Unit)によって提供されてもよい。また、ECU間の通信路には、Ethernet、FlexRay(登録商標)等のCANとは異なるプロトコルに従って構築されるものが含まれてもよい。ただし、以下ではCANプロトコルに従って構築されている車載ネットワークである場合を例に説明する。
一方、以下では特に断らない場合、同一車種の複数の車両において、車載ネットワークのCANバスに流れるデータフレーム(メッセージ)の利用に関する仕様、例えばデータフレームの種類を示すメッセージID毎のデータフィールドの内容の規定等は同一であるとの想定に基づいて説明する。
なお、車種が相違する車両が同種のECUを備えることもある。同種のECUとは、構成が同一のECUであり、例えば、同じ製造事業者(ECUベンダ)による同型式のECUであり、また、主たる機能を実現するための構成が同一のECUである。ただし、異なる車種の車両に搭載される同種のECU間では、送信するフレームのID(メッセージID)は互いに異なり得る。
[2.3 車両異常検知サーバの構成]
図5は、車両異常検知サーバ80の機能構成例を示すブロック図である。
車両1010の車載ネットワークで送受信されるフレームの異常の発生に対処するための車両異常検知サーバ80は、上述のクラウドサーバ1110、又はさらにサーバ1210で実現され、つまり、プロセッサ、記憶装置、通信インタフェース等を備える一台又は複数台のコンピュータである。
車両異常検知サーバ80は、通信部810と、認証処理部820と、ログ収集部830と、ログ分析部840と、セキュリティ情報生成部850と、ログ収集対象車両選出部855と、車両情報データベース(以下、DBと表記)860と、ECU情報DB865と、車両ログ格納DB870と、分析結果格納DB880と、セキュリティ情報DB890とを含んで構成される。認証処理部820、ログ収集部830、ログ分析部840、セキュリティ情報生成部850及びログ収集対象車両選出部855は、例えば、記憶装置に格納されている制御プログラムをプロセッサが実行して情報を処理することにより実現され得る機能的な構成要素である。また、車両情報DB860、ECU情報DB865、車両ログ格納DB870、分析結果格納DB880及びセキュリティ情報DB890は、例えば、記憶装置に格納されている制御プログラムをプロセッサが実行して記憶装置上でデータを管理(生成、編集、保存)することで実現され得る機能的な構成要素である。これらのデータベースが実現される記憶装置は、本実施の形態における記憶部の例である。
通信部810は、通信インタフェース、メモリに格納された制御プログラムを実行するプロセッサ等により実現される。通信部810は、車両1010のそれぞれとネットワーク81を介して通信することで、各車両1010の車載ネットワークのCANバス上に流れたフレーム(メッセージ)が含む情報、又はフレームに関する情報等を示す時系列データを含むログを受信する。フレームが含む情報とは、例えば、車載ネットワークでCANバスから受信されたフレームのID(メッセージID)、DLCが示すデータフィールドの長さ、フレーム(メッセージ)のデータフィールドに格納されているデータの内容である。また、フレームに関する情報とは、例えば同一メッセージIDのフレームの受信タイミング(間隔、頻度等)に関する情報である。以下、これらのような、フレームが含む情報及びフレームに関する情報であってログに表され得るものを、まとめてフレーム情報ともいう。
通信部810は、各車両からログを受信することで、各車両の車載ネットワークにおいて送受信されたフレームについてのこのようなフレーム情報を取得する取得部として機能する。また、通信部810は、セキュリティ情報生成部850が生成したセキュリティに関する送信用情報を送信する。送信用情報は、例えば、車両の乗員等を対象としたアラート(警告)通知のための提示用情報、車両の走行等の制御指示を示す制御情報、車両において暗号処理の適用に際して用いられる鍵の更新を指示するための制御情報、車両側でフレームに係る不正を検知するための不正検知用情報等である。また、通信部810は、ログ収集対象車両選出部855(後述)が選出したログ収集の対象車両にログの送信リクエストを送信する。このリクエストは、フレームのID、又は送信対象であるフレームに関連するECUを示すECU IDなど、対象車両に提供を求めるログに含められる情報に関する指示を含んでもよい。
認証処理部820は暗号処理機能を備え、車両1010と通信する際に、車両1010と車両異常検知サーバ80との間で行う相互認証の処理を担い、暗号処理により安全な通信路を確立する。例えば認証処理部820は、暗号処理機能により、相互認証に基づいて、通信部810が受信した車両からの暗号化されたログを復号し、車両に送信するための送信用情報を暗号化し得る。また、車両異常検知サーバ80で保持される各種DBは関係者(例えば図2のカーメーカー及び管理会社)にとっての秘匿情報である場合もある。このような場合に車両異常検知サーバ80では、各種DBに情報を暗号化して保存するために、認証処理部820の暗号処理機能が利用される。
ログ収集部830は、各車両1010から収集したログの内容である各種情報(車載ネットワークで送受信されたフレームについてのフレーム情報等)を、車両ログ格納DB870に格納する。ログ収集部830は、各種データを車両ログ格納DB870へ格納する際に、各種データに所定の正規化等の処理を施してもよい。車両ログ格納DB870に格納されるデータ(車両ログ情報)については別図を用いて後に説明する。
ログ分析部840は、各車両1010から収集されて車両ログ格納DB870に格納(集積)されたログを分析することにより、車両1010の車載ネットワークで受信されたフレームが異常であるか否か(攻撃者によりその車載ネットワークに攻撃フレームが流されたか否か)に関連する指標である異常度を算定する。ログ分析部840は、集積されたログが表す、各車両から収集された複数のフレームについてのフレーム情報に対して、例えば、統計処理等を行い得る。ログ分析部840は、通信部810が取得した複数のフレームについてのフレーム情報と、通信部810がその複数のフレームについてのフレーム情報より後に取得した、一の車両1010(例えば車両1010a)の車載ネットワークにおいて受信されたフレームについてのフレーム情報とに基づいて、その一の車両1010の車載ネットワークにおいて受信されたそのフレームの異常度(異常の度合い)を算定する算定部として機能する。
ログ分析部840は、例えば、正常な車載ネットワークで送受信される各フレームについての所定モデルであって異常な車載ネットワークで送受信される各フレームとの比較に用いることのできる所定モデルを構築し、その後に取得されるログに基づいて機械学習を用いて所定モデルをより適切なものへと調整(更新)してもよい。また、ログが逐次取得される場合には、所定モデルの更新が逐次行われてもよい。これにより、未知の攻撃パターンに対してより迅速に適切な対処可能となり得る。
これらの場合に、ログ分析部840は、集積したログが示す複数のフレームについてのフレーム情報に加工処理(例えば多変量解析等)を適宜施して、所定モデルの学習のために供給し得る。所定モデルの学習には、教師あり学習、教師なし学習のいずれの方式を用いてもよい。例えば、各車両1010の車載ネットワークシステムにおいて、所定ルールに基づいてそのルールに適合しないフレーム(不正フレーム)がCANバスに流れたことを検知する不正検知機能がある場合には、不正フレームか不正でないフレームかの区別を示す情報がログに含まれてもよく、ログ分析部840では、その区別を示す情報に基づいて所定モデルの教師あり学習を行ってもよい。
また例えば、ログ分析部840では、各車両1010から不正フレームでないフレームについてのログを収集して、又は不正フレームか否かについて区別せずにログを収集し、収集したログに基づいて所定モデルの教師なし学習を行ってもよい。この所定モデルは、ある車両1010の車載ネットワークで受信されたフレームについての異常度の算定に利用される。所定モデルの内容は、フレームの異常度の算定に用いることのできるものであればよい。異常度は、例えば、フレーム情報と所定モデルとの比較、算術演算、論理演算、又は条件判断等、つまりフレーム情報と所定モデルとを用いた演算処理により算定される。ログ分析部840は、異常度の算定のための所定モデルとして、例えば、同一車種の各車両におけるログ情報に基づいて、正常状態において車載ネットワークで受信されるフレームについての特徴量(フレームが含むデータの内容、同一IDのフレームの受信間隔又は受信頻度等の各成分を含む特徴ベクトル等)の分布を表わすように所定モデルを構築し得る。なお、所定モデルは、例えば、異常度を目的変数とし、ログが示す情報を説明変数とする場合の目的変数と説明変数との間の関係を表すモデルであってもよい。異常度は、例えば、異常なし(正常)を0(ゼロ)とし、異常ありの場合に異常の度合いに応じた正の数値をとるように定め得る。異常度は、0(例えば異常なし)と1(例えば異常あり)との2値をとるものであってもよいし、異常ありを複数段階に区別して3値以上をとるものであってもよい。または、異常度が所定閾値を超える場合に異常ありと判別するような活用も可能である。一例としては、ある車両1010の車載ネットワークで受信されたフレームの異常度は、そのフレームの特徴量が、既に集積されたログに基づいて定められた所定モデルが示す特徴量の分布(例えば平均値と分散で特定される正規分布)に対する標準偏差に所定係数(例えば3)を乗じて定まる閾値を境界とする範囲の内に位置するか否かで算定でき、また、所定係数を複数用いることで異常度を複数段階に算定できる。異常度を算定するための所定モデルの構築に用いられる手法としては、外れ値検出、時系列上の急激な変化を検出する変化点検出等がある。
このようにログ分析部840は、集積されたログ(車両ログ)が表す各車両1010の車載ネットワークで受信された複数のフレームについてのフレーム情報に基づいて、その複数のフレームについてのフレーム情報の受信より後に、ある車両1010の車載ネットワークにおいて受信されたフレームについてのフレーム情報の異常度を算定する。ある車両1010の車載ネットワークにおいて受信されたフレームについてのフレーム情報もその車両1010のログから得ることができる。そしてログ分析部840で算定された異常度は、セキュリティ情報生成部850で生成する送信用情報の内容の決定、送信用情報の送信先の車両1010の範囲の決定、送信用情報の送信タイミング(時期)の決定等のために用いられる。ある車両1010の車載ネットワークで受信されたフレームについて算定した異常度により異常ありと判定した場合(つまり攻撃フレームを検知した場合)に、ログ分析部840は、セキュリティ情報生成部850に、その車両及び一定条件下で他の車両1010へと送信用情報の送信(警告の通知等)を行わせる。また、ログ分析部840は、集積したログ情報に基づく統計処理、所定モデルの更新(学習)、ある車両1010の車載ネットワークで受信されたフレームの異常度の算定等の各種分析処理を行う。そしてログ分析部840は、その分析処理の結果(例えば更新後の所定モデルを表わす情報、算定した異常度に関する情報等)を、分析結果格納DB880に格納して保存し、次回の分析処理(フレームの異常度の算定等)に利用する。
セキュリティ情報生成部850は、車両情報DB860が保持する車両情報(図7参照)と、セキュリティ情報DB890に格納された攻撃フェーズ情報(図9参照)及びアラートレベル情報とを参照して、ログ分析部840で算定された、ある車両1010の車載ネットワークで受信されたフレームについての異常度に応じて、セキュリティに関する送信用情報の内容を決定し、送信用情報の送信先の車両の範囲(例えば、同一車種の車両に所定の送信用情報を送信するか否か)を決定し、送信用情報の送信時期を決定する。これらの決定については図7及び図8を用いて後述する。これらの決定に従ってセキュリティ情報生成部850は、送信用情報の送信の制御を行う、つまり通信部810に送信先の車両1010へと送信用情報を送信させる。
上述のような統計処理、多変量解析、又は機械学習等を適用する手法では、予め定めたルールに照らす手法では異常と判定されない現象、例えば攻撃予兆、未知の攻撃パターンに係る攻撃フレームの発生等が多段階の異常度によって表され、この多段階の異常度に応じたより柔軟で適切な対処が可能となる。
[2.4 車両ログ情報]
図6は、車両異常検知サーバ80が備える車両ログ格納DB870に格納される車両ログ情報のデータ構成の一例を示す図である。図6に示すように車両ログ情報は、各カーメーカーが製造する車両について、車種と、車種毎に車両を識別するための車両IDと、車両に搭載される各ECUを識別するためのIDと、その各ECUが送信するフレームについてのフレーム情報であるログ(図ではCANログと表記)との関連付けを表わす。この車両ログ情報は、車両異常検知サーバ80が各車両1010から取得したログを集積することで生成されている。ここでCANログは、例えばCANのフレームの識別情報(ID(メッセージID))、フレームのDLCが示すデータ長、フレームのデータフィールドの内容等のフレームに含まれる情報、及びフレームの送信周期(受信周期)等のフレームに関する情報を示すデータであり、各車両1010から受信したログに基づく。なお、CANログが示す情報は、ログが示す上記の情報に基づく、CANのフレームについての特徴量(例えば特徴ベクトル等)を正規化したものであってもよい。
ログ分析部840は、この車両ログ情報の分析によって、各車両1010の車載ネットワークで受信されたフレームについての異常度の算定等を行うことで各車両1010における異常の発生の有無の判定を行う。
[2.5 車両情報DB]
図7は、車両異常検知サーバ80が備える車両情報DB860のデータ構成の一例を示す図である。図7に示すように車両情報は、車種毎に、その車種の車両が搭載しているECUを識別するためのID(例えばECUの種別を識別するための型式等)と、そのECUが送信するフレームの種類を識別するためのID(CANのメッセージID)との対応を示す。車両情報は、車種毎にその車種の車両に搭載される全てのECUのIDと、その各ECUが送信するフレームに係るCANのメッセージIDとを含むが、説明の便宜上、図7では一部のECUのID及びそのECUが送信する一部のフレームのIDしか示していない。
図7の例における車両情報テーブル861は、車種Aの各車両について、ID「001」のECU及びID「002」のECUを備えること、並びにID「001」のECUはメッセージID「100」のフレームとメッセージID「101」のフレームとを送信すること及びID「002」のECUはCANのメッセージID「200」のフレームを送信することを示す。また、車両情報テーブル861はさらに、車種Bの各車両について、ID「001」のECU及びID「003」のECUを備えること、並びにID「001」のECUはメッセージID「110」のフレームとメッセージID「111」のフレームとを送信すること及びID「003」のECUはCANのメッセージID「301」のフレームを送信することを示す。なお、ECUのIDが共通であっても、異なる車種の車両に搭載されているものは同種のECUであるとは限らない。この場合、異なる車種間のECU IDの関連は、ECU情報DB865を参照することにより取得される。また、例えば事前にECU情報DB865を参照して、各車種で用いられるECU IDを車両異常検知サーバ80で用いる統一ECU IDに変換してから処理することにより、図7に示す車両情報DBでは同じECU IDのECUは車種が異なっても同種(同一種別)のECUとして扱えるようにしてもよい。
車両情報テーブル861及びECU情報DB865を参照することで、ログ収集対象車両選出部855は、特定のECUを搭載する車種を選出することができる。また、車両情報テーブル861を参照することで、セキュリティ情報生成部850は、異常度に応じた一定条件下で、ある車両で異常なフレームを送信したECUと同種のECUを搭載する車種の車両を、セキュリティに関する送信用情報の送信先に含ませることができる。
図8は、車両異常検知サーバ80の車両情報DBにさらに含まれる、車種別情報のデータ構成の一例を示す図である。図8に示すように、車種別情報は各カーメーカーの各車種についての、異常検知の対象となり得る車両の車両IDを地域別に示す情報である。なお、地域とは、例えば対象車両の登録地域、通信の結果最後に車両の所在が確認された地域、製造場所(製造工場)、仕向地である。車種別情報は本実施の形態における車両IDリストの例である。
[2.6 攻撃フェーズ情報]
図9は、セキュリティ情報DB890が保持する攻撃フェーズ情報の一例を示す。攻撃フェーズ情報は、攻撃フレームの送信による車両への攻撃を複数段階(ここでは4つの攻撃フェーズ)に区別し、各攻撃フェーズについてアラートレベルを対応付けた情報である。図9の例では、攻撃フェーズ情報は、攻撃フェーズ及びその攻撃フェーズの攻撃が検知された数(検知数)Nの組み合わせと、5段階の各アラートレベルとを対応付けている。この検知数は、累積的な検知数であってもよいし、一定の単位期間における検知数であってもよい。アラートレベルは、セキュリティ上の重要度を示し、ログ収集対象車両選出部855がログ収集対象車両を選出する際に用いられる。また、車両異常検知サーバ80が車両に送信する、セキュリティに関する送信用情報に係る送信態様を区別するために用いられる指標でもある。
この例では、攻撃フェーズは攻撃予兆と攻撃とに大別されている。4つの攻撃フェーズのうち、深刻度の低い方から3つのフェーズ1~3が攻撃予兆の攻撃フェーズである。また、最も深刻度の高いフェーズ4が攻撃の攻撃フェーズである。なお、攻撃は深刻度が最も低いフェーズ1から順に実行されることが多いと予想されるが、必ずしもこの順に実行されるとは限らない。
以下、攻撃フェーズ毎に、想定される攻撃予兆又は攻撃の手法、攻撃フェーズの判別手法の例、及びアラートレベルについて説明する。
[2.6.1 フェーズ1]
一般に車載ネットワークで用いられるCANのフレーム(メッセージ)に係る仕様(例えばメッセージID毎のフレームの内容、用途等)は非公開である。このため、攻撃者は、まず攻撃の準備として、1台の車両に対して、診断ポート(例えば図4の診断ポート710)を介して、様々なCANのフレーム(メッセージ)を車載ネットワークに不正に注入し、車両の挙動を確認しながらCANのフレームに係る仕様を解析する。この解析行為は、所望の攻撃メッセージのCANのフレームに係る仕様のうち、少なくとも攻撃に利用する部分が解明するまで、トライアルアンドエラーを繰り返すことで行われる。また、CANのフレームに係る仕様の解析とは別にCANバスに攻撃フレームを送り込むための、車載ネットワークの脆弱性を探す。攻撃フェーズ情報では、この攻撃の準備の段階を、攻撃予兆のフェーズ1と定めている。
セキュリティ情報生成部850は、例えば、異常の発生を示す異常度が算定されたフレームのメッセージIDが、車載ネットワークの正常状態において車載ネットワークに接続された各ECUが送信すると規定されているメッセージID以外のメッセージIDであった場合、又は、そのフレームの受信間隔(送信間隔)が正規のフレームのものと異なる場合等において、攻撃予兆のフェーズ1であると判別し得る。また、セキュリティ情報生成部850は、例えば、異常の発生を示す異常度が算定されたフレームのメッセージIDが、診断コマンドであることを示すメッセージIDであって、フェーズ1より(深刻度が)高いフェーズに該当しないIDである場合に、攻撃予兆のフェーズ1であると判別し得る。診断コマンドとは、例えば、予め診断ポートに接続される正規の診断ツールが利用するものとして規定された特定のメッセージID(診断用メッセージID)を含むフレームである。なお、攻撃予兆のフェーズ1の判別手法として、他のいかなる方法を用いてもよい。
図9に例示される攻撃フェーズ情報では、フェーズ1は、検知数と関係なくアラートレベルの「1」と対応付けられている。このため、セキュリティ情報生成部850は、フェーズ1と判別した場合に、アラートレベルの「1」に対応する送信態様で、送信用情報の車両への送信の制御を行う。
[2.6.2 フェーズ2]
ある車種の車両の車載ネットワークに係る機器又はECUに脆弱性が見つかれば、攻撃者は、その脆弱性を突いて例えばその機器又はECUを制御下に置くことを試みる。例えば、ヘッドユニットはアプリケーションプログラム等のソフトウェアを外部ネットワークからダウンロード可能であり、ヘッドユニットには、手当てされていない脆弱性があるとする。この場合、攻撃者は例えば、ヘッドユニット向けのマルウェア(不正動作を行う悪意のあるソフトウェア等)を偽装して公開し、ユーザに意図せずマルウェアをダウンロードさせて脆弱性を突こうとする。また、攻撃者はヘッドユニットに接続する外部機器を介して、その脆弱性を突くかもしれない。例えば、ヘッドユニットがスマートフォンと接続できるのであれば、攻撃者は、インターネット上のサイト等ににマルウェアを偽装して公開し、ユーザに意図せずスマートフォン上にダウンロードさせる。そしてユーザがスマートフォンとヘッドユニットを接続した際に、スマートフォン上のマルウェアからヘッドユニットの脆弱性を突くかもしれない。そして攻撃者は、ヘッドユニットの脆弱性を突いて、CANバスに不正アクセスするための攻撃基盤を構築するために、マルウェアにより、ヘッドユニットにおけるソフトウェア(ファームウェア等)を不正に書き換えてヘッドユニットを制御下に置くと考えられる。攻撃フェーズ情報では、この攻撃の準備の段階を、攻撃予兆のフェーズ2と定めている。また、V2X(車車間通信(V2V:Vehicle to Vehicle)及び路車間通信(V2I:Vehicle to Infrastructure))用のECU(図4の例ではECU302)のような外部ネットワークと直接接続するECUに脆弱性があれば、攻撃者は、ヘッドユニット等を介さずに、そのECUを乗っ取って不正にそのECUのソフトウェアを書き換えるかもしれない。これらのCANバスに不正にアクセスできる状態にする行為の段階も、攻撃予兆のフェーズ2に該当する。即ち、ECUのソフトウェア(ファームウェア等)を不正に書き換える処理を行う段階を、攻撃予兆のフェーズ2としている。
セキュリティ情報生成部850は、例えば、異常発生を示す異常度が算定されたフレームのメッセージIDが、ECUのファームウェア更新用のフレームのIDとして規定されているメッセージIDであった場合等において、攻撃予兆のフェーズ2であると判別し得る。なお、攻撃予兆のフェーズ2の判別手法として、他のいかなる方法を用いてもよい。例えば、ファームウェア更新用のフレームが適切な更新時期でないのにCANバスに流れたことを確認する方法を用いてもよい。
図9に例示される攻撃フェーズ情報では、フェーズ2は、検知数が1の場合にアラートレベルの「2」と、検知数が1を超える場合にアラートレベルの「3」と対応付けられている。このため、セキュリティ情報生成部850は、フェーズ2と判別した場合においてそのフェーズ2が検知された数が1であればアラートレベルの「2」に対応する送信態様で、フェーズ2が検知された数が複数であればアラートレベルの「3」に対応する送信態様で、送信用情報の車両への送信の制御を行う。
[2.6.3 フェーズ3]
攻撃予兆のフェーズ2でマルウェアがECUのソフトウェアを不正に書き換える等により、ある特定車種の車両の車載ネットワークに攻撃基盤が構築された後において、マルウェアは、マルウェア自身が現在アクセスしている車両の車種等の情報を確認するために、診断コマンド等をCANバスに送信することで、車両ID、ECU情報(ECU ID、ECUの名称等)等を取得しようとする。攻撃フェーズ情報では、この段階を、攻撃予兆のフェーズ3と定めている。
セキュリティ情報生成部850は、例えば、異常の発生を示す異常度が算定されたフレームのメッセージIDが、車両ID、ECU情報等の取得のための診断コマンドのメッセージIDである場合に、攻撃予兆のフェーズ3であると判別し得る。なお、攻撃予兆のフェーズ3の判別手法として、他のいかなる方法を用いてもよい。
図9に例示される攻撃フェーズ情報では、フェーズ3は、検知数が1の場合にアラートレベルの「3」と、検知数が1を超える場合にアラートレベルの「4」と対応付けられている。このため、セキュリティ情報生成部850は、フェーズ3と判別した場合においてそのフェーズ3が検知された数が1であればアラートレベルの「3」に対応する送信態様で、フェーズ3が検知された数が複数であればアラートレベルの「4」に対応する送信態様で、送信用情報の車両への送信の制御を行う。
[2.6.4 フェーズ4]
攻撃予兆のフェーズ3でマルウェアが車種等の情報を取得した後において、マルウェアが攻撃者の不正サーバにアクセスし、不正サーバから、該当車種に対応するCANの攻撃用のフレームの送信手順等を示すCAN攻撃セットを受信する。CAN攻撃セットは、例えば、車種毎の車両の車載ネットワークに対して車両の走行等を不正に制御するためのフレーム群の内容及び送信順序等を示すように攻撃者が準備したものである。マルウェアは、CAN攻撃セットに基づいて、CANバスに攻撃フレームを送信することで、攻撃を遂行し、車両を不正制御する。攻撃フェーズ情報では、この段階を、攻撃のフェーズ4と定めている。
セキュリティ情報生成部850は、例えば、異常の発生を示す異常度が算定されたフレームのメッセージIDが、そのフレームが受信された車両において重要な制御用のフレームのIDとして規定されている複数のメッセージIDのいずれかに該当する場合に、攻撃のフェーズ4であると判別し得る。重要な制御用のフレームは、重要性に鑑みて任意に規定可能であるが、例えば走行に関連するフレームである。ここでいう走行に関連するフレームとは、例えば、「走る」、「曲がる」、「止まる」等の車両の走行及び挙動の制御に関連する駆動系及びシャーシ系のECU(例えばエンジンECU、トランスミッションECU、ブレーキECU、ステアリングECU等)により送信されることが規定されているフレームである。なお、攻撃のフェーズ4の判別手法として、他のいかなる方法を用いてもよい。例えば、車両内のアクチュエータの制御指示を示すフレームの内容と、アクチュエータの作用を反映した車両の状態を示すフレームの内容とを比較することで、攻撃がなされているか否かを判別する方法を用いてもよい。
図9に例示される攻撃フェーズ情報では、フェーズ4は、検知数が1の場合にアラートレベルの「4」と、検知数が1を超える場合にアラートレベルの「5」と対応付けられている。このため、セキュリティ情報生成部850は、フェーズ4と判別した場合においてそのフェーズ4が検知された数が1であればアラートレベルの「4」に対応する送信態様で、フェーズ4が検知された数が複数であればアラートレベルの「5」に対応する送信態様で、送信用情報の車両への送信の制御を行う。
[2.7 ECU情報DB]
図10は、車両異常検知サーバ80備えるECU情報DB865に含まれるECU ID変換テーブルのデータ構成の一例を示す図である。同一種類のECUであっても、カーメーカーや車種によってECUを識別するためのECU IDが異なっていることがある。図10に示すECU ID変換テーブルは、ある車種のECU IDを他の車種のECU IDに変換するためのテーブルである。図10のECU ID変換テーブルでは、各行が同じ種類のECUであることを示す。例えば、図10のECU ID変換テーブルによると、車種AにおいてECU ID「001」で識別されるECUは、車種BにおいてもECU ID「001」で識別され、車種C、車種Dにおいては種類が同一のECUが搭載されていないことが分かる。また、車種AにおいてECU ID「002」で識別されるECUは、車種BにおいてはECU ID「104」で識別されるECUであり、車種CではECU ID「012」で識別されるECUであり、車種Dには非搭載であることが分かる。ログ収集対象車両選出部855は、ある種類のECUを搭載する車種を選出する際にこのECU ID変換テーブルを参照することで、車種間で異なるIDで識別される同種のECUを搭載する車種を漏れなく選出することができる。同種のECUは、複数の車種の車両に搭載され得る。相違する車種の各車両に搭載された、同種のECUそれぞれが送信するフレームは、フレームのメッセージIDが相違し得るだけで、フレームのその他の内容(DLCが示すデータ長、データフィールドのデータ等)、フレームの送信周期等は共通である。
また、ECU情報DB865には、図11にデータ構成の一例を示すメッセージID変換テーブルが含まれてもよい。データフィールドのデータが示す情報に応じたフレームの種類が共通であっても、カーメーカーや車種によってこのフレームの種類を識別するためのメッセージIDが異なっていることがある。図11に示すメッセージID変換テーブルは、ある車種のメッセージIDを他の車種のメッセージIDに変換するためのテーブルである。図11のメッセージID変換テーブルでは、各行が同じ種類のフレームであることを示す。例えば、図11のメッセージID変換テーブルによると、車種AにおいてメッセージID「000」で識別されるフレームは、車種B、車種C、車種DのいずれにおいてもメッセージID「000」で識別されることが分かる。また、車種AにおいてメッセージID「001」で識別されるECUは、車種BにおいてはメッセージID「010」で識別されるフレームであり、車種CではメッセージID「002」で識別されるフレームであり、車種DではメッセージID「005」で識別されるフレームであることが分かる。ログ収集対象車両選出部855は、ある種類のフレームを送信するECUを搭載する車種を選出する際にこのメッセージID変換テーブルを参照することで、車種間で異なるIDで識別される同種のフレームを送信するECUを搭載する車種を漏れなく選出することができる。図11は、本実施の形態における第二の車両情報の例である。
また、ECU情報DB865は、図12に例示する車種別メッセージID-ECU関連付けテーブルを含んでもよい。ある車種のあるフレーム情報から算出された異常度が一定のレベルを超えるため、異常が発生していると判定された場合、この車種別メッセージID-ECU関連付けテーブルを用いることにより当該フレームのメッセージIDから関連するECUのECU IDを取得することができる。例えば図12に示す種別メッセージID-ECU関連付けテーブルによれば、車種Aのあるフレームのフレーム情報の異常度が高い場合に、当該フレームのメッセージID(図中で見出し「Msg.ID」の右欄)が「001」であったときは、当該フレームに関連している、すなわち異常に関連していると推定されるECUはECU ID「002」のECUとECU ID「004」のECUである。ここで関連するECUとは、例えば当該メッセージIDのフレームを送信又は受信するECUであってもよい。車種別メッセージID-ECU関連付けテーブルは、本実施の形態における、第一の車両情報の例である。
また、ECU情報DB865は、図13に例示する車種別ECU関連付けテーブルを含んでもよい。ある車種のあるフレームに関する情報から算出された異常度が一定のレベルを超えるため、異常が発生していると判定された場合、この車種別ECU関連付けテーブルを用いることにより当該フレームを送信したECUに関連するECUのECU IDを取得することができる。例えば図13に示す車種別ECU関連付けテーブルによれば、車種AのECU ID「001」に関連するECUのECU IDは、ECU ID「002」及び「004」である。ここで関連するECUとは、当該フレームの送信先であったり、当該ECUとフレームの送受信を行うECUであったり、共通の機能を実現するためのECUであってもよい。車種別ECU関連付けテーブルは、本実施の形態における関連情報処理装置情報の例である。
[2.8 ゲートウェイの構成]
図14は、車両1010の車載ネットワークにおけるゲートウェイ90の機能構成例を示すブロック図である。同図に示すように、ゲートウェイ90は、フレーム送受信部901と、フレーム解釈部902と、不正フレーム検知部903と、ルール保持部904と、フレーム生成部905と、転送制御部906と、転送ルール保持部907と、鍵処理部920と、鍵保持部921と、フレームアップロード部950と、不正検知通知部930と、更新処理部940とを機能的構成要素として含む。これらの各構成要素は、例えばゲートウェイ90における通信回路、メモリに格納された制御プログラムを実行するプロセッサ又はデジタル回路等により実現される。例えば、フレームアップロード部950及び更新処理部940は、車両異常検知サーバ80と通信するための通信回路等により実現される。
フレーム送受信部901は、バス10、バス20、バス30、バス40、バス50、バス60、及びバス70のそれぞれに対して、CANプロトコルに従ったフレームを送受信する。フレーム送受信部901は、バスからフレームを1bitずつ受信し、フレーム解釈部902に通知する。また、フレーム生成部905より通知を受けた転送先のバスを示すバス情報及び送信用のフレームに基づいて、そのフレームの内容を、バス10、バス20、バス30、バス40、バス50、バス60、及びバス70のうち転送先のバスに、1bitずつ送信する。
フレーム解釈部902は、フレーム送受信部901よりフレームの値を受け取り、CANプロトコルで規定されているフレームフォーマットにおける各フィールドにマッピングするよう解釈を行う。フレーム解釈部902は、受信されたフレームの各フィールドの情報を不正フレーム検知部903へ通知する。なお、フレーム解釈部902は、受け取ったフレームがCANプロトコルに則っていないフレームと判断した場合は、エラーフレームを送信するようにフレーム生成部905へ通知する。また、フレーム解釈部902は、他のECUが送信したエラーフレームを受信した場合、つまり受け取ったフレームにおける値からエラーフレームであると解釈した場合には、それ以降はそのフレームを破棄する、つまりフレームの解釈を中止する。
不正フレーム検知部903は、ルール保持部904が保持する、不正フレームか否かの判定用(不正フレームの検知用)のルール又はアルゴリズム(例えば不正検知用プログラム等)を示す情報(不正検知用情報)を参照し、受信されたフレームが不正フレームか否かを判定する。不正フレームの検知用のルール又はアルゴリズムを示す情報の一例としては、受信が許可されるCANのフレーム(メッセージ)の条件(特定のための情報)を列挙したホワイトリスト、受信が許可されない条件を列挙したブラックリスト等が挙げられる。不正フレームは、不正フレームの検知用のルールに適合しないフレームである。不正フレームと判定した場合には、不正フレーム検知部903は、不正フレームが送信されている途中において、不正フレームが送信されているバスに、エラーフレームを送信することで不正フレームを無効化するよう制御する。つまり不正フレームが検知された場合に、不正フレーム検知部903は、フレーム送受信部901にエラーフレームを送信させることで、不正フレームを無効化する。また、不正フレーム検知部903は、不正フレームか否かの判定結果を、フレーム解釈部902へ通知する。不正フレーム検知部903で不正フレームと判定されなかった場合にフレーム解釈部902は、そのフレームの各フィールドの情報を転送制御部906に通知する。また、不正フレーム検知部903は、不正フレームと判定した場合(不正フレームを検知した場合)にその不正フレームについての情報(例えば、不正検知の旨を示す情報、又は、不正検知の旨及び不正フレームの内容を示す情報)を不正検知通知部930に通知する。なお、不正フレーム検知部903は、不正フレームと判定した場合に不正フレームの内容を示す情報を十分に取得するために、不正フレームを無効化するエラーフレームの送信を、不正フレームの特定部分(例えばデータフィールド)が受信されるまで待ってから速やかに行うこととしてもよい。
転送制御部906は、転送ルール保持部907が保持する転送ルール情報に従って、受信したフレームのID(メッセージID)、及び転送元バス(つまりそのフレームを受信したバス)に応じて転送先のバスを選択し、転送先のバスを示すバス情報と、転送されるべきフレームの内容(例えばフレーム解釈部902より通知されたメッセージID、DLC(データ長)、データ(データフィールドの内容)等)をフレーム生成部905へ通知して、送信を要求する。
転送ルール保持部907は、バス毎のフレームの転送についてのルールを示す転送ルール情報を保持する。転送ルール情報は、転送元となり得る各バスについて、そのバスで受信された転送すべきフレームのメッセージIDと転送先のバスとを示す。また転送ルール情報は、各バスが、フレーム内容を暗号化すると規定されたバスか否か、及び、フレームにMACが付与されると規定されたバス(MAC対応ECUが接続されたバス)か否かを示す情報を含む。この情報を参照することで転送制御部906は、フレームの転送に際して、暗号化及びMACの付与のそれぞれに関する処理を行う。例えば、転送制御部906は、転送先がMACに対応している場合は、鍵保持部921が保持しているMAC鍵を用いて鍵処理部920にMACを生成させ、フレームにMACを付与して転送するように制御する。また、転送制御部906は、転送元が暗号化に対応している場合は、鍵保持部921が保持している、転送元のバスに接続された各ECUと共有している暗号鍵を用いて、鍵処理部920にフレームの内容を復号させる。そして、転送先が暗号化に対応している場合は、転送制御部906は、鍵保持部921が保持している、転送先のバスに接続された各ECUと共有している暗号鍵を用いて、鍵処理部920にフレームの内容を暗号化させて転送するよう制御する。鍵処理部920では、フレームの内容の暗号化、及びフレームの内容等に基づくMACの生成のそれぞれについて、いかなる方式を用いてもよい。MACは、例えばフレームのデータフィールド内の一部の値に基づいて生成されてもよいし、その値と、他のフィールドの値又はその他の情報(例えばフレームの受信回数をカウントするカウンタ値等)を結合したものに基づいて生成されてもよい。MACの計算方法としては、例えばHMAC(Hash-based Message Authentication Code)、CBC-MAC(Cipher Block Chaining Message Authentication Code)等を用いることができる。
フレーム生成部905は、転送制御部906からの送信の要求に従い、転送制御部906より通知されたフレームの内容を用いて送信用のフレームを構成し、その送信用のフレーム及びバス情報(例えば転送先のバスの識別子等)をフレーム送受信部901へ通知する。
不正検知通知部930は、不正フレーム検知部903が不正フレームを検知した場合に不正検知の旨を運転者等に通知するために、不正フレームについての情報(例えば、不正検知の旨を示す情報、又は、不正検知の旨及び不正フレームの内容を示す情報)をヘッドユニットに通知する制御(フレーム送受信部901の制御等)を行う。また、不正検知通知部930は、不正フレーム検知部903が不正フレームを検知した場合に、例えば、不正検知の旨を示す情報と、その不正フレームについての情報とを含ませたログ情報等を、車両異常検知サーバ80に通知する制御を行ってもよい。この不正検知の旨により不正フレームを不正でないフレームと区別するログ情報は、例えば、車両異常検知サーバ80において教師あり学習に用いられ得る。また、不正検知の旨を示す情報は、車両異常検知サーバ80によって例えば各種通知(例えばカーメーカー、ECUベンダ等といった各種の送信先への送信等)のためにも利用され得る。
更新処理部940は、ルール保持部904が保持している不正フレームの検知用のルール又はアルゴリズムを示す情報(ホワイトリスト、ブラックリスト等)を、車両異常検知サーバ80から取得される情報に基づいて更新する。
フレームアップロード部950は、フレーム送受信部901によりいずれかのバスから受信されたフレームを逐次取得し、受信されたフレームについてのフレーム情報(例えばフレームの内容、受信間隔、受信頻度等)を示すログをログ送信判定部960による判定に基づき車両異常検知サーバ80に送信(アップロード)する。フレームアップロード部950は、ログに、ゲートウェイ90を搭載している車両の識別情報(車両ID)を含める。また、フレームアップロード部950は、ログに、その他の各種情報(例えば車両状態情報、車両の位置の情報等)を含めてもよい。フレームアップロード部950は、受信されたフレームについての情報として、車両異常検知サーバ80で統計処理、機械学習等を行う場合に取り扱い易いように、フレームの内容、受信間隔、受信頻度等を加工する加工処理を施してもよい。ここで、フレームの受信間隔は、例えば、そのフレームの受信時刻と、そのフレームと同一IDのフレームが前回受信された時刻との差である。また、フレームの受信頻度は、例えば、一定の単位時間において、そのフレームと同一IDのフレームが受信された数である。この加工処理は、例えば、フレームに関するデータの整形、データの分析(主成分分析等を含む多変量解析等)に係る処理である。加工処理は、例えば、フレームの内容、受信間隔、受信頻度等の特徴から特徴量を抽出し、正規化等を行い、特徴量の情報量の縮約を行うこと等である。特徴量の情報量の縮約は、例えば特徴量を各成分としての特徴ベクトルで表し、車両異常検知サーバ80と連携して得た情報に基づいて、特徴ベクトルの次元数を主成分分析で削減すること等により実現される。また、フレームアップロード部950は、例えば車両異常検知サーバ80とのトラフィック量を削減すべく、無条件で又は通信状況に応じて、ログを圧縮してから送信してもよいし、一部のIDのフレーム、例えばログ送信判定部960により指示されるIDのフレームだけについてのフレーム情報をログに含めてもよい。
ログ送信判定部960は、車両異常検知サーバ80からの送信リクエストに基づき、車両異常検知サーバ80にログを送信するかどうかを決定する。車両異常検知サーバ80からの送信リクエストを受けた場合、一定の期間、フレーム送受信部901がバスからフレームを受信する毎に、そのフレームについてのフレーム情報を含むログを車両異常検知サーバ80に送信することとしてもよいし、複数のフレームが受信された段階でその各フレームについての情報を含むログ情報を車両異常検知サーバ80に送信することとしてもよい。但し、バスから受信されたフレームについてのフレーム情報を、迅速に車両異常検知サーバ80へと伝えると、そのフレームが異常であるか否かを車両異常検知サーバ80に迅速に検知させて迅速な対処を可能にし得る。また、ログ送信判定部960は、フレーム送受信部901がバスから受信したフレームのうち全てのフレームについてのフレーム情報ではなく、車両異常検知サーバ80からの送信リクエストで指示された1つ又は複数のIDのフレームだけについてのフレーム情報をログに含めるようフレームアップロード部950に指示してもよい。なお、送信リクエストで特定されるのは、フレームのIDではなく当該フレームの送受信に関連するECU IDであってもよい。この場合、ログ送信判定部960は、車両異常検知サーバ80からの送信リクエストで特定されているECU IDのECUが送受信するフレームのメッセージIDを、ログ情報送信対象のフレームIDとしてフレームアップロード部950に通知する。
なお、車両異常検知サーバ80から送信用情報(アラート、制御情報等)の送信がなされた場合に対応して、ゲートウェイ90は、その送信用情報を受信し、送信用情報に従って、必要な情報をバスを介して予め定められたECUに送信する等によって、運転者又は周辺車両に対する警告の提示、車両1010の走行の制御、機能の縮退の制御等を実現させる。
[2.9 車両との連携による車両異常検知サーバでの異常検知]
次に、本実施の形態における車両異常検知システムにおいて、上述のように構成される車両異常検知サーバ80と車両1010との連携による異常検知までの処理について説明する。
図15は、車両1010との連携による車両異常検知サーバ80での異常検知までの処理手順の一例を示すシーケンス図である。図15に示す例では、主として、車両1010の一台が、搭載する車載ネットワークで送受信されたフレームについてのフレーム情報(この例では、フレームについての情報を加工処理して得られた特徴ベクトル)を含むログを車両異常検知サーバ80に送信し、車両異常検知サーバ80で、フレームの異常度の算定等の処理(異常検知処理)が行われる。具体的には、車両1010のゲートウェイ90が、他のECUが送信する一つのフレームを車載ネットワークのバス経由で受信する際の動作で行われる処理である。この例は車両1010の一台(例えば車両1010a)がログを車両異常検知サーバ80に送信する場合を用いて説明するが、車両異常検知サーバ80に対しては、その他の車両1010(車両1010b、1010c、1010d、1010e、1010f等)も同様にログを送信する。以下、図15に沿って説明する。
車両1010の車載ネットワークにおけるバス10に接続された1つのECU(例えばエンジンECU100、トランスミッションECU101等)がバス10にCANのフレームを送信し始める(ステップS101)。
車両1010のゲートウェイ90では、ステップS101で送信されているフレームをバス10から受信する(ステップS102)。
ゲートウェイ90は、ステップS101でフレームが送信されている間において、不正フレーム検知部903により、ステップS102で受信したフレームが不正か否かについて、不正フレームの検知用のルール又はアルゴリズムを示す情報を参照することで、判定される(ステップS103)。ステップS103で、不正と判定した場合(ステップS103でYES)には、ゲートウェイ90では、ステップS101で送信され始めたフレームの送信が完了する前に、フレーム生成部905で生成されたエラーフレームを送信して不正フレームを無効化する(ステップS104)。なお、フレームを送信していたECUは、バス10を介してこのエラーフレームを受信すると(ステップS105でYES)、当該フレームの送信を中断する(ステップS106)。また、バス10に接続された他のECUも、このエラーフレームを受信すると、ステップS101で送信され始めていたフレームの受信を中止する。
ゲートウェイ90は、ステップS103で不正と判定しなかった場合(ステップS103でNO)に、ステップS104でのエラーフレームの送信後に、車両異常検知サーバ80から送信リクエストを受信しているかを確認する(ステップS116)。送信リクエストを受信していなかった場合(ステップS116でNO)、当該車両1010は車両異常検知サーバ80によりその時点での監視の対象として選択されていない。したがってゲートウェイ90は、フレーム情報の車両異常検知サーバ80への送信は行わずにフレーム転送処理(ステップS110)に進む。また、送信リクエストを受信していた場合(ステップS116でYES)、ステップS102で受信したフレームの内容、受信間隔、受信頻度等に基づいて特徴量を特定(算出)する(ステップS107)。
続いてゲートウェイ90では、フレームアップロード部950により、ステップS107で算出されたフレームについての特徴量に基づいて加工処理が行われる(ステップS108)。フレームアップロード部950は、加工処理の結果として得た、当該フレームについての特徴ベクトル(フレーム情報)を含むログを、車両異常検知サーバ80に送信する(ステップS109)。
また、ゲートウェイ90は、受信したフレームがステップS103で不正と判定された場合を除いて、転送制御部906によって、フレームの転送(転送ルール情報に基づいてフレームの転送を行う処理)が行われる(ステップS110)。図15の例では、ステップS102で受信されたフレームが、このフレーム転送処理によりバス20に転送され、バス20に接続されたブレーキECU200又はステアリングECU201が転送されたこのフレームを受信する(ステップS111)。
車両異常検知サーバ80では、異常検知のための監視の対象となる車両を選出し(ステップS114)、選出された対象車両に対してログの送信リクエストを送信する(ステップS115)。車両の選出については図16を用いて後述する。また、ゲートウェイ90から、車両1010の車載ネットワークで送受信されたフレームについての特徴ベクトル(フレーム情報)を含むログを受信する(ステップS112)。そして、車両異常検知サーバ80は、受信した特徴ベクトルを含むログを利用して、異常検知処理を行う(ステップS113)。異常検知処理については、図17を用いて後述する。
[2.10 監視対象車両の選出処理]
図16は、車両異常検知サーバ80における異常検知のための監視の対象となる車両の、平常時の選出処理(図15のステップS114)の一例を示すフローチャートである。以下、図16に沿って車両の選出処理について説明する。
車両異常検知サーバ80では、ログ収集対象車両選出部855が、車種毎に監視対象、つまり異常判定に用いるフレーム情報の送信リクエストの対象となる車両(以下、対象車両という)の選出に用いるインデックスを持ち(ステップS1601)、このインデックスを用いて車両情報DBが保持する車種別情報(図8)を参照して対象車両の車両IDを決定する(ステップS1602)。また、一定の時間が経過してインデックスの更新のタイミングになった場合(ステップS1603)、ログ収集対象車両選出部855は、インデックスを更新し(ステップS1604)、再度車種別情報を参照して対象車両の車両IDを決定する(ステップS1602)。
このようにフレーム情報を送信させる車両を選出することで、監視対象の車両を標本抽出していることになり、全車両がフレーム情報を送信するよりも、ネットワーク81の混雑、及び車両異常検知サーバ80の過負荷の発生が抑えられる。
なお、対象車両の選出に用いられるインデックスの個数、つまりは同時期にフレーム情報を車両異常検知サーバ80に送信させる車両1010の台数は、車種毎に複数存在してもよく、例えば各車種の総台数に応じた個数のインデックスが存在してもよい。また、通信トラフィックが混雑している場合には対象車を限定し、混雑していない場合には対象車を拡大するなど、混雑具合により変更されてもよい。これにより、車両異常検知システムによるネットワーク81のトラフィックの増加が抑えられる。また、車両異常検知サーバ80が有する計算リソースの余裕に応じて変更されてもよい。
また、インデックスの更新は上記の例のような等値の加算又は減算によって行われてもよいし、乱数等に基づいた無作為の選択によるものであってもよい。
また、車両に関連する地域を加味して、ある地域から集中的、又は複数の地域から分散的に選択してもよい。
[2.11 異常検知処理]
図17は、車両異常検知サーバ80における異常検知処理(図15のステップS113)の一例を示すフローチャートである。以下、図17に沿って、異常検知処理について説明する。
車両異常検知サーバ80では、ログ分析部840が、各車両1010から送信されたログ(各車両の車載ネットワークで送受信されたフレームについてのフレーム情報の時系列データ)に基づいて、統計的異常検知処理を実行する(ステップS201)。統計的異常検知処理は、各車両1010から取得したログ(つまりログ収集部830が収集して車両ログとして車両ログ格納DB870に格納されたログ)を参照して、車載ネットワークで送受信されたフレームについてのフレーム情報の統計処理、多変量解析等を行うことで、異常状態との比較に用いることのできる所定モデルの構築又は機械学習による所定モデルの更新を行う処理を含む。また、統計的異常検知処理は、過去に各車両1010の車載ネットワークで送受信されたフレームに基づくその所定モデルと、ある車両(ここでは車両1010aと想定する)から最後に取得したログが含むその車両の車載ネットワークで受信されたフレームについてのフレーム情報(特徴ベクトル等)とを用いた演算処理(比較等)により、その車両1010aで受信されたフレームの異常度について算定する処理を含む。この演算処理は、例えば、外れ値検出、時系列上の急激な変化を検出する変化点検出等のための処理を含み得る。ログ分析部840は、これらの処理を実行してフレームの異常度を算定する。なお、車両異常検知サーバ80で、異常度の算定の対象となるフレームは、車両1010aの車載ネットワークで送受信されたフレームに限定されるものではなく、他の車両1010の車載ネットワークで受信されたフレームでもよい。
次に車両異常検知サーバ80では、ログ分析部840によって、ステップS201の統計的異常検知処理でフレームについて算定された異常度が、予め定められた閾値より高いか否かにより、フレームが異常であるか否かの判定(異常検知)が行われる(ステップS202)。
ステップS202でフレームが異常であると判定した場合(ステップS202でYES)には、ログ分析部840はさらに、異常と判定したフレームの識別情報(メッセージID)等に応じて、例えば攻撃予兆、攻撃等のどの段階の攻撃フェーズであるかを判別することにより、攻撃フェーズ情報(図9参照)を用いてアラートレベルの判定(つまり送信用情報の内容、送信時期、送信先の車両の範囲等といった送信態様の決定)を行い、決定されたアラートレベルに従った送信態様でセキュリティ情報生成部850から送信用情報(アラート、制御情報等)の送信を行わせる(ステップS203)。
次に車両異常検知サーバ80では、ステップS202での判定結果又はステップS201での統計的異常検知処理での更新後の所定モデルを表す情報が分析結果格納DB880に格納され、車両1010から最後に受信したログが車両ログ格納DBに格納される(ステップS204)。
また、ステップS202でフレームが異常であると判定した場合(ステップS202でYES)には、車両異常検知サーバ80では、ログ収集対象車両選出部855によって、異常と判定されたフレームの識別情報(メッセージID)等を用いて、異常検知の送信リクエストを送る追加調査対象車両が選定される(ステップS205)。追加調査対象車両の選定の処理については後述する。そして、選定された追加対象車両に対して、車両異常検知サーバ80からログの送信リクエストが送信される(ステップS206)。追加対象車両は1ないし複数台の車両1010であり、各対象車両について順次ログの送信リクエストが送られる。送信リクエストに応じて各車両からフレーム情報(特徴ベクトル情報)を含むログを受信すると(ステップS207)、これらのログに対してステップS201の統計的異常検知処理が実行される。
また、ステップS202でフレームが異常でないと判定した(ステップS202でNO)場合にも、車両異常検知サーバ80では、ステップS204と同様に、ステップS202での判定結果又はステップS201での統計的異常検知処理での更新後の所定モデルを表す情報が分析結果格納DB880に格納され、車両1010から最後に受信したログが車両ログ格納DBに格納される(ステップS208)。
なお、車両異常検知サーバ80における機械学習による所定モデルの更新は、例えば、ステップS201の統計的異常検知処理内ではなく、ステップS204又はステップS208において実行されてもよい。
[2.12 追加調査対象車両選定処理]
図18は、追加調査対象車両の選定の処理の手順例を示すフロー図である。
車両異常検知サーバ80での追加調査対象の車両の選定は、ログ収集対象車両選出部855が車両情報DB860及びECU情報DB865を参照して行う。この例に示す追加調査対象車両の選出には、異常が検知されたフレームのメッセージID、異常が検知されたフレームの送信元であるECUのECU ID、異常が検知されたフレームに対応するフレームのメッセージIDの、3種類の情報が用いられる。
図18のフロー図を参照すると、ログ収集対象車両選出部855は、メッセージIDによる追加調査対象の車両の探索が実施済みであるか否か判定する(ステップS1801)。メッセージIDによる探索が未実施である場合(ステップS1801でNO)、ログ収集対象車両選出部855は、車種別メッセージID-ECU関連付けテーブル(図12参照)を用いて、異常判定されたフレームのメッセージIDに関連するECU IDを取得する(ステップS1804)。
メッセージIDによる探索が実施済みである場合(ステップS1801でYES)又はステップS1804に続いて、ログ収集対象車両選出部855は、ECUとの関連による追加調査対象の車両の探索が実施済みであるか否か判定する(ステップS1802)。ECUとの関連による探索が未実施である場合(ステップS1802でNO)、ログ収集対象車両選出部855は、車種別ECU関連付けテーブル(図13参照)及び車両情報テーブル861(図7参照)を用いて、異常と判定されたフレームを送信したECUに関連するECU IDを取得する(ステップS1804)。
ECUとの関連による探索が実施済みである場合(ステップS1802でYES)又はステップS1805に続いて、ログ収集対象車両選出部855は、対応するメッセージIDによる追加調査対象の車両の探索が実施済みであるか否か判定する(ステップS1803)。対応するメッセージIDによる探索が未実施である場合(ステップS1803でNO)、ログ収集対象車両選出部855は、対応メッセージID変換テーブル(図11参照)及び車両情報テーブル861(図7参照)を用いて、異常判定されたフレームに対応するフレームを送信したECUのECU IDを取得する(ステップS1806)。
次にログ収集対象車両選出部855は、ECU ID変換テーブル(図10参照)を用いて、既に取得したECU IDのECUを備える車種の情報、及び当該ECUと対応するECUを備えるその他の車種の情報を取得する(ステップS1807)。
次にログ収集対象車両選出部855は、車種別情報(図8参照)を用いて、ステップS1807で取得した情報が示す各車種の地域別の車両リストを取得(ステップS1808)し、この車両リストに掲載されている車両を追加調査の対象車両として選出する(ステップS1809)。
上述のように、ログ収集対象車両選出部855は、検知された異常に関連するフレームに関する情報を用いて追加調査の対象車両を選出する。このようにして選出される車両1010は、異常が発生した車両と同様の脆弱性等を有する可能性が高い、つまり、異常と同じ異常が車載ネットワークで発生する可能性が高い。したがって、これらの車両1010を異常発生有無の追加調査の対象とすることで、早期で効率よく以上に対する対処を執ることが可能である。このように、ログ収集対象車両選出部855によって、検知された異常に関連するフレームに関する情報を用いて選出される車両1010は、本実施の形態における異常関連車両の例である。
なお、上記の説明では、ステップS1809で車種別情報を用いて各車種の地域別の車両リストが取得されているが、地域別に分けず全地域で一つの車種別の車両リストとして取得されてもよい。また、追加調査の対象車両は、車両リストに掲載されている全車両ではなくてもよい。対象車両は、例えば異常度の判定結果に応じて車両リストからさらに絞り込んで選出されてもよい。ここでの異常度の判定結果とは、例えばアラートレベルの判定(ステップS203)である。または、車両リストに掲載される車両の数、ネットワーク81の混雑状況、又は車両異常検知サーバ80の負荷の大きさに応じて変更されてもよい。
また、図18に示すフロー図では、3種類の情報を用いられているが、これに限定されない。例えばこれらの3種類の情報の一部のみが用いられてもよいし、さらに他の情報が用いられてもよい。
[2.13 車両異常検知サーバによる各車両の異常監視]
次に、本実施の形態における車両異常検知システムにおける、車両異常検知サーバ80による複数の車両の異常監視の流れを例を用いて説明する。図19は、車両異常検知サーバ80による車種Aの複数の車両(車両1010a、車両1010b、車両1010c)の異常監視のために行われる通信の概要を示すシーケンス図である。
このシーケンス図が示す時間軸の当初においては、車両異常検知システムは平常時である、すなわち、車両異常検知サーバ80において検知されている車両の異常はないと想定する。そして車両異常検知サーバ80では、異常検知のための監視の対象とする対象車両が選出される(ステップS1901)。この対象車両の選出は、例えば図16に示す車両選出処理の手順に沿って行われる。この例では、車両1010aが選出され、車両異常検知サーバ80から車両1010aにログの送信リクエストが送信される(ステップS1902)。ここまでの手順は、図15に示すステップS114及びS115に相当する。
リクエストを受信した車両1010aでは、ログ送信判定のタイミングにおいてログ送信判定を行い、車両1010aの車載ネットワークで送受信されていたフレームのフレーム情報、この例では特徴ベクトルをログとして車両異常検知サーバ80に送信する(ステップS1950)。この手順は、図15に示すステップS116及びS107からS109に相当する。
リクエストに応じて車両1010aから送信されたログ(特徴ベクトル)を受信した車両異常検知サーバ80では、特徴ベクトルが示す情報と、これまでに受信している情報に基づくモデルとから異常度を算出し、当該異常度が所定閾値を超えるか否かに基づいて異常の発生の有無を判定する異常検知処理が行われる(ステップS1903)。ここまでの手順は、図15に示すステップS112及びS113に相当する。
この異常検知処理で異常と判定されなかった場合、対象車の更新タイミングが来るまでステップS1901、S1902、S1950、S1903の手順が繰り返される。この例では、上記の一連の手順の繰り返しの間、車両1010aについて終始異常なしと判定されたものと想定して説明を進める。
一定の時間が経過して対象車両の更新タイミングになると、車両異常検知サーバ80では対象車の選出が再度行われる(ステップS1911)。この例では、この回の車両選出処理の結果、車両1010bが対象車両に選ばれ、車両異常検知サーバ80では、ステップS1901からステップ1903までと同様のステップS1911、S1912及びS1913が、車両1010bでは、車両1010aで行われたステップS1950と同様のステップS1960が行われる。これにより、リクエストに応じて車両1010bから送信されたログ(特徴ベクトル)を受信した車両異常検知サーバ80が、異常検知処理を行う。この例では、上記の一連の手順の繰り返しの間、車両1010bについて終始異常なしと判定されたものと想定して説明を進める。
さらに一定の時間が経過して対象車両の更新タイミングが再度来ると、車両異常検知サーバ80では対象車両の選出が再度行われる(ステップS1913)。この例では、この回の車両選出処理の結果、車両1010cが対象車両に選ばれ、車両異常検知サーバ80では、ステップS1901からステップ1903までと同様のステップS1921、S1922及びS1923が、車両1010cでは、車両1010aで行われたステップS1950と同様のステップS1970が行われる。この例では、リクエストに応じて車両1010cから送信されたログを用いて車両異常検知サーバ80が行った異常検知処理の結果、異常が発生していると判定されたと想定する。この場合、車両異常検知サーバ80では、ステップS1921からの一連の手順が繰り返されるのではなく、追加調査対象車両選出処理が行われる(ステップS1931)。追加調査対象車両の選出は、例えば図18に示す追加調査対象車両選出処理の手順に沿って行われる。ここでは、異常が検知されたのと同じ車種の車両、すなわち、車両1010aと車両1010bとが選出されたと想定して説明を進める。
次いで車両異常検知サーバ80から車両1010a及び車両1010bにログ送信のリクエストが送信され(ステップS1932)、車両1010a及び車両1010bからは、このリクエストに応じて特徴ベクトルがログとして車両異常検知サーバ80に送信される(ステップS1955、S1965)。
車両1010a及び車両1010bから送信された特徴ベクトルを受信した車両異常検知サーバ80は、それぞれに対して異常検知処理を行う(ステップS1933)。
以上説明した一連の処理手順において、ステップS1931で追加調査対象車選出処理を実行するログ収集対象車両選出部855は、本実施の形態における車両選出部の例であり、選出された車両が異常関連車両の例である。また、ステップS1932で送信されるログの送信リクエストが第一リクエストの例である。
また、例えばステップS1911までの手順において、ステップS1901で選出された車両1010aは、本実施の形態における第一標本車両の例であり、車両1010aに送信されたリクエストは、第二リクエストの例である。さらに、ステップS1911で選出された車両1010bは、本実施の形態における第二標本車両の例であり、車両1010bに送信されたリクエストは、第三リクエストの例である。
なお、図19に示す手順では、車両異常検知サーバ80は、車両1010a及び車両1010bそれぞれから特徴ベクトルを受信してから異常検知処理(ステップS1933)行われているが、車両1010から特徴ベクトルを受信する度に異常検知処理(ステップS1916)が行われてもよい。
また、この例では、各車両1010の車載ネットワークで送受信されるフレームの異常の有無の判定は、車両異常検知サーバ80のログ分析部840によるログの分析によって行われている(ステップS1903、S1913、S1923)がこれに限定されない。例えば、各車両1010の不正フレーム検知部903又はその他のデータセキュリティ機能又は自己診断機能を提供する機器によって、当該車両の異常の発生の有無の判定がなされ、その結果を示すデータが車両異常検知サーバ80に提供されてもよい。この場合、ログ分析部840では、ログの分析に代えて当該結果を示すデータの取得をもって、送信元である車両1010における異常の発生の有無を示す情報を取得し、その発生の有無に応じた次の手順を実行してもよい。このとき、車両1010で異常の発生が検知された場合には、当該車両から不正なフレームに関するフレーム情報が車両異常検知サーバ80に提供される。車両異常検知サーバ80は、このフレーム情報を用いてアラートレベルの判定、追加調査対象車両の選出等を行う。
また、この例では平常時の対象車両の1台が選出されているが、複数台であってもよい。また、対象車両の更新タイミングを一定時間の経過としたが、他のタイミングで更新が行われてもよい。また、追加調査対象車両の選出方法は、先に挙げた他の選出方法を用いてもよく、カーメーカー又は車種を横断して対象車両が選出してもよい。構わない。また、図19では、アラートの通知が省略されているが、異常の検知に伴いアラート通知も行われてもよい。
[2.14 補足事項]
ここまでは説明が繁雑になることを避ける意図で触れていないものの、想定されるバリエーション等について以下に述べる。
上記では車種が同一であることについて、型式及び車両IDの共通性の点で説明したがこれに限定されない。例えば、サイバー攻撃に対する共通の脆弱性をはらむという理由で、搭載されているECUの構成、又はさらに車載ネットワーク上の配置が同じである車両群をもって車種が同一であると考えてもよい。したがって、例えば、型式が同じであっても、搭載されているECUのサプライヤが異なる車両は、同一車種ではなく別車種として扱ってもよい。また、逆にECUのサプライヤが異なっていても制御仕様が同一であればECUの構成は同一として扱ってもよい。また、同じサプライヤ、さらには同じ型番のECUであっても、ECUの搭載するソフトウェア(ファームウェアを含む)のバージョンが異なる場合には、別種のECUとして扱ってもよい。
また、対象車の再選出(図19のステップS1911、S1921)のタイミングは、前回選出からの一定時間の経過時に限定されない。サーバによる設定やOEM(Original Equipment Manufacturer)、SOC(Security Operation Center)からの指示によって変更されたり、随時実行されたりしてもよい。
また、上述のようにログを送信する個々の車両の選出が車両異常検知サーバ80で行われるのではなくてもよい。例えば、車両異常検知サーバ80では、時刻及び地域等の条件を設定して全車両にこの条件を通知し、各車両において自車固有の情報や時刻情報、位置情報などから対象車両に該当するか否かを判定し、該当する場合にログを車両異常検知サーバ80に送信してもよい。
また、上記では、車両異常検知サーバ80において所定閾値を越える異常度が算出されないときを平常時とし、平常時の処理が行われているがこれに限定されない。例えば、OEMやSOCからの指示、ITS等の他システムからの通知に応じて平常時の処理か異常発生時の処理かを切り替えられるものとしてもよい。
また、車両異常検知サーバ80から送信されるログ送信のリクエストは、平常時(図19のステップS1902、S1912、S1922)と異常検知時(ステップS1932)とで内容が異なるものであってもよい。例えば、ログ送信のリクエストには緊急フラグ領域が含まれ、異常検知時には緊急フラグが立てられてもよい。これに対して車両1010では、例えばログ送信処理の優先度を高めたり、又は平常時と内容の異なるログ、例えばより詳細、又は簡易な内容のログを用意して車両異常検知サーバ80に送信してもよい。また、平常時以外では、攻撃フェーズ又はアラートレベルによってリクエスト及びログそれぞれの内容が異なってもよい。
(その他変形例)
以上のように、本発明に係る技術の例示として実施の形態を説明した。しかしながら、本発明に係る技術はこの実施の形態の内容に限定されず、適宜、変更、置き換え、付加、省略等を行った実施態様にも適用可能である。例えば、以下のような変形例も本発明の一実施態様に含まれる。
(1)上記実施の形態では、車両がCANのプロトコルに従った通信を行う車載ネットワーク(車載ネットワークシステム)を有する例を用いて説明したが、本発明に係る技術が適用可能なネットワーク種別(通信プロトコル)はこれに限定されない。例えば、車載ネットワークは、CAN-FD、Ethernet、LIN(Local Interconnect Network)、若しくはFlexRay等のプロトコルに従うネットワーク、又はこれら及びCANから選択される複数のプロトコルに従うネットワークの組み合わせであってもよい。
(2)上記実施の形態では、特徴ベクトルの作成の処理等を含む送信前の加工処理を、車両1010が備えるゲートウェイ90のフレームアップロード部950で行われる例を示した。この加工処理は、車両1010内の構成要素と車両異常検知サーバ80とのどちらかで行われることとしてもよいし、車両1010内の構成要素及び車両異常検知サーバ80の双方が分担することとしてもよい。分担の配分は設計事項として適宜決定し得る。
(3)上記実施の形態では、車両1010のゲートウェイ90が車両異常検知サーバ80に送信するログに含まれるのは、車上での不正検知の結果に拘わらないフレーム情報である。これに代えて、ゲートウェイ90が、不正フレームを検知したことに応じて車載ネットワークにエラーフレームを送信する対処を実行する場合、その不正フレームについての情報(特徴ベクトル等)を車両異常検知サーバ80に送信しない、つまり、車両異常検知サーバ80に車載ネットワークでの異常の発生を通知しなくてもよい。
(4)上記実施の形態では、平常時には、ログを車両異常検知サーバ80に送信する車両1010を車両異常検知サーバ80が選出して送信リクエストを送る、又は条件を送るとしていたが、ログを車両異常検知サーバ80に送信するか否かを決定するシステムが各車両1010にあってもよい。例えば、平常時には、各車両1010では、車両IDの末尾の数字と現在時刻の末尾の数字が一致するか否かの判定が繰り返され、一致した場合にログが送信されてもよい。この例の場合も、車両異常検知サーバ80での異常検知時のリクエスト送信は、車両異常検知サーバ80から各車両に送られる。また、対象車両の選定を、車両異常検知サーバ80とは別のサーバが行ってもよい。
(5)上記実施の形態では、車両異常検知サーバ80にて統計的異常検知処理を行うことで、あるフレームの異常度を算定し、異常度に基づいて異常ありと判定した場合において、アラートレベルを決定する例を挙げている。その他、車両異常検知サーバ80は、統計的異常検知処理に依らずに、例えば予め定められたアルゴリズム等によって、そのフレームの異常度を算定し、異常度に応じて(例えば異常ありか否かに応じて)アラートレベルを決定する機能を有してもよい。例えば、そのフレームが、ファームウェア更新用のフレームについて予め規定されたメッセージIDを有するフレームであって、そのフレームがファームウェアの適切な更新時期以外にCANバスに流れたことを確認された場合に、異常ありを示す異常度を算定してアラートレベルを決定してアラート通知等を行ってもよい。または、この場合は攻撃予兆のフェーズ2に該当すると見做して攻撃フェーズ情報(図9参照)を用いてアラートレベルを決定してもよい。また、例えばより単純に、ブラックリスト又はホワイトリスト等に示される不正フレームの検知用のルールに基づく判定手法が用いられてもよい。そして車両異常検知サーバ80では、統計的異常検知処理と、不正フレームの検知用の予め定められたルール又はアルゴリズムを用いて不正フレームを検知する処理とを併用することで、異常度が算定されてもよい。この場合には、不正フレームと検知されたフレームについては、異常ありを示すように異常度の算定を行う。
(6)上記実施の形態で示した各種処理の手順(例えば図15、図16、図17、図18、図19に示した手順等)の実行順序は、必ずしも、図示に沿って上述した通りの順序に限定されるものではない。これらの実行順序は、発明の要旨を逸脱しない範囲で入れ替えたり、複数の手順を並列に行ったり、その手順の一部を省略したりすることができる。
(7)上記実施の形態におけるゲートウェイその他のECUは、例えば、プロセッサ、メモリ等のデジタル回路、アナログ回路、通信回路等を含む装置と説明したが、情報処理装置であればよく、その例である。この情報処理装置は、ハードディスク装置等の記憶装置、及びディスプレイ、キーボード、マウス等の入出力装置であるハードウェア構成要素を含んでいてもよい。また、車両異常検知サーバ80は、例えばプロセッサ、記憶装置、通信インタフェース等を備えるコンピュータであることとしたが、ディスプレイ、キーボード、マウス等の入出力装置であるハードウェア構成要素を含んでいてもよい。また、上記実施の形態で示した各装置(ECU、車両異常検知サーバ80等)は、メモリに記憶された制御プログラムがプロセッサにより実行されてソフトウェア的に機能を実現する代わりに、専用のハードウェア(デジタル回路等)によりその機能の少なくとも一部を実現することとしてもよい。
(8)上記実施の形態における各装置を構成する構成要素の一部又は全部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されてもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAM等を含んで構成されるコンピュータシステムである。このROMには、コンピュータプログラムが記録されている。そして、このマイクロプロセッサが、ROMに記録されているコンピュータプログラムに従って動作することにより、システムLSIは、その機能を達成する。また、上記各装置を構成する構成要素の各部は、個別に1チップ化されていてもよいし、一部又は全部を含むように1チップ化されてもよい。また、ここでは、システムLSIとしたが、集積度の違いにより、IC、LSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。更には、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてあり得る。
(9)上記各装置を構成する構成要素の一部又は全部は、各装置に脱着可能なICカード又は単体のモジュールから構成されているとしてもよい。前記ICカード又は前記モジュールは、マイクロプロセッサ、ROM、RAM等から構成されるコンピュータシステムである。前記ICカード又は前記モジュールは、上記の超多機能LSIを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、前記ICカード又は前記モジュールは、その機能を達成する。このICカード又はこのモジュールは、耐タンパ性を有するとしてもよい。
(10)上記実施の形態及び上記変形例で示した各構成要素及び機能を任意に組み合わせることで実現される形態も本発明の範囲に含まれる。
なお、各実施の形態において車載システムへの適用を示したが、本発明は車載システムに限らず、産業用途、スマートファクトリーなどの工場制御用途において、遠隔制御を行う際にも有効である。
本開示は、複数の車両の異常検知を行う車両異常検知システムにおいて有用である。
10、20、30、40、50、60、70 バス
80 車両異常検知サーバ
81 ネットワーク
90 ゲートウェイ
100、101、200、201、300、301、302、400、401、500、600、700 ECU
110 エンジン
111 トランスミッション
210 ブレーキ
211 ステアリング
310 自動ブレーキシステム
311 車線維持システム
312 車車間通信システム
410 ドア
411 ライト
510 ヘッドユニット
610 ITS装置
710 診断ポート
810 通信部(取得部)
820 認証処理部
830 ログ収集部
840 ログ分析部
850 セキュリティ情報生成部
855 ログ収集対象車両選出部
860 車両情報データベース
861 車両情報テーブル
865 ECU情報データベース
870 車両ログ格納データベース
880 分析結果格納データベース
890 セキュリティ情報データベース
901 フレーム送受信部
902 フレーム解釈部
903 不正フレーム検知部
904 ルール保持部
905 フレーム生成部
920 鍵処理部
921 鍵保持部
930 不正検知通知部
940 更新処理部
950 フレームアップロード部
960 ログ送信判定部
1000 サービスユーザ
1010、1010a、1010b、1010c、1010d、1010e、1010f 車両
1020 ゲートウェイ
1100 データセンタ運営会社
1110 クラウドサーバ
1200 サービスプロバイダ
1210 サーバ
D10 運転者
U10 管理ユーザ

Claims (10)

  1. 車両と通信して当該車両が備える車載ネットワークのログを受信する通信部と、
    前記通信の相手である複数台の車両の一である第一車両における異常の発生を示す情報を取得すると、前記第一車両の異常に応じた異常関連車両を前記複数台の車両から選出する車両選出部と、
    前記異常関連車両に、前記異常関連車両が備える車載ネットワークのログの送信を要求する第一リクエストを前記通信部を介して送信するログ収集部と、
    前記第一リクエストに応じて前記異常関連車両から送信され、前記通信部が受信したログが示す情報に基づいて前記異常関連車両における異常の発生有無の判定を行うログ分析部と
    前記車載ネットワークにおいて送受信されるフレームの種類と前記フレームを送信する情報処理装置との対応を示す第一の車両情報を保持する記憶部とを備え、
    前記車両選出部は、前記第一車両において発生した異常に関連したフレームと種類が同じフレームを送信する情報処理装置を備える車両を、前記第一の車両情報を参照して前記複数台の車両から特定し、特定した前記車両を前記異常関連車両として選出し、
    前記記憶部は、前記車載ネットワークにおいて送受信されるフレームの種類を示すメッセージIDの車種間の対応を示す第二の車両情報をさらに保持し、
    前記車両選出部は、前記第二の車両情報を参照して、前記第一車両とは異なる車種が備える車載ネットワークで送受信されるフレームのメッセージIDであって、前記第一車両において発生した異常に関連したフレームのメッセージIDに対応するメッセージIDを特定し、
    特定した前記メッセージIDが示す種類のフレームを送信する情報処理装置を備える車両を、前記第一の車両情報を参照して前記複数台の車両から特定し、特定した前記車両を前記異常関連車両として選出する
    車両異常検知サーバ。
  2. 車両と通信して当該車両が備える車載ネットワークのログを受信する通信部と、
    前記通信の相手である複数台の車両の一である第一車両における異常の発生を示す情報を取得すると、前記第一車両の異常に応じた異常関連車両を前記複数台の車両から選出する車両選出部と、
    前記異常関連車両に、前記異常関連車両が備える車載ネットワークのログの送信を要求する第一リクエストを前記通信部を介して送信するログ収集部と、
    前記第一リクエストに応じて前記異常関連車両から送信され、前記通信部が受信したログが示す情報に基づいて前記異常関連車両における異常の発生有無の判定を行うログ分析部と、
    前記第一リクエストの送信先の候補である車両を識別する車両IDの車種別のリストである車両IDリストを保持する記憶部とを備え、
    前記車両選出部は、前記車両IDリストを用いて前記異常関連車両を選出し、
    前記車両IDリストは、前記第一リクエストの送信先の候補である前記車両に関連する地域に応じた前記車両IDの区分を示し、
    前記車両選出部は、前記車両IDリストが示す地域に基づいて前記異常関連車両を選出する
    車両異常検知サーバ。
  3. 前記車両選出部は、前記複数台の車両から第一標本車両を選出し、
    前記ログ収集部は、選出された前記第一標本車両に、前記第一標本車両が備える車載ネットワークのログの送信を要求する第二リクエストを前記通信部を介して送信し、
    前記ログ分析部は、前記第二リクエストに応じて前記第一標本車両から送信され、前記通信部が受信したログが示す情報に基づいて前記第一標本車両における異常の発生有無の判定を行い、
    前記第一標本車両における異常の発生がないと前記ログ分析部によって判定された場合、前記車両選出部は、前記複数台の車両から前記第一標本車両とは別の第二標本車両を選出し、
    前記ログ収集部は、選出された前記第二標本車両に、前記第二標本車両が備える車載ネットワークのログの送信を要求する第三リクエストを前記通信部を介して送信する
    請求項1又は2に記載の車両異常検知サーバ。
  4. 前記ログは、前記車載ネットワークで送受信されるフレームが含む情報の少なくとも一部の時系列データ又は前記フレームに関する情報の時系列データである
    請求項に記載の車両異常検知サーバ。
  5. 前記車両選出部は、前記異常関連車両は、前記異常が発生している車両と車種が共通である車両を前記異常関連車両として選出する
    請求項に記載の車両異常検知サーバ。
  6. 前記車載ネットワークにおいて送受信されるフレームの種類と前記フレームを送信する情報処理装置との対応を示す第一の車両情報を保持する記憶部をさらに備え、
    前記車両選出部は、前記第一車両において発生した異常に関連したフレームと種類が同じフレームを送信する情報処理装置を備える車両を、前記第一の車両情報を参照して前記複数台の車両から特定し、特定した前記車両を前記異常関連車両として選出する
    請求項に記載の車両異常検知サーバ。
  7. 前記第一リクエストの送信先の候補である車両を識別する車両IDの車種別のリストである車両IDリストを保持する記憶部をさらに備え、
    前記車両選出部は、前記車両IDリストを用いて前記異常関連車両を選出する
    請求項1に記載の車両異常検知サーバ。
  8. 前記車載ネットワークに接続される複数の情報処理装置間の関連を示す関連情報処理装置情報を保持する記憶部をさらに備え、
    前記車両選出部は、前記関連情報処理装置情報を参照して、前記第一車両において発生した異常に関連したフレームを送信した情報処理装置と関連する情報処理装置を備える車両を前記複数台の車両から特定し、特定した前記車両を前記異常関連車両として選出する
    請求項1又は2に記載の車両異常検知サーバ。
  9. 請求項1からのいずれか一項に記載の車両異常検知サーバと、
    前記車両異常検知サーバと通信する複数台の車両であって、前記車両異常検知サーバからのリクエストに応じて前記ログを前記車両異常検知サーバに送信する車両とを含む
    車両異常検知システム。
  10. 請求項に記載の車両異常検知システムで実行される車両異常検知方法であって、
    前記車両異常検知システムにおいて、前記複数台の車両の一である第一車両における異常の発生を示す情報を取得すると、前記複数台の車両から前記第一車両の異常に応じた異常関連車両を選出し、
    前記車両異常検知システムから前記異常関連車両に、前記異常関連車両が備える車載ネットワークのログの送信を要求する第一リクエストを送信し、
    前記車両異常検知システムが、前記第一リクエストに応じて前記異常関連車両から送信されたログが示す情報に基づいて、前記異常関連車両における異常の発生有無の判定を行う
    車両異常検知方法。
JP2019530507A 2018-01-22 2019-01-11 車両異常検知サーバ、車両異常検知システム及び車両異常検知方法 Active JP7247089B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023040284A JP7492622B2 (ja) 2018-01-22 2023-03-15 車両異常検知サーバ、車両異常検知システム及び車両異常検知方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862620152P 2018-01-22 2018-01-22
US62/620,152 2018-01-22
PCT/JP2019/000720 WO2019142741A1 (ja) 2018-01-22 2019-01-11 車両異常検知サーバ、車両異常検知システム及び車両異常検知方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023040284A Division JP7492622B2 (ja) 2018-01-22 2023-03-15 車両異常検知サーバ、車両異常検知システム及び車両異常検知方法

Publications (2)

Publication Number Publication Date
JPWO2019142741A1 JPWO2019142741A1 (ja) 2020-11-19
JP7247089B2 true JP7247089B2 (ja) 2023-03-28

Family

ID=67301024

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2019530507A Active JP7247089B2 (ja) 2018-01-22 2019-01-11 車両異常検知サーバ、車両異常検知システム及び車両異常検知方法
JP2023040284A Active JP7492622B2 (ja) 2018-01-22 2023-03-15 車両異常検知サーバ、車両異常検知システム及び車両異常検知方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023040284A Active JP7492622B2 (ja) 2018-01-22 2023-03-15 車両異常検知サーバ、車両異常検知システム及び車両異常検知方法

Country Status (5)

Country Link
US (2) US11363045B2 (ja)
EP (2) EP4106298B1 (ja)
JP (2) JP7247089B2 (ja)
CN (1) CN110463142B (ja)
WO (1) WO2019142741A1 (ja)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019142741A1 (ja) * 2018-01-22 2019-07-25 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 車両異常検知サーバ、車両異常検知システム及び車両異常検知方法
US11108804B2 (en) * 2018-02-27 2021-08-31 Blackberry Limited Providing secure inter-vehicle data communications
US11110895B2 (en) * 2018-04-09 2021-09-07 Cisco Technology, Inc. Vehicle network intrusion detection system (IDS) using vehicle state predictions
JP7121737B2 (ja) * 2018-05-23 2022-08-18 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 異常検知装置、異常検知方法およびプログラム
US11354406B2 (en) * 2018-06-28 2022-06-07 Intel Corporation Physics-based approach for attack detection and localization in closed-loop controls for autonomous vehicles
EP3623965A1 (en) * 2018-09-14 2020-03-18 United Technologies Corporation Fabricated data detection method
DE102018215945A1 (de) * 2018-09-19 2020-03-19 Robert Bosch Gmbh Verfahren und Vorrichtung zur Anomalie-Erkennung in einem Fahrzeug
KR102486151B1 (ko) * 2018-10-16 2023-01-10 현대자동차주식회사 통신 장치, 그를 가지는 차량 및 그 제어 방법
US11700270B2 (en) * 2019-02-19 2023-07-11 The Aerospace Corporation Systems and methods for detecting a communication anomaly
US11233650B2 (en) * 2019-03-25 2022-01-25 Micron Technology, Inc. Verifying identity of a vehicle entering a trust zone
US20220284742A1 (en) * 2019-07-31 2022-09-08 Nec Corporation Abnormality detection system, abnormality detection method, and abnormality detection program
US20210053574A1 (en) * 2019-08-21 2021-02-25 Micron Technology, Inc. Monitoring controller area network bus for vehicle control
JP7284673B2 (ja) * 2019-09-17 2023-05-31 株式会社日立ソリューションズ 変換装置、変換方法、および変換プログラム
JP7226248B2 (ja) * 2019-10-31 2023-02-21 トヨタ自動車株式会社 通信装置および異常判定装置
JP7065356B2 (ja) * 2019-11-11 2022-05-12 パナソニックIpマネジメント株式会社 情報処理装置、情報処理方法、およびプログラム
WO2021100140A1 (ja) * 2019-11-20 2021-05-27 日本電信電話株式会社 ネットワーク監視装置、方法およびプログラム
DE102019218045A1 (de) * 2019-11-22 2021-05-27 Volkswagen Aktiengesellschaft Verfahren zur Überwachung der Kommunikation auf einem Kommunikationsbus, elektronische Vorrichtung zum Anschluss an einen Kommunikationsbus, sowie zentrale Überwachungsvorrichtung zum Anschluss an einen Kommunikationsbus
CN110874355B (zh) * 2019-11-28 2022-08-23 以萨技术股份有限公司 车辆徘徊绕圈异常行为的检测方法、系统、终端及介质
JP6861789B1 (ja) * 2019-12-20 2021-04-21 三菱電機株式会社 車載記録装置および情報記録方法
CN111163340A (zh) * 2019-12-31 2020-05-15 武汉光庭信息技术股份有限公司 一种基于车联网的ivi系统远程log上报方法和装置
CN113157758A (zh) * 2020-01-07 2021-07-23 微软技术许可有限责任公司 定制化异常检测
EP4106278A4 (en) * 2020-02-14 2024-02-21 Hyundai Motor Company SYSTEM AND METHOD FOR DETECTING NETWORK INTRUSION IN A VEHICLE
JP7322806B2 (ja) * 2020-05-15 2023-08-08 トヨタ自動車株式会社 車両用異常検出装置
JP7392586B2 (ja) * 2020-06-17 2023-12-06 株式会社デンソー ログ送信制御装置
US11616798B2 (en) * 2020-08-21 2023-03-28 Palo Alto Networks, Inc. Malicious traffic detection with anomaly detection modeling
US11386204B2 (en) * 2020-09-24 2022-07-12 Intel Corporation Agile reconfigurable approach for real-time replacement of on-chip safety-critical modules
JP7373803B2 (ja) * 2020-09-29 2023-11-06 パナソニックIpマネジメント株式会社 情報送信装置、サーバ、及び、情報送信方法
CN112199266B (zh) * 2020-10-23 2022-11-29 中国第一汽车股份有限公司 车机系统的日志传输方法、系统、车辆及存储介质
US20220158843A1 (en) * 2020-11-13 2022-05-19 Ford Global Technologies, Llc Diagnostic over ip authentication
KR20220080915A (ko) * 2020-12-08 2022-06-15 삼성전자주식회사 스토리지 장치와 호스트 장치의 구동 방법 및 스토리지 장치
CN112660145A (zh) * 2020-12-24 2021-04-16 李敏 一种无人驾驶车辆的控制系统及其控制方法
JP2022112318A (ja) * 2021-01-21 2022-08-02 トヨタ自動車株式会社 情報処理システム、通信端末、及び情報処理方法
JP7273875B2 (ja) * 2021-03-03 2023-05-15 本田技研工業株式会社 判定装置、移動体、判定方法及びプログラム
JP7447848B2 (ja) 2021-03-05 2024-03-12 株式会社デンソー 車両用装置、サーバ、及び通信管理方法
CN113050630B (zh) * 2021-03-10 2022-07-15 哈尔滨工程大学 一种网络攻击下无人船的事件驱动航向安全控制方法
CN113783930B (zh) * 2021-07-27 2023-11-03 亚投财富信息科技(北京)有限公司 基于野外可部署5g车载平台的空地网络系统及搭建方法
CN114124679A (zh) * 2021-09-03 2022-03-01 深圳市有方科技股份有限公司 物联网终端日志的上传方法、装置、物联网终端
JP7230147B1 (ja) 2021-09-24 2023-02-28 エヌ・ティ・ティ・コミュニケーションズ株式会社 車両セキュリティ分析装置、方法およびそのプログラム
WO2023233710A1 (ja) * 2022-05-31 2023-12-07 パナソニックIpマネジメント株式会社 情報処理方法、情報処理システム及びプログラム
CN115320538A (zh) * 2022-07-20 2022-11-11 国汽智控(北京)科技有限公司 智能网联汽车入侵检测系统及方法
JP2024030833A (ja) * 2022-08-25 2024-03-07 株式会社デンソー 移動体管理装置、移動体制御装置、移動体管理システム、移動体管理方法、移動体制御方法、移動体管理プログラム、及び移動体制御プログラム
WO2024069264A1 (ja) * 2022-09-26 2024-04-04 ロベルト•ボッシュ•ゲゼルシャフト•ミト•ベシュレンクテル•ハフツング 機能管理システム、および機能管理方法
WO2024070078A1 (ja) * 2022-09-27 2024-04-04 パナソニックオートモーティブシステムズ株式会社 情報処理装置、情報処理装置の制御方法及びプログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013250929A (ja) 2012-06-04 2013-12-12 Mitsubishi Electric Building Techno Service Co Ltd 設備点検計画支援装置及びプログラム
JP2017111796A (ja) 2015-12-16 2017-06-22 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America セキュリティ処理方法及びサーバ
WO2017119089A1 (ja) 2016-01-07 2017-07-13 三菱電機株式会社 センサ機器、データ伝送処理装置及びデータ伝送処理方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4736828B2 (ja) * 2006-02-03 2011-07-27 株式会社デンソー 電子制御装置
JP4270301B2 (ja) * 2007-04-13 2009-05-27 株式会社デンソー 車載データ収集装置と通信するセンタ
JP5333501B2 (ja) * 2011-03-31 2013-11-06 株式会社デンソー 車両の挙動データ記憶制御システム及び記憶装置
JP5522160B2 (ja) * 2011-12-21 2014-06-18 トヨタ自動車株式会社 車両ネットワーク監視装置
JP5949417B2 (ja) * 2012-10-09 2016-07-06 株式会社デンソー 中継装置
JP5919205B2 (ja) 2013-01-28 2016-05-18 日立オートモティブシステムズ株式会社 ネットワーク装置およびデータ送受信システム
CN103607327B (zh) * 2013-12-03 2017-01-18 北京经纬恒润科技有限公司 一种诊断方法及集成ecu
CN103632211B (zh) * 2013-12-06 2017-06-09 清华大学 一种机动车故障预警和召回预测系统
US9830396B2 (en) * 2014-11-03 2017-11-28 GM Global Technology Operations LLC Method and apparatus of adaptive sampling for vehicular crowd sensing applications
JP6032265B2 (ja) * 2014-12-10 2016-11-24 トヨタ自動車株式会社 車両データのリモート収集システム
JP6595885B2 (ja) * 2015-01-20 2019-10-23 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 不正対処方法及び電子制御ユニット
JP6330737B2 (ja) * 2015-06-15 2018-05-30 トヨタ自動車株式会社 情報収集システム、車載装置、及びサーバー
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
JP6675271B2 (ja) * 2015-09-14 2020-04-01 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America ゲートウェイ装置、車載ネットワークシステム及びファームウェア更新方法
CN112367318B (zh) * 2015-12-16 2023-04-07 松下电器(美国)知识产权公司 安全处理方法以及计算机
KR102464898B1 (ko) * 2016-01-05 2022-11-09 삼성전자주식회사 차량과 관련된 영상 정보를 공유하는 방법 및 장치
JP6414580B2 (ja) * 2016-10-14 2018-10-31 トヨタ自動車株式会社 リチウムイオン二次電池の容量回復システム
JP7071998B2 (ja) * 2017-12-15 2022-05-19 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 車載ネットワーク異常検知システム及び車載ネットワーク異常検知方法
WO2019142741A1 (ja) * 2018-01-22 2019-07-25 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 車両異常検知サーバ、車両異常検知システム及び車両異常検知方法
WO2020021713A1 (ja) * 2018-07-27 2020-01-30 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 不正検知方法および不正検知電子制御装置
WO2021144860A1 (ja) * 2020-01-14 2021-07-22 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 車両ログ保存装置、車両ログ送信装置、車両ログ収集システムおよび車両ログ保存方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013250929A (ja) 2012-06-04 2013-12-12 Mitsubishi Electric Building Techno Service Co Ltd 設備点検計画支援装置及びプログラム
JP2017111796A (ja) 2015-12-16 2017-06-22 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America セキュリティ処理方法及びサーバ
WO2017119089A1 (ja) 2016-01-07 2017-07-13 三菱電機株式会社 センサ機器、データ伝送処理装置及びデータ伝送処理方法

Also Published As

Publication number Publication date
JP2023068037A (ja) 2023-05-16
JP7492622B2 (ja) 2024-05-29
EP3745654A1 (en) 2020-12-02
US20220279005A1 (en) 2022-09-01
WO2019142741A1 (ja) 2019-07-25
CN110463142B (zh) 2022-03-01
EP3745654B1 (en) 2022-09-14
US20200053112A1 (en) 2020-02-13
US11363045B2 (en) 2022-06-14
EP4106298A1 (en) 2022-12-21
JPWO2019142741A1 (ja) 2020-11-19
EP3745654A4 (en) 2020-12-02
CN110463142A (zh) 2019-11-15
EP4106298B1 (en) 2023-11-29

Similar Documents

Publication Publication Date Title
JP7247089B2 (ja) 車両異常検知サーバ、車両異常検知システム及び車両異常検知方法
JP7197638B2 (ja) セキュリティ処理方法及びサーバ
US11949705B2 (en) Security processing method and server
WO2019142458A1 (ja) 車両監視装置、不正検知サーバ、および、制御方法
EP3646253A1 (en) System and method for connected vehicle cybersecurity
US20200198651A1 (en) System and method for detecting behavioral anomalies among fleets of connected vehicles
CN113836564B (zh) 一种基于区块链的网联汽车信息安全系统
US20200344083A1 (en) Detection device, detection method, and program
WO2023048185A1 (ja) 車両セキュリティ分析装置、方法およびそのプログラム
Hadi Sultani et al. Indicators of Compromise of Vehicular Systems
CN118355383A (zh) 威胁信息扩展系统、威胁信息扩展方法以及程序
Aravind et al. AI-Enabled Unified Diagnostic Services: Ensuring Secure and Efficient OTA Updates Over Ethernet/IP

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211110

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220726

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221024

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230315

R150 Certificate of patent or registration of utility model

Ref document number: 7247089

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150